重点,配置好后,服务端 三个注册表的值一定要检查
1.HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
值名称:Enabled
类型:REG_DWORD
值数据:1
2.HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters (实测这个好像不要动默认键值类型好像是REG_SZ系统默认上游服务器域名time.windows.com)
值名称:NTPServer
类型:REG_DWORD
值数据:1
3. HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
值名称:AnnounceFlags
类型:REG_DWORD
值数据:5
三个键值加好了,可以本机测
CMD
w32tm /stripchart /computer:127.0.0.1 /samples:3
三个键值powershell验证
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" | Select Enabled
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Parameters" | Select NTPServer
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Config" | Select AnnounceFlags
三个键值也可以用PowerShell 一键写入三条
-
启用NTP服务提供程序
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" `
-Name "Enabled" -Value 1 -PropertyType DWord -Force -
设置本机为NTP服务器
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Parameters" `
-Name "NTPServer" -Value 1 -PropertyType DWord -Force -
标记为可靠时间源
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Config" `
-Name "AnnounceFlags" -Value 5 -PropertyType DWord -Force
重启时间服务生效
net stop w32time
net start w32time
也可以CMD reg.exe bat版本
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" /v Enabled /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters" /v NTPServer /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v AnnounceFlags /t REG_DWORD /d 5 /f
net stop w32time
net start w32time
如果有必要 防火墙powershell放行
New-NetFirewallRule -Name "W32Time-NTP-UDP123" -DisplayName "Windows NTP Server UDP123" -Protocol UDP -LocalPort 123 -Action Allow -Enabled True
配置过程并不复杂
WIN+R → gpedit.msc → 计算机配置 → 管理模板 → 系统 → Windows 时间服务 → 时间提供程序
- ✅ 启用 Windows NTP 服务器:已启用(对外授时核心开关)
- ✅ 启用 Windows NTP 客户端:已启用
- ✅ 配置 Windows NTP 客户端:已启用
NtpServer:time.windows.com,0x8 ntp.aliyun.com,0x8
类型:AllSync=NTP + NT5DS 域层次NTP NT5DS 一般用NTP
标志位0x9=0x8 + 0x1 或者是 0x80x8:Client mode(NTP 客户端模式,推荐),主动向外 查询时间,最常用。0x1:SpecialInterval,强制使用下面SpecialPollInterval这个自定义轮询周期,不自动动态调整 Poll 间隔。(注意:⚠️ 是独立服务器(工作组,不加入 AD),不应该用 AllSync!- AllSync:如果是域内机器才适合;独立 NTP 服务器,类型改成 NTP。- 如果保持 AllSync,系统会额外尝试去找域控同步时间,但你没有 AD 域,会产生不必要的日志报错。)
SpecialPollInterval=1024
单位是秒,1024 秒 = 约 17 分钟,强制每隔 1024 秒去拉一次上游时间。只有标志带0x1的时候这个参数才生效。
然后CMD
gpupdate /force
net stop w32time && net start w32time
验证 CMD
w32tm /query /peers
查看上游对等源
w32tm /query /configuration
(查看完整w32time配置,看NtpServer是否Enabled Enabled就是在运行,对外有授时能力)
sc query w32time
(查看w32time服务状态 )
或者
powershell验证
Get-Service W32Time
STATE: 4 RUNNING ✅ 正在运行
STATE: 1 STOPPED ❌ 已停止
图形化验证
- Win+R,输入
services.msc回车,打开服务管理器 - 在列表找到 Windows Time
另外看下123端口是不是在监听
powershell
netstat -ano | findstr :123
对于客户端
以ntp.hl.com写入菜单为例,可以多种写法。
cmd
w32tm /config /manualpeerlist:"ntp.hl.com,0x9" /syncfromflags:manual /update
net stop w32time
net start w32time
w32tm /resync
powershell直接写注册表
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Parameters" -Name NtpServer -Value "ntp.hl.com,0x9"
net stop w32time
net start w32time
w32tm /resync
查看当前配置
cmd
w32tm /query /configuration
w32tm /query /peers
关于系统列表的NTP服务器地址说明

关于组策略的NTP服务器地址说明,组策略高于系统注册表

posted on
浙公网安备 33010602011771号