Windows
Hyper-V VM 上的時間同步失敗,但當我以域使用者身份登錄時成功
我們有一個在 Hyper-V(Server 2008 R2 主機)上執行的 Windows Server 2003 SP2 VM。VM 已啟用 Hyper-V 時間同步。
我注意到虛擬機上的時間快了大約 25 分鐘。我在事件日誌中看到以下內容:
- 時間提供程序 NtpClient 被配置為從一個或多個時間源獲取時間,但是目前沒有一個源可訪問。15 分鐘內不會嘗試聯繫來源。NtpClient 沒有準確時間的來源。
- 時間提供程序 NtpClient 無法訪問或目前正在從 ourdc.ourdomain.local (ntp.d|192.168.2.18:123->192.168.2.2:123) 接收無效時間數據。
- 時間提供程序 NtpClient:在嘗試聯繫它 8 次後,尚未從域控制器 ourdc.ourdomain.local 收到有效響應。此域控制器將作為時間源被丟棄,並且 NtpClient 將嘗試發現要從中同步的新域控制器。
我以本地使用者身份登錄。(我們有一個在此 VM 上執行的舊應用程序 - 它要求使用者始終登錄,為此我們使用非域使用者帳戶。)
當我以域使用者身份登錄時,時鐘幾乎立即自行糾正。以域使用者身份執行“w32tm /monitor”和“net time”顯示沒有錯誤,並表明我們的域控制器是時間源。
有誰知道可能導致此問題的原因,以及為什麼在域帳戶下登錄可以解決問題?我想知道時間是否會再次開始漂移。
謝謝你的幫助,
理查德
我從現場經驗中學到的東西: - 將所有管理程序同步到您的 DC(為每個 DC 創建一個循環 dns,如 ntp.mydomain.local) - 具有 fsmo“pdc 模擬器”的 DC 必須同步到官方 ntp 伺服器. 只有他必須這樣做。- 所有作為 VM 執行的 DC 不得通過 hyper-v 或 vmware 工具同步時間。
當 VM 啟動時,管理程序會模擬一個帶有時間和日期的 bios。這取自管理程序的目前日期和時間。這就是為什麼他們必須準時,尤其是在 AD 時間,即使他們是工作組。
預設情況下,超過 500 萬的差異將破壞 kerberos。
檢查所有管理程序和 DC 上的時間。
這是我使用的一個糟糕的腳本,它給出了電腦和參考電腦之間的偏移量(選擇帶有 pdc 模擬器 FSMO 的 dc):(長線)。目前文件夾上必須有 psexec,並以每行一台伺服器的形式提供 servers.txt 以進行檢查
for /f %s in (servers.txt) do echo %s >> ntp_stripchart.txt && psexec \\%s w32tm /stripchart /computer:myspecialDC /period:1 /dataonly /samples:1 >> ntp_stripchart.txt && echo -------- >> ntp_stripchart.txt