AD 網域電腦無法與 DC 時間同步

公司有架 Active Directory,一般來說,將電腦加入網域後,就會自動跟 DC 對時,但是有幾台 XP 電腦的時間就是無法 跟 DC 同步,而且系統的事件檢視器會出現事件 ID:36,來源 W32Time 警告訊息:「時間服務無法在 49152 秒內進行系統時間同步處理, 因為沒有時間提供者 提供可用的時間戳記。系統時鐘並未同步化。


查了好久,終於找到答案。首先先確定 DC 的時間準時。

再來在「命令提示字元」執行以下指令:
w32tm /dumpreg /subkey:Parameters

正常應該會出現以下訊息:

數值名稱 數值類型 數值資料
--------------------------------------------------------------------

ServiceMain REG_SZ SvchostEntry_W32Time
ServiceDll REG_EXPAND_SZ C:\WINDOWS\system32\w32time.dll
NtpServer REG_SZ time.windows.com,0x1
Type REG_SZ NT5DS

這裡列出的值也可以從登錄檔查到,位置如下:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\Parameters

注意 Type 這一欄的數值資料內容,有三種類型,各代表目前該 client 端電腦設定:
1. NT5DS:與內部 domain controller 同步
2. NTP:直接與外部 NTP server 同步,而外部 NTP server 設定在 Ntpserver 欄位
3. AllSync:可與內部 domain controller 或外部 NTP server 同步

不曉得為何,那幾台無法與 DC 同步的電腦在 Type 欄位都設為 NTP。要修改設定的話可以執行以下指令:
1. NT5DSw32tm /config /syncfromflags:DOMHIER
2. NTPw32tm /config /syncfromflags:MANUAL
3. AllSyncw32tm /config /syncfromflags:MANUAL,DOMHIER

所以將那幾台電腦的值設定為 NT5DS 就都可以正常與 DC 同步時間了。