内容

はじめに

前提条件

要件

使用するコンポーネント

背景説明

CIMCでNTPを検証する

DNACでのNTP設定の確認

DNAC上のNTPの検証

DNAC上のNTPのトラブルシューティング

関連情報

はじめに

このドキュメントでは、Cisco DNA Center(DNAC)のネットワークタイムプロトコル(NTP)の問題をトラブルシューティングする方法について説明します。

前提条件

要件

- ユーザは、Cisco DNA Centerへのコマンドラインインターフェイス(CLI)アクセスが必要です。

- この手順を実行するには、maglev Secure Socket Shell(SSH)アクセス権限が必要です。

- ポート2222のユーザ名としてmaglevを使用します。

- NTP サーバ.

- NTPプロトコルを理解する。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。

- Cisco DNA Center 2.3.3

- Cisco DNA Center 2.3.5

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

背景説明

データの精度を高め、マルチホストクラスタ全体の処理を調整するには、時刻の同期が重要です。実稼働環境にアプライアンスを導入する前に、アプライアンスシステムクロックの時刻が最新であり、指定したNTPサーバが正確な時刻を維持していることを確認してください。アプライアンスとISEの統合を計画している場合は、ISEがアプライアンスと同じNTPサーバと同期していることを確認する必要もあります。

実稼働環境に導入する場合は、少なくとも3台のNTPサーバを設定することをお勧めします。

NTPバージョン4は、DNACとの通信にUDPポート123を使用します。

CIMCでNTPを検証する

ステップ1:Cisco Integrated Management Controllerへのブラウザアクセスの有効化で設定したCisco IMCのIPアドレス、ユーザID、およびパスワードを使用して、アプライアンスCisco IMCにログインします。

ステップ2 – 次の手順に従い、アプライアンスのハードウェアを、ネットワークの管理に使用するNetwork Time Protocol(NTP)サーバと同期させます。

1. Cisco IMC GUIの左上隅から、Toggle Navigationアイコンをクリックします。

2. Cisco IMCメニューから、Admin > Networkingの順に選択し、NTP Settingタブを選択します。

3. NTP Enabledチェックボックスがオンになっていることを確認し、最大4つのNTPサーバホスト名またはアドレスを番号付きのサーバフィールドに入力します。

4. Cisco IMCによってエントリが検証され、アプライアンスハードウェアの時刻とNTPサーバの時刻の同期が開始されます。

CIMC NTP Configurationページ

注:Cisco IMCはNTP認証をサポートしていません。

DNACでのNTP設定の確認

- DNACで設定されているNTPサービスを確認し、NTPにサーバの*情報があることを確認します

- 最大オフセット値： 500

- 最大ジッター値： 300

maglev@maglev-master:~$ ntpq -pn

remote             refid   st  t  when poll  reach  delay  offset  jitter

==============================================================================

*ntp.server.local  .GNSS.  2  u  823 1024    0    0.263    0.144   0.000

10.81.254.131      .GNSS.  1  u  835  1024   377   72.324  0.382   0.087

- System clock synchronizedがコマンドtimedatectlによって同期されているかどうかを確認します。

maglev@maglev-master:~$ timedatectl status

Local time: Thu 2023-09-28 20:27:13 UTC

Universal time: Thu 2023-09-28 20:27:13 UTC

RTC time: Thu 2023-09-28 20:27:13

Time zone: Etc/UTC (UTC, +0000)

System clock synchronized: yes

systemd-timesyncd.service active: no

RTC in local TZ: no

- ntp.confファイルでNTPサーバが正しく設定されていることを確認します。

maglev@maglev-master:~$ cat /etc/ntp.conf

#---------------------------------------------------------------------

# Modified by Maglev: Mon, 25 Sep 2023 21:04:04 UTC

# maglev-config 68913

#---------------------------------------------------------------------

tinker panic 0

driftfile /var/lib/ntp/ntp.drift

statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats

filegen loopstats file loopstats type day enable

filegen peerstats file peerstats type day enable

filegen clockstats file clockstats type day enable

server 10.81.254.131 iburst

