目錄

簡介

必要條件

需求

採用元件

NTP 顯示指令

show ntp association

show ntp association detail

show ntp status

使用調試排除NTP故障

NTP 封包未接收

NTP 封包未處理

同步化中斷

debug ntp validity

debug ntp packets

debug ntp sync 和 debug ntp events

NTP 時鐘期間手動設定

相關資訊

簡介

本文說明如何解決網路時間協定(NTP)問題  debug  命令和  show ntp  指令。

必要條件

需求

本文件沒有特定需求。

採用元件

本文件所述內容不限於特定軟體和硬體版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

NTP 顯示指令

在檢視NTP問題的原因之前，必須瞭解以下命令的使用和輸出：

- show ntp association

- show ntp association detail

- show ntp status

注意：使用命令查詢工具可獲取本節中使用的命令的詳細資訊。只有註冊的思科使用者才能訪問內部工具和資訊。

注意：輸出直譯器工具支援某些show命令。使用Output Interpreter工具檢視show指令輸出的分析。 只有註冊的思科使用者才能訪問內部工具和資訊。

show ntp association

NTP 關聯可做為對等關聯（一個系統願意與其他系統同步化，或允許其他系統與其同步化），或做為伺服器關聯（僅有一個系統會與其他系統同步化，不能反向作業）。

此為 show ntp association 指令的輸出內容範例：

CLA_PASA#sh ntp association

address         ref clock     st  when  poll reach  delay  offset    disp

~10.127.7.1       10.127.7.1       9    50    64  377     0.0    0.00     0.0

~10.50.44.69      10.50.36.106      5  21231  1024   0     3.8   -4.26  16000.

+~10.50.44.101     10.50.38.114      5    57    64    1     3.6   -4.30  15875.

+~10.50.44.37      10.50.36.50       5     1   256  377     0.8    1.24     0.2

~10.50.44.133     10.50.38.170      5  12142  1024   0     3.2    1.24  16000.

+~10.50.44.165     10.50.38.178      5    35   256  357     2.5   -4.09     0.2

+~10.50.38.42      10.79.127.250     4     7   256  377     0.8   -0.29     0.2

*~10.50.36.42      10.79.127.250     4   188   256  377     0.7   -0.17     0.3

+~10.50.38.50      10.79.127.250     4    42   256  377     0.9    1.02     0.4

+~10.50.36.50      10.79.127.250     4    20   256  377     0.7    0.87     0.5

* primary (synced), # primary (unsynced), + selected, - candidate, ~ configured

字詞

說明

位址前的字元具有以下定義：

* 已同步化至此對等

# 幾乎同步化至此對等

+ 已選取可能同步化的對等

- 對等為可選取的候選

~ 對等已靜態設定

地址

此為對等的 IP 位址。在示例中，第一個條目顯示127.127.7.1。這表示本地電腦已與其自身同步。通常，只有NTP主節點與自身同步。

ref clock

此為對等之參考時鐘的位址。在本例中，前六個對等體/伺服器使用私有IP作為參考時鐘，因此它們的主節點可能是本地網路中的路由器、交換機或伺服器。對於最後四個條目，參考時鐘是公共IP，因此它們的主時鐘可能是公共時間源。

st

NTP 使用階層概念說明電腦與授權時間來源的距離（以 NTP 躍點為單位）。例如，第1層時間伺服器直接連線了無線電時鐘或原子時鐘。它通過NTP將其時間傳送到第2層時間伺服器，以此類推，一直到第16層。運行NTP的電腦會自動選擇層數最低的電腦進行通訊，並使用NTP作為其時間源。

when

自上次從對等接收到 NTP 封包的時間係以秒為單位報告。該值必須小於輪詢間隔。

poll

輪詢間隔係以秒為單位報告。該間隔通常以最低 64 秒輪詢間隔開始。RFC 會指定必須每分鐘不超過一個 NTP 交易，以同步化兩台電腦。隨著NTP在客戶端和伺服器之間變得穩定，輪詢間隔可能會從64秒小步增加到1024秒，並且通常會在介於兩者之間的某個位置穩定下來。但是，根據用戶端和伺服器間的網路狀態與 NTP 封包遺失的其況，此值會動態變更。如果伺服器在一段時間內無法連線，則輪詢間隔會逐步增加至 1024 秒，以減輕網路的負荷。

在路由器上不可調整 NTP 輪詢間隔，因為該間隔係透過啟發式演算法決定。

reach

對等連線能力為位元字串，並以八進位值報告。此欄位會顯示最後八個封包是否由 Cisco IOS® 軟體的 NTP 程序所接收。該封包必須由 NTP 程序接收、處理及接受為有效，而不僅是由接收 NTP IP 封包的路由器或交換器。

Reach 會針對逾時使用輪詢間隔，以判斷是否接收到封包。輪詢間隔為 NTP 推斷封包遺失前等待的時間。輪詢時間可能會因為不同對等而有所差異，因此在 reach 斷定封包遺失前的時間，亦可能會因為不同對等而有所差異。

舉例來說，以下為四個不同的 reach 值：

- 377 八進位 = 11111111 二進位，表示 NTP 程序接收到最後八個封包。

- 0 八進位 = 00000000，表示 NTP 程序未接收到任何封包。

- 1 八進位 = 00000001，表示 NTP 程序僅收到最新的封包。

- 357 八進位 = 11101111，表示最新的四個封包之前的封包已遺失。

Reach是一個很好的指示器，可以指示是否由於鏈路故障、CPU問題和其他間歇性問題而丟棄了NTP資料包。

Unit Converter是用於此轉換和許多其他轉換的聯機單元轉換器。

delay

對等的往返延遲係以毫秒為單位報告。為更精確設定時鐘，設定時鐘時間時，會將此延遲列入考量。

