![WS2008 NTP - 使用 time.windows.com,0x9 - 時間總是向前傾斜](https://rvso.com/image/568258/WS2008%20NTP%20-%20%E4%BD%BF%E7%94%A8%20time.windows.com%2C0x9%20-%20%E6%99%82%E9%96%93%E7%B8%BD%E6%98%AF%E5%90%91%E5%89%8D%E5%82%BE%E6%96%9C.png)
我有一個配置為使用 time.windows.com 的網域控制器(設定了 0x09 標誌)。我注意到系統時鐘經常很快 - 從 10 分鐘到 45 分鐘不等。我總是必須不斷地將系統日期/時間重置回應有的狀態。
當我運行“w32tm /query /source”時,它告訴我它正在使用 time.windows.com,顯然我相信 Microsoft 不會提供錯誤的時間,但為什麼我的伺服器時鐘很快?
編輯:
系統日誌中有一些時間服務事件:
事件ID:142
訊息:由於本地時鐘不同步,時間服務已停止作為時間來源進行廣告。
活動編號:139
訊息:時間服務已開始作為時間來源進行廣告。
這兩條訊息大約每隔一小時就會成對出現。事件 142 在 139 出現後 14 到 16 分鐘出現。
回顧幾個月前,出現了以下事件:
事件ID:35
訊息:時間服務現在正在將系統時間與時間來源 time.windows.com,0x9 (ntp.m|0x9|0.0.0.0:123->65.55.21.21:123) 同步。
活動編號:37
訊息:時間提供者 NtpClient 目前正在從 time.windows.com,0x9 (ntp.m|0x9|0.0.0.0:123->65.55.21.21:123) 接收有效時間資料。
活動編號:47
訊息:時間提供者 NtpClient:在嘗試聯絡手動設定的對等點 time.windows.com,0x9 8 次後,未收到有效回應。該對等點將被丟棄作為時間來源,並且 NtpClient 將嘗試發現具有此 DNS 名稱的新對等點。錯誤是:時間樣本被拒絕,因為:對等點未同步,或距離對等點上次同步時間太長。
這三個事件僅在 10 月的日誌中出現一次。
編輯:
這是 w32tm /query /status /verbose 的輸出:
enter code here
C:\Users\Administrator>w32tm /query /status /verbose
Leap Indicator: 3(last minute has 61 seconds)
Stratum: 3 (secondary reference - syncd by (S)NTP)
Precision: -6 (15.625ms per tick)
Root Delay: 0.1794868s
Root Dispersion: 4.6419912s
ReferenceId: 0x41371515 (source IP: 65.55.21.21)
Last Successful Sync Time: 2011-12-05 23:25:18
Source: time.windows.com,0x9
Poll Interval: 6 (64s)
Phase Offset: 0.0000695s
ClockRate: 0.0156243s
State Machine: 1 (Hold)
Time Source Flags: 0 (None)
Server Role: 0 (None)
Last Sync Error: 2 (The computer did not resync because only stale time data was available.)
Time since Last Good Sync Time: 1281.9919104s
答案1
我也遇到了同樣的問題,今天早上終於解決了。這是我所做的:
查看有時間問題的伺服器和正確同步 ntp 的另一台成員伺服器上的登錄機碼(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time 中的所有設定單元和按鍵)。
我發現了一些差異,並將所需的金鑰\配置單元從工作伺服器匯出到損壞的伺服器。以下鑰匙已經弄亂了,這是我從工作箱匯出到損壞的鑰匙上的好鑰匙。請注意,這些值可能與您的不同,因此請不要使用以下鍵:
安全配置單元丟失了,所以我用這個重新創建了:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\Security]
"Security"=hex:01,00,04,80,84,00,00,00,90,00,00,00,00,00,00,00,14,00,00,00,02,\
00,70,00,05,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,05,12,00,\
00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,\
00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,04,00,00,00,00,00,14,00,\
8d,01,02,00,01,01,00,00,00,00,00,05,06,00,00,00,00,00,14,00,9d,01,02,00,01,\
01,00,00,00,00,00,05,13,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00,01,01,\
00,00,00,00,00,05,12,00,00,00
並注意到 NtpServer 配置單元缺少密鑰,這是透過導入修復的:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\TimeProviders\NtpServer]
"DllName"=hex(2):25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,00,\
74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,77,\
00,33,00,32,00,74,00,69,00,6d,00,65,00,2e,00,64,00,6c,00,6c,00,00,00
"Enabled"=dword:00000000
"InputProvider"=dword:00000000
"AllowNonstandardModeCombinations"=dword:00000001
"EventLogFlags"=dword:00000000
"ChainEntryTimeout"=dword:00000010
"ChainMaxEntries"=dword:00000080
"ChainMaxHostEntries"=dword:00000004
"ChainDisable"=dword:00000000
"ChainLoggingRate"=dword:0000001e
然後我修改了以下現有金鑰以減少階段:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\Config]
"MaxAllowedPhaseOffset"=dword:00000001
"SpecialPollInterval"=dword:00000005
"SpecialInterval"=dword:00000001
一旦確定註冊表正確,請以管理員身份透過命令列發出以下命令:
w32tm /config /manualpeerlist:"YOURNTPSERVER-OR-DCHERE.YOURDOMAIN.COM,0x01" /syncfromflags:MANUAL /update
net stop w32time && net start w32time
w32tm /resync /computer:YOURNTPSERVER-OR-DCHERE.YOURDOMAIN.COM /rediscover
等待幾分鐘然後檢查同步
w32tm /monitor /computers:YOURNTPSERVER-OR-DCHERE.YOURDOMAIN.COM
它應該看起來有點像這樣:
YOURNTPSERVER-OR-DCHERE.YOURDOMAIN.COM[IPOFYOUR.NTP.OR.DC:123]:
ICMP: 0ms delay
NTP: +0.0496804s offset from local clock
RefID: YOURNTPSERVER-OR-PDCHERE [IPOFYOUR.NTP.OR.PDC]
Stratum: 3
然後檢查階段:
w32tm /stripchart /computer:YOURNTPSERVER-OR-DCHERE.YOURDOMAIN.COM
它應該看起來像這樣:
10:08:42 d:+00.0000000s o:+00.0139224s [ * ]
10:08:44 d:+00.0000000s o:-00.0015659s [ * ]
10:08:46 d:+00.0000000s o:-00.0014534s [ * ]
10:08:48 d:+00.0000000s o:-00.0013418s [ * ]
10:08:50 d:+00.0000000s o:-00.0012421s [ * ]
希望這可以幫助!
答案2
這是擔任 PDC 模擬器角色的 DC 嗎?您只需使用外部時間來源配置具有 PDC 模擬器角色的 DC,其他 DC 將自動同步到 PDC。
時間服務的當前狀態可以透過以下方式取得w32tm /query /status /verbose
- 它應該為您提供有關本地時鐘狀態、上次同步偏差和精度的一些詳細資訊。根據您記錄的事件,您的本地時鐘對於時間源來說似乎太不可靠。一些成功同步後,預設的 w32time 同步間隔為 1024 秒 - 這大約是 17 分鐘,大致是事件 139 和 142 之間的時間差。
如果這是一個虛擬化系統,您應該考慮替代計時器硬體模擬。 VMWare 發布了關於該主題的綜合論文即使您使用不同的虛擬化產品,這也值得一讀。
如果這是實體系統,請考慮減少 w32time 服務的 MaxPollInterval 作為解決方法,或將 PDC 模擬器角色移至具有更可靠時脈的其他電腦。
編輯:「過時的時間資料」問題可能確實是您嘗試查詢的時間伺服器的問題。嘗試用公共 NTP 池中的伺服器取代預設的「time.windows.com」(<region>.pool.ntp.org
) 在您的 NTP 配置中(只需使用net time /setsntp:<servername>
)