server ntp.server.local iburst

restrict -4 default kod notrap nomodify nopeer noquery

restrict -6 default kod notrap nomodify nopeer noquery

restrict 127.0.0.1

restrict ::1

interface ignore 0.0.0.0

interface listen enterprise

interface listen management

interface listen internet

interface listen cluster

警告：ファイルntp.confは変更しないでください。

DNAC上のNTPの検証

- FQDNを使用してNTPを設定する場合は、DNACがAレコードとPTRレコードを解決できることを確認します。

maglev@maglev-master:~$ nslookup

>set type=A

> ntp.server.local

Server: 10.0.0.53

Address: 10.0.0.53#53

Non-authoritative answer:

Name:  ntp.server.local

Address: 10.81.254.202

>set type=PTR

> 10.81.254.202

Server: 10.0.0.53

Address: 10.0.0.53#53

10.254.81.10.in-addr.arpa name =  ntp.server.local.

- pingを使用してNTPに到達できることを確認します。

maglev@maglev-master:~$ ping ntp.server.local

PING ntp.server.local (10.81.254.202) 56(84) bytes of data.

64 bytes from ntp.server.local (10.81.254.202): icmp_seq=1 ttl=53 time=72.8 ms

64 bytes from ntp.server.local (10.81.254.202): icmp_seq=2 ttl=53 time=71.9 ms

64 bytes from ntp.server.local (10.81.254.202): icmp_seq=3 ttl=53 time=72.0 ms

^C

--- ntp.server.local ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2002ms

rtt min/avg/max/mdev = 72.506/72.634/72.853/0.269 m

- ポート123/UDPでNTPに到達できることを確認します。

maglev@maglev-master:~$ nc -zvu ntp.server.local 123

Connection to ntp.server.local 123 port [udp/ntp] succeeded!

- パケットキャプチャを取得し、NTP通信が同じバージョンのNTPv4にあることを確認します。

maglev@maglev-master:~$ sudo tcpdump -i any host ntp.server.local and port 123 --immediate-mode

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes

20:19:23.967314 IP flink-web.ndp.svc.cluster.local.ntp > ntp.server.local.ntp: NTPv4, Client, length 48

20:19:23.967329 IP flink-web.ndp.svc.cluster.local.ntp > ntp.server.local.ntp: NTPv4, Client, length 48

20:19:24.040064 IP ntp.server.local.ntp > flink-web.ndp.svc.cluster.local.ntp: NTPv4, Server, length 48

20:19:24.040064 IP ntp.server.local.ntp > flink-web.ndp.svc.cluster.local.ntp: NTPv4, Server, length 48

- NTPサービスがアクティブで実行中であることを確認します。

maglev@maglev-master:~$ systemctl status ntp

* ntp.service - Network Time Service

Loaded: loaded (/lib/systemd/system/ntp.service; enabled; vendor preset: enabled)

Active: active (running) since Thu 2023-09-28 20:19:20 UTC; 22min ago

Docs: man:ntpd(8)

Process: 31746 ExecStart=/usr/lib/ntp/ntp-systemd-wrapper (code=exited, status=0/SUCCESS)

Main PID: 31781 (ntpd)

Tasks: 2 (limit: 13516)

CGroup: /system.slice/ntp.service