offset

Offset是對等項之間或主客戶端與客戶端之間的時鐘時間差。此值為套用至用戶端時鐘以同步化的修正值。正值表示伺服器時鐘較高。負值表示用戶端時鐘較高。

disp

根散佈（以秒為單位報告）為本機時鐘和伺服器時鐘間觀察到的最大時鐘時差。在本範例中，伺服器 10.50.36.42 的 dispersion 值為 0.3，因此本機時鐘和伺服器時鐘之間，在本機上觀察到的最大時差為 0.3 秒。

時鐘初始同步時，您會看到一個很高的值。但是，如果 dispersion 值在其他時間過高，則用戶端上的 NTP 程序不會接受伺服器的 NTP 訊息。最大色散為16000；在本例中，是伺服器10.50.44.69和10.50.44.133的分散，因此本地客戶端不接受來自這些伺服器的時間。

如果達到零且分散度非常高，則客戶端可能不接受來自該伺服器的消息。請參閱本範例的第二行：

address     ref clock  st   when  poll reach  delay  offset   disp

~10.50.44.69  10.50.36.106   5  21231  1024     0    3.8   -4.26  16000.

即使 offset 值僅為 -4.26，dispersion 值非常高（可能因為過去事件的緣故），且 reach 值為零，所以此用戶端不會接受此伺服器的時間。

show ntp association detail

此為 show ntp association detail 指令的輸出內容範例：

Router#sho ntp assoc detail

10.4.2.254 configured, our_primary, sane, valid, stratum 1

ref ID .GPS., time D36968AA.CC528FE7 (02:10:50.798 UTC Fri May 25 2012)

our mode client, peer mode server, our poll intvl 64, peer poll intvl 64

root delay 0.00 msec, root disp 0.44, reach 377, sync dist 207.565

delay 2.99 msec, offset 268.3044 msec, dispersion 205.54

precision 2**19, version 3

org time D36968B7.E74172BF (02:11:03.903 UTC Fri May 25 2012)

rcv time D36968B7.A2F44E2C (02:11:03.636 UTC Fri May 25 2012)

xmt time D36968B7.A21D3780 (02:11:03.633 UTC Fri May 25 2012)

filtdelay =     2.99    2.88  976.61  574.65  984.71  220.26  168.12    2.72

filtoffset =  268.30  172.15 -452.49 -253.59 -462.03  -81.98  -58.04   22.38

filterror =     0.02    0.99    1.95    1.97    2.00    2.01    2.03    2.04

10.3.2.254 configured, selected, sane, valid, stratum 1

ref ID .GPS., time D36968BB.B16C4A21 (02:11:07.693 UTC Fri May 25 2012)

our mode client, peer mode server, our poll intvl 64, peer poll intvl 64

root delay 0.00 msec, root disp 3.34, reach 377, sync dist 192.169

delay 0.84 msec, offset 280.3251 msec, dispersion 188.42

precision 2**19, version 3

org time D36968BD.E69085E4 (02:11:09.900 UTC Fri May 25 2012)

rcv time D36968BD.9EE9048B (02:11:09.620 UTC Fri May 25 2012)

xmt time D36968BD.9EA943EF (02:11:09.619 UTC Fri May 25 2012)

filtdelay =     0.84    0.75  663.68    0.67    0.72  968.05  714.07    1.14

filtoffset =  280.33  178.13 -286.52   42.88   41.41 -444.37 -320.25   35.15

filterror =     0.02    0.99    1.97    1.98    1.98    2.00    2.03    2.03

10.1.2.254 configured, insane, invalid, stratum 1

ref ID .GPS., time D3696D3D.BBB4FF24 (02:30:21.733 UTC Fri May 25 2012)

our mode client, peer mode server, our poll intvl 64, peer poll intvl 64

root delay 0.00 msec, root disp 4.15, reach 1, sync dist 15879.654

delay 0.98 msec, offset 11.9876 msec, dispersion 15875.02

precision 2**19, version 3

org time D3696D3D.E4C253FE (02:30:21.893 UTC Fri May 25 2012)

rcv time D3696D3D.E1D0C1B9 (02:30:21.882 UTC Fri May 25 2012)

xmt time D3696D3D.E18A748D (02:30:21.881 UTC Fri May 25 2012)

filtdelay =     0.98    0.00    0.00    0.00    0.00    0.00    0.00    0.00

filtoffset =   11.99    0.00    0.00    0.00    0.00    0.00    0.00    0.00

filterror =     0.02 16000.0 16000.0 16000.0 16000.0 16000.0 16000.0 16000.0

此處不重複顯示關聯部分中已定義的術語。

字詞

說明

configured

此 NTP 時鐘來源已設定為伺服器。此值亦可為動態，其中對等/伺服器會受到動態探索。

我們的_主要

本機用戶端會同步化至此對等。

已選取

在「our_primary」失敗或客戶端失去同步時，為可能的同步選擇對等/伺服器。

sane

例行性測試會用於測試從伺服器接收到的 NTP 封包。這些測試在RFC 1305, Network Time Protocol(Version 3)Specification， Implementation and Analysis中指定。測試如下：

測試

遮罩

說明

1

0x01

接收到重複的封包

2

0x02

接收到偽造的封包

3

0x04

通訊協定未同步化

4

0x08

對等延遲/散佈失敗的邊界檢查

5

0x10

對等驗證失敗

6

0x20

對等時鐘未同步化（常見於未同步化的伺服器）

7

0x40

對等階層超出範圍

8

0x80

根延遲/散佈失敗的邊界檢查

如果測試 1 至 4 通過，則封包資料為有效。該資料接著會用於計算偏移、延遲及散佈。

如果測試 5 至 8 通過，則封包標頭為有效。僅限具有效標頭的封包可用於判斷對等是否可選取進行同步化。

