.NET实现获取NTP服务器时间并同步(附带Windows系统启用NTP服务功能)
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
对某个远程服务器启用和设置NTP服务(Windows系统) 打开注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer 将 Enabled 的值设置为 1,这将启用NTP服务器功能。
防火墙开放UDP 123端口
打开“服务”应用(可以在开始菜单搜索“服务”),找到“Windows Time”服务。右键点击“Windows Time”服务,选择“重启”。
执行以下命令来配置服务器模式并重启时间服务: w32tm /config /reliable:YES /update net stop w32time net start w32time
客户端上面,输入以下命令,替换你自己的NTP服务端IP即可,如果显示类似以下的时间输出,说明是正常的。 w32tm /stripchart /computer:ip地址 /samples:5 /dataonly
编写程序,进行时间同步 引用包Wesky.Net.OpenTools ,版本选择1.0.6或以上版本。
该包的自述文件内容供参考: https://www.nuget.org/packages/Wesky.Net.OpenTools/1.0.6#readme-body-tab 在程序里面使用,以下测试内容供参考。其中,ntpServer可以是ip地址也可以是ntp服务器的域名地址或者互联网ntp服务器地址等。获取时间默认端口号没指定的话是123,如果要指定,只需要在参数里面新增端口号参数即可。
获取ntp服务器时间核心代码解析如下:
该文章在 2024/5/30 15:15:20 编辑过 |
关键字查询
相关文章
正在查询... |