将自己的Windows电脑当作NTP时间服务器,给局域网其他电脑进行时间同步

学习 · 01-07

2024-01-07T07:51:15.png
为了给局域网所有电脑进行时间同步,自己写了个小工具,可以一键同步。
但在这之前,遇到一点小问题,就是需要连接的主机无法开启NTP,开启了别的主机也无法连接进行同步。
后来重新设置了防火墙规则,并且修改注册表、使用DOS命令启动开启,一顿操作,总算是能行了。
记录以下过程:
2024-01-07T07:54:16.png
这个是用到的DOS命令,其实就是停止、反注册、注册、启动、不等待强制同步。
另外一个DOS命令可以用来开启NTP服务和加入防火墙规则:

@echo off
reg add  "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v "AnnounceFlags" /t REG_DWORD /d 5 /f
reg add  "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" /v "Enabled" /t REG_DWORD /d 1 /f
reg add  "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters" /v "Type" /t REG_SZ /d "NTP" /f
netsh advfirewall firewall add rule name="_123 NTP" protocol=UDP dir=in localport=123 action=allow
net start w32time
netstat -an | find "123"
pause