insane

例行性檢查失敗，因此系統未接受伺服器的時間。該伺服器未同步化。

有效

對等/伺服器時間有效。如果此對等體成為主客戶端，則本地客戶端接受此次。

無效

對等/伺服器時間無效，不能接受時間。

ref ID

系統會為每個對等/伺服器指派參考 ID（標籤）。

時間

時間是從對等/伺服器接收到的上次時間戳記。

our mode/ peer mode

此為本機用戶端/對等的狀態。

our poll intvl/ peer poll intvl

此為從我們的輪詢至此對等或從該對等至本機電腦的輪詢間隔。

root delay

Root delay 為 NTP 設定根目錄的延遲（以毫秒為單位）。階層 1 時鐘會視為處於 NTP 設定/設計的根目錄。在本範例中，所有三個伺服器皆可為根伺服器，因為三者皆處於階層 1。

root dispersion

Root dispersion 為本機時鐘和根時鐘間觀察到最大的時鐘時差。有關詳細資訊，請參閱顯示關聯下的「disp」說明。

sync dist.

這是對層0源上的時間與客戶端測量的時間之間的最大差值的估計；它包含自上次實際讀取層源以來往返時間、系統精度和時鐘漂移的元件。

在大型NTP設定（網際網路第1層的NTP伺服器，其伺服器源時間位於不同的層級）和多個層級的伺服器/客戶端中，必須組織NTP同步拓撲以產生最高的準確性，但絕不能允許形成時間同步循環。其他因素為階層中的每個遞增皆可能牽涉不可靠的時間伺服器，該伺服器會導致其他的測量錯誤。用於 NTP 的選取演算法會使用貝爾曼-福特分散式路由演算法的變體，來運算以主要伺服器為根的最小加權擴充樹。演算法使用的距離指標包含階層與同步化距離，其本身包含散佈與一半的絕對延遲。因此，同步路徑總是將最小的伺服器數量作為根節點；根據最大錯誤來解析連線。

delay

此為對等的來回延遲。

precision

此為對等時鐘的精確度（單位：Hz）。

版本

此為對等使用的 NTP 版本編號。

org time

這是NTP資料包建立者的時間戳；換句話說，這是建立NTP資料包時但在將資料包傳送到本地客戶端之前的對等時間戳。

rcv time

此為本機用戶端接收到訊息時的時間戳記。org time 和 rcv time 間的時差為此對等的偏移量。在本例中，主10.4.2.254具有以下時間：

org time D36968B7.E74172BF (02:11:03.903 UTC Fri May 25 2012)

rcv time D36968B7.A2F44E2C (02:11:03.636 UTC Fri May 25 2012)

時差為 268.3044 毫秒的偏移量。

xmt time

此為本機用戶端傳送至此對等/伺服器之 NTP 封包的傳輸時間戳記。

filtdelay

filtoffset

filterror

此為每個範例的來回延遲（單位：毫秒）。

此為每個範例的時鐘偏移（單位：毫秒）。

此為每個範例的約略錯誤。

範例為上次接收到的 NTP 封包。在本例中，主10.4.2.254具有以下值：

filtdelay =    2.99   2.88  976.61  574.65  984.71 220.26 168.12  2.72

filtoffset = 268.30 172.15 -452.49 -253.59 -462.03 -81.98 -58.04 22.38

filterror =    0.02   0.99    1.95    1.97    2.00   2.01   2.03  2.04

以上八個範例對應至「reach」欄位的值，該值會顯示本機用戶端是否已接收到最後八個 NTP 封包。

show ntp status

此為 show ntp status 指令的輸出內容範例：

USSP-B33S-SW01#sho ntp status

Clock is synchronized, stratum 2, reference is 10.4.2.254

nominal freq is 250.0000 Hz, actual freq is 250.5630 Hz, precision is 2**18

reference time is D36968F7.7E3019A9 (02:12:07.492 UTC Fri May 25 2012)

clock offset is 417.2868 msec, root delay is 2.85 msec

root dispersion is 673.42 msec, peer dispersion is 261.80 msec

不重複在show up association部分或show ntp association detail部分中定義的術語。

字詞

說明

precision

系統自動判斷精確度，並採用二的次方測量。在本範例中，2**18 表示 2^(-18) 或 3.8 微秒。

NTP對等體之間或主與客戶端之間失去同步的原因可能多種多樣。NTP避免與時間可能不明的機器同步，具體方式如下：

1. NTP 從不與本身尚未同步化的電腦進行同步化。

1. NTP 會比較多個電腦報告的時間，且不會與時間和其他電腦出現明顯落差的電腦同步化（即便其階層較低）。

使用調試排除NTP故障

部分最常見的 NTP 問題原因如下：

- NTP 封包未接收。

- 接收到NTP資料包，但不會由Cisco IOS上的NTP進程處理。

- NTP 封包已處理，但錯誤的因素或封包資料造成同步化中斷。

- NTP 時鐘期間手動設定。

協助隔離以上問題之原因的重要偵錯指令包括：

- debug ip packets <acl>

- debug ntp packets

- debug ntp validity

- debug ntp sync

- debug ntp events

下節將說明偵錯的用途，以解決下列常見問題。

注意：使用命令查詢工具可獲取本節中使用的命令的詳細資訊。只有註冊的思科使用者才能訪問內部工具和資訊。

附註：使用 debug 指令之前，請先參閱有關 Debug 指令的重要資訊。

NTP 封包未接收

使用 debug ip packet 指令檢查 NTP 封包是否已接收和傳送。由於偵錯輸出內容可能會相當瑣碎，因此您可透過使用存取控制清單 (ACL) 限制偵錯輸出內容。NTP 會採用使用者資料包通訊協定 (UDP) 連接埠 123。

