window时间服务
1 启动时间服务
net start w32time
2 立即与服务器时间同步
net time \\192.168.11.22 /set /yes
3 查看时间同步源
w32tm /query /source
4 设置同步源
w32tm /config /manualpeerlist:"time.pool.aliyun.com" /syncfromflags:manual /reliable:yes /update
5 查看与同步源的时间差
w32tm /stripchart /computer:192.168.11.210 /dataonly /samples:100
6查询对等机状态
w32tm /query /peers
7 更新配置
w32tm /config /update
8设置ntp server
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" /v Enabled /t REG_DWORD /d "1" /f
//调试
w32tm /debug /enable /file:c:\temp\ntpDebug.log /size:102400 /entries:0-300
w32tm /resync
REM *** Wait 60 seconds
w32tm /debug /disable
https://www.interfacett.com/blogs/creating-standalone-ntp-server-windows/
time.pool.aliyun.com
net stop w32time
w32tm /register
通过脚本配置ntp-server
rem w32tm /register rem sc config w32time start=auto rem sc query "w32time" | findstr "RUNNING" rem if %ERRORLEVEL% == 0 (sc stop w32time) rem sc start w32time rem 设置时间服务器类型ntp reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\Parameters" /v Type /t REG_SZ /d "NTP" /f rem 配置可靠永久ntp server 0x01+0x04 0x5和0xA效果会不一样 我用的0xA reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v AnnounceFlags /t REG_DWORD /d "0xA" /f rem 启用ntp服务器 reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" /v Enabled /t REG_DWORD /d "1" /f rem 配置正向时间校正设置 reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v MaxPosPhaseCorrection /t REG_DWORD /d "0xffffffff" /f rem 配置反向时间校正设置 reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\Config" /v MaxNegPhaseCorrection /t REG_DWORD /d "0xffffffff" /f rem 重启时间服务 net stop w32time && net start w32time
rem 防火墙增加端口过滤
netsh advfirewall firewall add rule name="UDP Port 123" dir=in action=allow protocol=UDP localport=123 pause
时间校正设置配置过小会导致时间同步失败 这里配置了不推荐的值0xffffffff 始终校正
https://docs.microsoft.com/zh-cn/troubleshoot/windows-server/identity/configure-authoritative-time-server
客户端使用w32tm /resync /force进行同步
//客户端即时更新设置
rem 修改最小轮询时间
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\Config" /v MinPollInterval /t REG_DWORD /d "6" /f
rem 修改最大允许相位差
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\Config" /v MaxAllowedPhaseOffset /t REG_DWORD /d "0xffffffff" /f
创建每5分钟执行同步任务
schtasks /create /sc minute /mo 5 /tn "sync time" /tr "C:\Windows\System32\w32tm.exe /resync /force" /RL HIGHEST /f /RU administrator /RP password
rem 不管用户是否登录都执行 /NP
schtasks /create /sc minute /mo 5 /tn "sync time" /tr "C:\Windows\System32\w32tm.exe /resync /force" /RL HIGHEST /f /NP