`-31781 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 107:111

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: restrict ::: KOD does nothing without LIMITED.

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen and drop on 0 v6wildcard [::]:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 1 lo 127.0.0.1:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 2 management 10.88.244.151:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 3 enterprise 192.168.31.2:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 4 lo [::1]:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 5 management [fe80::be26:c7ff:fe0c:82e6%5447]:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 6 enterprise [fe80::b28b:cfff:fe6a:9e1c%5449]:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listen normally on 7 cluster [fe80::b28b:cfff:fe6a:9e1d%5450]:123

Sep 28 20:19:20 maglev-master-10-88-244-151 ntpd[31781]: Listening on routing socket on fd #24 for interface updates

注：必要に応じて、コマンドsudo systemctl restart ntpでNTPサービスを再起動できます。 この操作による影響はありません。

DNAC上のNTPのトラブルシューティング

- maglev_config_wizard.logファイルを確認します。

- 次の抜粋は、DNACがNTPサーバと通信および同期していることを示しています。

maglev@maglev-master:~$ cat /var/log/maglev_config_wizard.log | grep -i ntp

| 2023-09-28 00:47:32,790 | DEBUG | 25344 | MainThread | 140017254479680 | root | ansible.py:495 | changed: [localhost] => {"changed": true, "cmd": "/opt/maglev/bin/check_ntp.sh 500 299", "delta": "0:00:00.018699", "end": "2023-09-28 00:47:32.764617", "rc": 0, "start": "2023-09-28 00:47:32.745918", "stderr": "", "stderr_lines": [], "stdout": "PASSED", "stdout_lines": ["PASSED"]}

| 2023-09-28 00:47:33,068 | DEBUG | 25344 | MainThread | 140017254479680 | root | ansible.py:495 | ok: [localhost] => {"ansible_facts": {"ntp_sync_check": "PASSED"}, "changed": false}

"msg": "Check NTP limit PASSED"

changed: [localhost] => {"changed": true, "cmd": "/opt/maglev/bin/check_ntp.sh 500 299", "delta": "0:00:00.018699", "end": "2023-09-28 00:47:32.764617", "rc": 0, "start": "2023-09-28 00:47:32.745918", "stderr": "", "stderr_lines": [], "stdout": "PASSED", "stdout_lines": ["PASSED"]}

ok: [localhost] => {"ansible_facts": {"ntp_sync_check": "PASSED"}, "changed": false}

"msg": "Check NTP limit PASSED"

- 次の抜粋は、NTPが同期されていない場合、または通信に問題がある場合のエラーを示しています。

maglev@maglev-master:~$ cat /var/log/maglev_config_wizard.log | grep -i ntp

| 2023-07-19 02:36:41,396 | INFO | 76230 | MainThread | 140599082059584 | root | certs.py:142 | renew_certs : Check NTP limits |

| 2023-07-19 02:36:41,703 | DEBUG | 76230 | MainThread | 140599082059584 | root | ansible.py:495 | changed: [localhost] => {"changed": true, "cmd": "/opt/maglev/bin/check_ntp.sh 500 299", "delta": "0:00:00.014850", "end": "2023-07-19 02:36:41.679386", "rc": 0, "start": "2023-07-19 02:36:41.664536", "stderr": "", "stderr_lines": [], "stdout": "WARNING: Could not get Offset or Jitter from ntp peer", "stdout_lines": ["WARNING: Could not get Offset or Jitter from ntp peer"]}

| 2023-07-19 02:36:41,960 | DEBUG | 76230 | MainThread | 140599082059584 | root | ansible.py:495 | ok: [localhost] => {"ansible_facts": {"ntp_sync_check": "WARNING: Could not get Offset or Jitter from ntp peer"}, "changed": false}

"msg": "Check NTP limit WARNING: Could not get Offset or Jitter from ntp peer"

| 2023-07-19 02:36:42,635 | INFO | 76230 | MainThread | 140599082059584 | root | certs.py:142 | renew_certs : Fail if NTP not synched |

TASK [renew_certs : Check NTP limits] ******************************************

maglev@maglev-master:~$ cat /var/log/maglev_config_wizard.log | grep -i ntp

| 2023-09-12 18:21:29,564 | ERROR | 82110 | MainThread | 139737866331968 | maglev_config_wizard.managers.ntp.NtpManager | ntp.py:52 | Unable to sync with time server 10.88.14.200 |

| 2023-09-12 18:21:34,569 | ERROR | 82110 | MainThread | 139737866331968 | maglev_config_wizard.managers.ntp.NtpManager | ntp.py:164 | Unable to configure NTP after 2 attempts |

- NTPサーバを変更する必要がある場合は、コマンドsudo maglev-config updateを使用してください。

注意:NTPを変更すると、DNAC内のサービスが再起動されます。

関連情報

- シスコのテクニカルサポートとダウンロード