1. 建立 ACL 101：

access-list 101 permit udp any any eq 123

access-list 101 permit udp any eq 123 any
NTP 封包通常具有 123 的來源和目的地連接埠，如此有助於：

permit udp any eq 123 any eq 123

2. 使用此 ACL 限制 debug ip packet 指令的輸出內容：

debug ip packet 101

3. 如果問題出於特定對等，將 ACL 101 範圍縮小至這些對等。如果對等為 172.16.1.1，請將 ACL 101 變更為：

access-list 101 permit udp host 172.16.1.1 any eq 123

access-list 101 permit udp any eq 123 host 172.16.1.1

此示例輸出表明資料包未傳送：

241925: Apr 23 2012 15:46:26.101 ETE: IP: s=10.50.38.70 (Tunnel99), d=10.50.44.101, len 76, input feature

241926: Apr 23 2012 15:46:26.101 ETE:     UDP src=123, dst=123, Ingress-NetFlow(13), rtype 0, forus FALSE,

sendself FALSE, mtu 0

241927: Apr 23 2012 15:46:26.101 ETE: IP: s=10.50.38.70 (Tunnel99), d=10.50.44.101, len 76, input feature

241928: Apr 23 2012 15:46:26.101 ETE:     UDP src=123, dst=123, MCI Check(55), rtype 0, forus FALSE,

sendself FALSE, mtu 0

確認未收到NTP資料包後，必須：

- 檢查 NTP 是否正確設定。

- 檢查ACL是否阻止NTP資料包。

- 檢查來源或目的地 IP 的路由問題。

NTP 封包未處理

啟用debug ip packet和debug ntp packets命令後，您可以看到接收和傳輸的資料包，並且可以看到NTP對這些資料包起作用。對於接收的每個NTP資料包（如debug ip packet所示），都有一個由debug ntp packets生成的對應條目。

當 NTP 程序處理接收到的封包時，此為偵錯輸出內容：

Apr 20 00:16:34.143 UTC: IP: tableid=0, s=10.3.2.31 (local), d=10.1.2.254 (Vlan2), routed via FIB

.Apr 20 00:16:34.143 UTC: IP: s=10.3.2.31 (local), d=10.1.2.254 (Vlan2), len 76, sending

.Apr 20 00:16:34.143 UTC: IP: s=10.3.2.31 (local), d=10.1.2.254 (Vlan2), len 76, sending full packet

.Apr 20 00:16:34.143 UTC: NTP: xmit packet to 10.1.2.254:

.Apr 20 00:16:34.143 UTC:  leap 3, mode 3, version 3, stratum 0, ppoll 64

.Apr 20 00:16:34.143 UTC:  rtdel 0021 (0.504), rtdsp 1105E7 (17023.056), refid 0A0102FE (10.1.2.254)

.Apr 20 00:16:34.143 UTC:  ref D33B2922.24FEBDC7 (00:15:30.144 UTC Fri Apr 20 2012)

.Apr 20 00:16:34.143 UTC:  org 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

.Apr 20 00:16:34.143 UTC:  rec 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

.Apr 20 00:16:34.143 UTC:  xmt D33B2962.24CAFAD1 (00:16:34.143 UTC Fri Apr 20 2012)

.Apr 20 00:16:34.143 UTC: IP: s=10.1.2.254 (Vlan2), d=10.3.2.31, len 76, rcvd 2

.Apr 20 00:16:34.143 UTC: NTP: rcv packet from 10.1.2.254 to 10.3.2.31 on Vlan2:

.Apr 20 00:16:34.143 UTC:  leap 0, mode 4, version 3, stratum 1, ppoll 64

.Apr 20 00:16:34.143 UTC:  rtdel 0000 (0.000), rtdsp 009D (2.396), refid 47505300 (10.80.83.0)

.Apr 20 00:16:34.143 UTC:  ref D33B2952.4CC11CCF (00:16:18.299 UTC Fri Apr 20 2012)

.Apr 20 00:16:34.143 UTC:  org D33B2962.24CAFAD1 (00:16:34.143 UTC Fri Apr 20 2012)

.Apr 20 00:16:34.143 UTC:  rec D33B2962.49D3724D (00:16:34.288 UTC Fri Apr 20 2012)

.Apr 20 00:16:34.143 UTC:  xmt D33B2962.49D997D0 (00:16:34.288 UTC Fri Apr 20 2012)

