
Windows 自帶Windows Timew32time? 服務就能當 NTP Server 用不用裝第三方軟件。下面給你一套工作組/局域網環境可用的標準做法Win10/11、Windows Server 通用。一、核心原理NTP 走UDP 123w32time 默認只做客戶端要對外提供服務需改注冊表NtpServer\Enabled 1開啟服務端Config\AnnounceFlags 5聲明自己是“可靠時間源”如果是域控NTP Server 默認已開只需調上游時間源二、服務端配置管理員 CMD / PowerShell1. 開啟 NTP Server 功能reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer /v Enabled /t REG_DWORD /d 1 /f2. 聲明為可靠時間源reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config /v AnnounceFlags /t REG_DWORD /d 5 /f若這臺機器本身連不上外網上游、又希望強行對外授時可改成0xA不依賴上游也可宣告自己可靠。3.可選指定自己先跟誰同步如果本機時間不準先讓它跟公網 NTP 對齊reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters /v Type /t REG_SZ /d NTP /f reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters /v NtpServer /t REG_SZ /d ntp.aliyun.com,0x1 time.windows.com,0x1 /f每個 NTP 地址后面必須帶,0x1否則 SpecialPoll 模式不生效。4. 重啟時間服務net stop w32time net start w32time建議把 Windows Time 服務啟動類型設為“自動”5. 放行防火墻 UDP 123 入站netsh advfirewall firewall add rule nameNTP Server protocoludp dirin localport123 actionallow或用 PowerShellNew-NetFirewallRule -DisplayName NTP Server -Direction Inbound -Protocol UDP -LocalPort 123 -Action Allow三、驗證服務端是否正常在本機w32tm /query /status netstat -an | findstr :123看到UDP 0.0.0.0:123監聽即成功。從局域網另一臺機器測w32tm /stripchart /computer:192.168.1.100 /samples:5能出 offset 曲線就通了。四、客戶端怎么連Windows 客戶端管理員w32tm /config /manualpeerlist:192.168.1.100,0x8 /syncfromflags:manual /reliable:no /update net stop w32time net start w32time w32tm /resyncLinux 客戶端ntpdate -q 192.168.1.100 # 或寫進 /etc/ntp.conf - server 192.168.1.100 iburst五、常見坑改完注冊表沒重啟 w32time? → 不生效防火墻只開 TCP 123? → NTP 是 UDP必須 UDPAnnounceFlags 沒改? → 客戶端認為“這不是可靠源”不去同步本機時間差太大MaxPos/NegPhaseCorrection? → 拒絕跳變需先手動近似對時虛擬機? → 優先用 Hyper-V/VMware 自帶時鐘同步再疊加 NTP避免漂移打架