僅當它們重合時,Windows 時間服務才會同步到外部 ntp 伺服器
我最近遇到了一個以前從未見過的問題。2030 年左右的一個晚上,其中一個 DC 將時鐘撥回了一個小時。此伺服器同步到 pool.ntp.org 中的兩個地址。發生這種情況時沒有人在場,事件日誌清楚地顯示時間服務與公共 IP 同步。
我只能假設我們遇到了一個配置不正確的伺服器,因為在第二天早上由於建築物管理系統的時間錯誤造成的混亂之後,我只是重新同步了 ntp 伺服器,它立即更正了它的時鐘。
我通常將 ntp 配置為使用兩個不同的 ntp 伺服器,因此我假設客戶端僅連接到第一個響應的伺服器,並假設它將提供正確的時間。
所以,我的問題:
有沒有辦法配置 windows 時間服務,以便它只會在諮詢兩個不同的 ntp 伺服器並且它們都在正確時間方面重合後才更正其時鐘?我正在執行Win2019
編輯:我不知道可以對 ntp 結果進行歷史查詢(感謝 Paul Gear)。查詢我配置的兩個 IP 顯示了我的問題的原因:
1623189765,"2021-06-08 22:02:45",-0.003809235,1,13.2,,,0, 1623188607,"2021-06-08 21:43:27",6.1543e-05,1,12.8,6,"Newark, NJ, US",0, 1623188607,"2021-06-08 21:43:27",6.1543e-05,1,12.8,,,0, 1623187438,"2021-06-08 21:23:58",0.011513196,1,12.4,6,"Newark, NJ, US",0,
中間的線表示與我使用的伺服器存在巨大差異。
不要太不同意 John Mahowald,但至少從 Windows 2016 開始,Windows 時間服務已經有了很大改進,包括完整的 NTP 服務。他們還有一個文件解釋如何配置 Windows 以獲得高精度。我認為沒有必要執行單獨的非 Windows NTP 伺服器,除非您有極高的精度要求(在這種情況下,您可能會改用 PTP - Windows 2019 甚至支持它)。
所以很可能,您剛剛遇到了不准確的池伺服器。這種情況時有發生,並且池非常擅長快速刪除這些伺服器。如果你有它同步到的伺服器的 IP 地址記錄,你可以在https://www.ntppool.org/scores/ <IP_ADDRESS> 中查看它的歷史記錄。
我認為很可能是因為有問題的系統仍在響應,它被選中是因為您配置的對等點太少 (另請參閱RFC8633 中關於具有多種參考時鐘的以下部分),並且 Windows 時間服務不需要重新查詢池以獲取新 IP,因為原始伺服器仍在響應。
因此,正如約翰所說,為防止這種情況再次發生,您可以做的最重要的事情是添加更多時間源。來自池的更多來源很好,如果您想要池之外的東西具有相當穩定的 IP 並提供相當準確的服務,請嘗試
time.apple.com
,它似乎是全球分佈的第 1 層伺服器的 Geo-DNS 池。