.Apr 20 00:16:34.143 UTC:  inp D33B2962.25010310 (00:16:34.144 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC: IP: tableid=0, s=10.3.2.31 (local), d=10.8.2.254 (Vlan2), routed via FIB

.Apr 20 00:16:36.283 UTC: IP: s=10.3.2.31 (local), d=10.8.2.254 (Vlan2), len 76, sending

.Apr 20 00:16:36.283 UTC: IP: s=10.3.2.31 (local), d=10.8.2.254 (Vlan2), len 76, sending full packet

.Apr 20 00:16:36.283 UTC: NTP: xmit packet to 10.8.2.254:

.Apr 20 00:16:36.283 UTC:  leap 3, mode 3, version 3, stratum 0, ppoll 64

.Apr 20 00:16:36.283 UTC:  rtdel 002F (0.717), rtdsp 11058F (17021.713), refid 0A0102FE (10.1.2.254)

.Apr 20 00:16:36.283 UTC:  ref D33B2962.25010310 (00:16:34.144 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC:  org 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

.Apr 20 00:16:36.283 UTC:  rec 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

.Apr 20 00:16:36.283 UTC:  xmt D33B2964.48947E87 (00:16:36.283 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC: IP: s=10.8.2.254 (Vlan2), d=10.3.2.31, len 76, rcvd 2

.Apr 20 00:16:36.283 UTC: NTP: rcv packet from 10.8.2.254 to 10.3.2.31 on Vlan2:

.Apr 20 00:16:36.283 UTC:  leap 0, mode 4, version 3, stratum 1, ppoll 64

.Apr 20 00:16:36.283 UTC:  rtdel 0000 (0.000), rtdsp 0017 (0.351), refid 47505300 (10.80.83.0)

.Apr 20 00:16:36.283 UTC:  ref D33B295B.8AF7FE33 (00:16:27.542 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC:  org D33B2964.48947E87 (00:16:36.283 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC:  rec D33B2964.4A6AD269 (00:16:36.290 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC:  xmt D33B2964.4A7C00D0 (00:16:36.290 UTC Fri Apr 20 2012)

.Apr 20 00:16:36.283 UTC:  inp D33B2964.498A755D (00:16:36.287 UTC Fri Apr 20 2012)

此為 NTP 無法處理接收到之封包的範例。雖然系統接收到 NTP 封包（如 debug ip packets 所示），但 NTP 程序不會針對其採取行動。針對送出的 NTP 封包，會出現對應的 debug ntp packets 輸出內容，因為 NTP 程序必須產生封包。此問題特定於未處理的已接收NTP資料包。

071564: Apr 23 2012 15:46:26.100 ETE: NTP: xmit packet to 10.50.44.101:

071565: Apr 23 2012 15:46:26.100 ETE:  leap 0, mode 1, version 3, stratum 5, ppoll 1024

071566: Apr 23 2012 15:46:26.100 ETE:  rtdel 07B5 (30.106), rtdsp 0855 (32.547), refid 0A32266A

(10.50.38.106)

071567: Apr 23 2012 15:46:26.100 ETE:  ref D33FDB05.1A084831 (15:43:33.101 ETE Mon Apr 23 2012)

071568: Apr 23 2012 15:46:26.100 ETE:  org 00000000.00000000 (01:00:00.000 HIVER Mon Jan 1 1900)

071569: Apr 23 2012 15:46:26.100 ETE:  rec 00000000.00000000 (01:00:00.000 HIVER Mon Jan 1 1900)

071570: Apr 23 2012 15:46:26.100 ETE:  xmt D33FDBB2.19D3457C (15:46:26.100 ETE Mon Apr 23 2012)

PCY_PAS1#

071571: Apr 23 2012 15:47:31.497 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, input feature

071572: Apr 23 2012 15:47:31.497 ETE:     UDP src=123, dst=123, Ingress-NetFlow(13), rtype 0, forus FALSE,

sendself FALSE, mtu 0

071573: Apr 23 2012 15:47:31.497 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, input feature

071574: Apr 23 2012 15:47:31.497 ETE:     UDP src=123, dst=123, MCI Check(55), rtype 0, forus FALSE,

sendself FALSE, mtu 0

071575: Apr 23 2012 15:47:31.497 ETE: FIBipv4-packet-proc: route packet from Tunnel99 src 10.50.38.78 dst

10.50.44.69

071576: Apr 23 2012 15:47:31.497 ETE: FIBfwd-proc: base:10.50.44.69/32 receive entry

PCY_PAS1#

071577: Apr 23 2012 15:47:31.497 ETE: FIBipv4-packet-proc: packet routing failed

071578: Apr 23 2012 15:47:31.497 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, rcvd 2

071579: Apr 23 2012 15:47:31.497 ETE:     UDP src=123, dst=123

071580: Apr 23 2012 15:47:31.497 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, stop process pak

for forus packet

071581: Apr 23 2012 15:47:31.497 ETE:     UDP src=123, dst=123

PCY_PAS1#

071582: Apr 23 2012 16:03:30.105 ETE: NTP: xmit packet to 10.50.44.101:

071583: Apr 23 2012 16:03:30.105 ETE:  leap 0, mode 1, version 3, stratum 5, ppoll 1024

071584: Apr 23 2012 16:03:30.105 ETE:  rtdel 0759 (28.702), rtdsp 087D (33.157), refid 0A32266A

(10.50.38.106)

071585: Apr 23 2012 16:03:30.105 ETE:  ref D33FDF05.1B2CC3D4 (16:00:37.106 ETE Mon Apr 23 2012)

071586: Apr 23 2012 16:03:30.105 ETE:  org 00000000.00000000 (01:00:00.000 HIVER Mon Jan 1 1900)

071587: Apr 23 2012 16:03:30.105 ETE:  rec 00000000.00000000 (01:00:00.000 HIVER Mon Jan 1 1900)

071588: Apr 23 2012 16:03:30.105 ETE:  xmt D33FDFB2.1B1D5E7E (16:03:30.105 ETE Mon Apr 23 2012)

PCY_PAS1#

071589: Apr 23 2012 16:04:35.502 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, input feature

071590: Apr 23 2012 16:04:35.506 ETE:     UDP src=123, dst=123, Ingress-NetFlow(13), rtype 0, forus FALSE,

sendself FALSE, mtu 0

071591: Apr 23 2012 16:04:35.506 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, input feature

071592: Apr 23 2012 16:04:35.506 ETE:     UDP src=123, dst=123, MCI Check(55), rtype 0, forus FALSE,

sendself FALSE, mtu 0

071593: Apr 23 2012 16:04:35.506 ETE: FIBipv4-packet-proc: route packet from Tunnel99 src 10.50.38.78 dst

10.50.44.69

071594: Apr 23 2012 16:04:35.506 ETE: FIBfwd-proc: base:10.50.44.69/32 receive entry

PCY_PAS1#

071595: Apr 23 2012 16:04:35.506 ETE: FIBipv4-packet-proc: packet routing failed

071596: Apr 23 2012 16:04:35.506 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, rcvd 2

071597: Apr 23 2012 16:04:35.506 ETE:     UDP src=123, dst=123

071598: Apr 23 2012 16:04:35.506 ETE: IP: s=10.50.38.78 (Tunnel99), d=10.50.44.69, len 76, stop process pak

for forus packet

071599: Apr 23 2012 16:04:35.506 ETE:     UDP src=123, dst=123

PCY_PAS1#

同步化中斷

如果伺服器的色散和/或延遲值非常高，則可能會發生同步丟失。高值表示從伺服器/對等裝置到達客戶端時所用的資料包時間太長（參考時鐘的根）。因此，本機電腦無法信任封包中顯示的時間準確度，因為其不知道該封包花費多長時間連線至此處。

NTP對時間非常精細，無法與它無法信任或無法調整以使其可信的其他裝置同步。

如果伴隨出現飽和連結與緩衝，則封包在傳送至 NTP 用戶端時會遭到延遲。因此，包含於後續 NTP 封包的時間戳記可能偶爾會出現大幅度變更，而本機用戶端無法確實針對該變更進行調整因應。

除非您使用 SNTP（簡單網路時間通訊協定），否則 NTP 不會提供關閉此類封包驗證的方法。SNTP並不是替代方案，因為它在軟體中沒有得到廣泛支援。

如果遇到同步丟失的情況，您必須檢查以下連結：

- 連結是否飽和？

- 廣域網路 (WAN) 連結中是否有任何類型的捨棄？

- 是否進行加密？

從 show ntp associations detail 指令監控 reach 值。最大值為377。如果值為0或低，則會間歇性地接收NTP資料包，並且本地客戶端與伺服器不同步。

debug ntp validity

debug ntp validity 指令會表示 NTP 封包的例行性或有效性檢查是否失敗，並揭露失敗的原因。將此輸出內容與 RFC1305 中詳細說明的例行性測試（用於測試從伺服器接收到的 NTP 封包）做比較。八項測試的定義如下：

測試

遮罩

說明

1

0x01

接收到重複的封包

2

0x02

接收到偽造的封包

3

0x04

通訊協定未同步化

4

0x08

對等延遲/散佈失敗的邊界檢查

5

0x10

對等驗證失敗

6

0x20

對等時鐘未同步化（常見於未同步化的伺服器）

7

0x40

對等階層超出範圍

8

0x80

根延遲/散佈失敗的邊界檢查

此為 debug ntp validity 指令的範例輸出內容：

PCY_PAS1#debug ntp validity

NTP peer validity debugging is on

009585: Mar  1 2012 09:14:32.670 HIVER: NTP: packet from 192.168.113.57 failed validity tests 52

009586: Mar  1 2012 09:14:32.670 HIVER: Authentication failed

009587: Mar  1 2012 09:14:32.670 HIVER: Peer/Server Stratum out of bound

PCY_PAS1#

009588: Mar  1 2012 09:14:38.210 HIVER: NTP: packet from 192.168.56.1 failed validity tests 14

009589: Mar  1 2012 09:14:38.210 HIVER: Authentication failed

PCY_PAS1#

009590: Mar  1 2012 09:14:43.606 HIVER: NTP: packet from 10.110.103.27 failed validity tests 14

009591: Mar  1 2012 09:14:43.606 HIVER: Authentication failed

PCY_PAS1#

009592: Mar  1 2012 09:14:48.686 HIVER: NTP: packet from 192.168.113.57failed validity tests 52

009593: Mar  1 2012 09:14:48.686 HIVER: Authentication failed

009594: Mar  1 2012 09:14:48.686 HIVER: Peer/Server Stratum out of bound

PCY_PAS1#

009596: Mar  1 2012 09:14:54.222 HIVER: NTP: packet from 10.110.103.35 failed validity tests 14

009597: Mar  1 2012 09:14:54.222 HIVER: Authentication failed

PCY_PAS1#

009598: Mar  1 2012 09:14:54.886 HIVER: NTP: synced to new peer 10.50.38.106

009599: Mar  1 2012 09:14:54.886 HIVER: NTP: 10.50.38.106 synced to new peer

PCY_PAS1#

009600: Mar  1 2012 09:14:59.606 HIVER: NTP: packet from 10.110.103.27 failed validity tests 14

009601: Mar  1 2012 09:14:59.606 HIVER: Authentication failed

PCY_PAS1#

009602: Mar  1 2012 09:15:04.622 HIVER: NTP: packet from 192.168.113.137 failed validity tests 52

009603: Mar  1 2012 09:15:04.622 HIVER: Authentication failed

009604: Mar  1 2012 09:15:04.622 HIVER: Peer/Server Stratum out of bound

PCY_PAS1#

009605: Mar  1 2012 09:15:10.238 HIVER: NTP: packet from 192.168.56.1 failed validity tests 14

009606: Mar  1 2012 09:15:10.238 HIVER: Authentication failed

PCY_PAS1#

009607: Mar  1 2012 09:15:15.338 HIVER: NTP: packet from 10.83.23.140 failed validity tests 52

009608: Mar  1 2012 09:15:15.338 HIVER: Authentication failed

009609: Mar  1 2012 09:15:15.338 HIVER: Peer/Server Stratum out of bound

PCY_PAS1#

009610: Mar  1 2012 09:15:20.402 HIVER: NTP: packet from 192.168.113.92 failed validity tests 74

009611: Mar  1 2012 09:15:20.402 HIVER: Authentication failed

009612: Mar  1 2012 09:15:20.402 HIVER: Peer/Server Clock unsynchronized

009613: Mar  1 2012 09:15:20.402 HIVER: Peer/Server Stratum out of bound

debug ntp packets

您可使用 debug ntp packets 指令檢視對等/伺服器在接收到的封包中提供您的時間。時間本機電腦亦會將其所知的時間告知已傳輸封包中的對等/伺服器。

欄位

rcv Packet

xmit Packet

org

產生者時間戳記，為伺服器時間。

產生者傳送封包時的產生者（用戶端）時間戳記。（用戶端產生封包傳送至伺服器。）

rec

用戶端接收到封包時，用戶端上的時間戳印。

用戶端目前時間

在此範例輸出內容中，從伺服器接收到的封包與傳送至其他伺服器的封包的時間戳印皆相同，如此表示用戶端 NTP 處於同步化狀態。

USSP-B33S-SW01#debug ntp packets

NTP packets debugging is on

USSP-B33S-SW01#

May 25 02:21:48.182 UTC: NTP: rcv packet from 10.1.2.254 to 10.3.2.31 on Vlan2:

May 25 02:21:48.182 UTC:  leap 0, mode 4, version 3, stratum 1, ppoll 64

May 25 02:21:48.182 UTC:  rtdel 0000 (0.000), rtdsp 00F2 (3.693), refid 47505300 (10.80.83.0)

May 25 02:21:48.182 UTC:  ref D3696B38.B722C417 (02:21:44.715 UTC Fri May 25 2012)

May 25 02:21:48.182 UTC:  org D3696B3C.2EA179BA (02:21:48.182 UTC Fri May 25 2012)

May 25 02:21:48.182 UTC:  rec D3696B3D.E58DE1BE (02:21:49.896 UTC Fri May 25 2012)

May 25 02:21:48.182 UTC:  xmt D3696B3D.E594E7AF (02:21:49.896 UTC Fri May 25 2012)

May 25 02:21:48.182 UTC:  inp D3696B3C.2EDFC333 (02:21:48.183 UTC Fri May 25 2012)

May 25 02:22:46.051 UTC: NTP: xmit packet to 10.4.2.254:

May 25 02:22:46.051 UTC:  leap 0, mode 3, version 3, stratum 2, ppoll 64

May 25 02:22:46.051 UTC:  rtdel 00C0 (2.930), rtdsp 1C6FA (1777.252), refid 0A0402FE (10.4.2.254)

May 25 02:22:46.051 UTC:  ref D3696B36.33D43F44 (02:21:42.202 UTC Fri May 25 2012)

May 25 02:22:46.051 UTC:  org D3696B37.E72C75AE (02:21:43.903 UTC Fri May 25 2012)

May 25 02:22:46.051 UTC:  rec D3696B36.33D43F44 (02:21:42.202 UTC Fri May 25 2012)

May 25 02:22:46.051 UTC:  xmt D3696B76.0D43AE7D (02:22:46.051 UTC Fri May 25 2012)

此為時鐘未同步化時的輸出內容範例。注意 xmit packet 和 rcv packet 間的時差。對等體色散可以位於16000的最大值，而對等體的到達可以顯示0。

USSP-B33S-SW01#

.May 25 02:05:59.011 UTC: NTP: xmit packet to 10.4.2.254:

.May 25 02:05:59.011 UTC:  leap 3, mode 3, version 3, stratum 0, ppoll 64

.May 25 02:05:59.011 UTC:  rtdel 00A3 (2.487), rtdsp 1104D0 (17018.799), refid 0A0402FE (10.4.2.254)

.May 25 02:05:59.011 UTC:  ref D3696747.03D8661A (02:04:55.015 UTC Fri May 25 2012)

.May 25 02:05:59.011 UTC:  org 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

.May 25 02:05:59.011 UTC:  rec 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

.May 25 02:05:59.011 UTC:  xmt D3696787.03105783 (02:05:59.011 UTC Fri May 25 2012)

.May 25 02:05:59.011 UTC: NTP: rcv packet from 10.4.2.254 to 10.3.2.31 on Vlan2:

.May 25 02:05:59.011 UTC:  leap 0, mode 4, version 3, stratum 1, ppoll 64

.May 25 02:05:59.011 UTC:  rtdel 0000 (0.000), rtdsp 0014 (0.305), refid 47505300 (10.80.83.0)

.May 25 02:05:59.011 UTC:  ref D3696782.C96FD778 (02:05:54.786 UTC Fri May 25 2012)

.May 25 02:05:59.011 UTC:  org D3696787.03105783 (02:05:59.011 UTC Fri May 25 2012)

.May 25 02:05:59.011 UTC:  rec D3696787.281A963F (02:05:59.156 UTC Fri May 25 2012)

.May 25 02:05:59.011 UTC:  xmt D3696787.282832C4 (02:05:59.156 UTC Fri May 25 2012)

.May 25 02:05:59.011 UTC:  inp D3696787.03C63542 (02:05:59.014 UTC Fri May 25 2012)

debug ntp sync 和 debug ntp events

debug ntp sync 指令會產生一行輸出內容，顯示時鐘是否已同步化或同步化已變更。該指令一般會透過 debug ntp events 啟用。

debug ntp events命令可顯示發生的任何NTP事件，這有助於您確定NTP中的更改是否觸發了時鐘不同步等問題。（換句話說，如果您順利同步化的時鐘突然發生異常，您會知道要尋找變更或觸發原因！）

此為兩種偵錯的範例。首先，用戶端時鐘已同步化。debug ntp events 指令顯示發生 NTP 對等階層變更，以及時鐘中斷同步化的情況。

USSP-B33S-SW01#debug ntp sync

NTP clock synchronization debugging is on

USSP-B33S-SW01#

USSP-B33S-SW01#

USSP-B33S-SW01#debug ntp events

NTP events debugging is on

USSP-B33S-SW01#

USSP-B33S-SW01#

May 25 02:25:57.620 UTC: NTP: xmit packet to 10.4.2.254:

May 25 02:25:57.620 UTC:  leap 0, mode 3, version 3, stratum 2, ppoll 64

May 25 02:25:57.620 UTC:  rtdel 00D4 (3.235), rtdsp 26B26 (2418.549), refid 0A0402FE (10.4.2.254)

May 25 02:25:57.620 UTC:  ref D3696BF5.C47EB880 (02:24:53.767 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  org D3696BF7.E5F91077 (02:24:55.898 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  rec D3696BF5.C47EB880 (02:24:53.767 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  xmt D3696C35.9ED1CE97 (02:25:57.620 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC: NTP: rcv packet from 10.4.2.254 to 10.3.2.31 on Vlan2:

May 25 02:25:57.620 UTC:  leap 0, mode 4, version 3, stratum 1, ppoll 64

May 25 02:25:57.620 UTC:  rtdel 0000 (0.000), rtdsp 000E (0.214), refid 47505300 (10.80.83.0)

May 25 02:25:57.620 UTC:  ref D3696C37.D528800E (02:25:59.832 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  org D3696C35.9ED1CE97 (02:25:57.620 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  rec D3696C37.E5C7AB3D (02:25:59.897 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  xmt D3696C37.E5D1F273 (02:25:59.897 UTC Fri May 25 2012)

May 25 02:25:57.620 UTC:  inp D3696C35.9F9EA2C4 (02:25:57.623 UTC Fri May 25 2012)

May 25 02:25:59.830 UTC: NTP: peer stratum change

May 25 02:25:59.830 UTC: NTP: clock reset

May 25 02:25:59.830 UTC: NTP: sync change

May 25 02:25:59.830 UTC: NTP: peer stratum change

May 25 02:26:05.817 UTC: NTP: xmit packet to 10.1.2.254:

May 25 02:26:05.817 UTC:  leap 3, mode 3, version 3, stratum 0, ppoll 64

May 25 02:26:05.817 UTC:  rtdel 00C2 (2.960), rtdsp 38E9C (3557.068), refid 0A0402FE (10.4.2.254)

May 25 02:26:05.817 UTC:  ref D3696C35.9F9EA2C4 (02:25:57.623 UTC Fri May 25 2012)

May 25 02:26:05.817 UTC:  org 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

May 25 02:26:05.817 UTC:  rec 00000000.00000000 (00:00:00.000 UTC Mon Jan 1 1900)

May 25 02:26:05.817 UTC:  xmt D3696C3D.D12D0565 (02:26:05.817 UTC Fri May 25 2012)

NTP 時鐘期間手動設定

Cisco.com 網站警告：

「當輸入copy running-configuration startup-configuration命令將配置儲存到NVRAM時，會自動生成ntp clock-period命令以反映不斷更改的更正係數。請勿嘗試手動使用 ntp clock-period 指令。將組態檔複製到其他裝置時，請確保移除此命令列。」

時鐘期間值係取決於硬體，因此每個裝置皆有所差異。

當您啟用 NTP 時，ntp clock-period 指令會自動出現在組態中。該指令係用於調整軟體時鐘。該「調整值」會補償 4 毫秒的刻度間隔，如此透過微調，您在間隔結束時會有 1 秒的時間。

如果裝置計算其系統時鐘失去時間（可能需要從路由器的基本級別進行頻率補償），它會自動將此值新增到系統時鐘中，以保持其同步性。

注意：使用者不得更改此命令。

路由器的預設 NTP 時鐘期間為 17179869，且基本上用於啟動 NTP 程序。

轉換公式為 17179869 * 2^(-32) = 0.00399999995715916156768798828125，或約 4 毫秒。

舉例來說，Cisco 2611 路由器（Cisco 2600 系列路由器之一）的系統時鐘出現些微未同步化的情況，且可使用此指令重新同步化：

ntp clock-period 17208078

這等於 17208078 * 2^(-32) = 0.0040065678767859935760498046875，或略高於 4 毫秒。

思科建議您在正常網路狀態下，讓路由器執行一週左右，接著使用 wr mem 指令儲存該值。如此可在下次重新開機後提供您精準數字，且可讓 NTP 更快速地同步化。

當您儲存組態用於其他裝置時，請使用 no ntp clock-period 指令，因為此指令會將時鐘期間恢復至該特定裝置的預設值。您可以重新計算真實值（但在重新計算時間段內可能會降低系統時鐘的精度）。

請記得，此值取決於硬體，因此如果您複製組態，並將其用於不同裝置，您可能會造成問題。思科規劃以 NTP 4 版取代 3 版，以解決此問題。

如果您不知道這些問題，可以決定手動修改此值。為了從一台裝置遷移到另一台裝置，您可以決定複製舊配置並將其貼上到新裝置上。但遺憾的是，由於 ntp clock-period 指令會出現於執行中設定和啟動設定，因此 NTP 時鐘期間還是會貼上新裝置。發生此情況時，新用戶端的 NTP 一律會中斷與具有高對等散佈值的伺服器的同步化作業。

然而，請使用 no ntp clock-period 指令清理 NTP 時鐘期間，接著儲存該組態。路由器最終會計算適用自身的時鐘期間。

ntp clock-period命令在Cisco IOS軟體版本15.0或更高版本中不再可用；分析器現在拒絕該命令，錯誤如下：

"%NTP: This configuration command is deprecated."

不允許手動配置時鐘週期，並且不允許在running-config中配置時鐘週期。由於剖析器會拒絕處於啟動組態的指令（在 Cisco IOS 舊版本中，例如 12.4），因此當其在啟動期間，將啟動組態複製到 running-config 時會拒絕該指令。

新的取代指令為 ntp clear drift。

相關資訊

- 支援論壇主題：未配置NTP時鐘週期

- 網路時間協定：最佳實踐白皮書

- 疑難排解網路時間通訊協定 (NTP)

- 思科技術支援與下載