局域网ntp服务器设置(windows时间同步服务器NetTime)(ubuntu systemd-ti ...

海哥  金牌会员 | 2024-6-21 02:45:58 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 664|帖子 664|积分 1992

背景

客户有个局域网,局域网里面有的设备,时间都不一致,导致交互的时候可能出现题目;
如今刚好有台主机,有两个以太网接口,其中一个可以连外网,能获取到网络时间,我们可以把这台主机做成ntp服务器,供局域网内其他主机做时间同步;
以下是相干操作方法步骤;
windows怎样设置ntp服务器

手动设置


  • 打开注册表编辑器。您可以按Win+R键,然后输入regedit并回车。
  • 导航到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
  • 在右侧面板中,双击“Enabled”,然后在数据值字段中输入“1”。

  • 导航到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
  • 在右侧面板中,双击“AnnounceFlags”,然后在数据值字段中输入“5”。

  • 关闭注册表编辑器。
  • 打开命令提示符(以管理员身份),然后输入以下命令来重启Windows时间服务:
  1. net stop w32time && net start w32time
复制代码

Windows主机已经被设置为NTP服务器,其他设备(如Linux主机和NVR设备)应该能够从此主机获取时间信息了。对于Linux主机和NVR设备,你需要将它们的NTP客户端指向Windows主机的IP地点。

  • (20240123)将Windows Time服务设置为开机自启
    本日重启神角矿工控机,发现ntp服务没有启动(启动类型表现“手动”),然后我把它改成“主动”以支持开机自启。

设置参数AnnounceFlags和Enabled含义

在Windows的注册表设置中,AnnounceFlags和Enabled这两个键值对NTP服务器的设置有特殊的含义。

  • AnnounceFlags: 这个键控制了W32Time服务(Windows Time)是否(以及怎样)向网络公布自己作为一个可用的时间源。它的值是一个位掩码,表现差别的标志。当AnnounceFlags的值设为5时,表现以下两个条件:

    • 值4(二进制100)告诉W32Time服务,只有当本机是一个可靠的时间服务时(例如,它已经被设置为手动同步到一个硬件时钟或外部NTP服务器),才公布自己为时间服务器。
    • 值1(二进制001)让W32Time服务始终公布自己为时间服务器,无论它是否已经吸取到合法的时间更新。

  • Enabled: 这个键决定了是否启用NTPServer。如果把这个值设为1,那么NTPServer就会被启用,即W32Time服务将作为NTP服务器,为其他设备提供时间。
请注意,在修改注册表之前,肯定要创建一个还原点大概备份注册表。错误的修改可能会导致系统不稳固。
   注意:AnnounceFlags默认值为a,如果我不修改它,貌似也能正常工作。
  使用软件设置(NetTime)

在Windows上,有一些第三方应用程序允许你很容易地设置NTP服务器。
例如, “NetTime”。NetTime是一个简单的、易于使用的时间同步客户端,也可以作为服务器运行。以下是怎样设置它的步骤:

  • 下载并安装NetTime:http://www.timesynctool.com/
  • 运行NetTime,然后右键点击系统托盘中的NetTime图标,选择“Settings”。
  • 在“Settings”窗口中,勾选"Always provide time"选项,使得NetTime作为服务器提供时间服务。
  • 点击“OK”生存设置。
这样,你就把你的Windows主机设为了NTP服务器。然后你就可以在其他设备(如Linux主机和NVR设备)大将其NTP客户端指向Windows主机的IP地点,实现局域网内的时间同步。


实操

下载它:

下载完成后点开默认安装即可:

点击Settings,勾选Allow other computers to sync to this computer:

弹出个警告,提示我们在把此主机用于ntp服务器时,需保证此主机时间的精确性,我们点No即可:


相干疑问:0.nettime.pool.ntp.org是什么?


0.nettime.pool.ntp.org是一个公共的网络时间协议(NTP)服务器地点,它是NTP Pool Project的一部门。
NTP Pool Project是一个大型的、由志愿者和赞助商维护的NTP服务器池。它为全球的互联网用户提供精确的时间服务。"pool.ntp.org"项目使用DNS轮询来分配各种时间服务器的流量,这意味着当你查询"pool.ntp.org"时,DNS服务器会返回该池中任意一个服务器的IP地点。
在0.nettime.pool.ntp.org这个地点中,0表现该服务器在NTP Pool中的逻辑编号,而nettime则可能是服务器组的名称,但我没有找到关于nettime的特定信息。通常,你会看到像0.pool.ntp.org,1.pool.ntp.org这样的地点,其中的数字(如0, 1)代表了差别的服务器或服务器组。
然而,如果你的网络不能访问互联网,那么你将无法使用这个地点,因为它需要通过互联网来访问NTP Pool的服务器。在这种情况下,你需要设置一个内部的NTP服务器,如我之前所述。
我在神角矿win10工控机上用这个服务作为ntp同步服务器,但是盒子不停无法同步乐成不知道怎么回事,不停表现超时(可能是工控机的防火墙阻止了,见本文反面解释)


注意事项

请务必检查windows主机123端口是否已被占用,方法请参考:windows查看端口占用,通过端口找进程号(查找进程号),通过进程号定位应用名(查找应用)(netstat、tasklist)

ubuntu20.04怎样同步ntp服务器时间?

使用timedatectl
systemd-timesyncd服务


Ubuntu 20.04默认使用的是systemd-timesyncd服务来同步时间,你不需要另外安装NTP。以下是怎样使用timedatectl
来同步NTP服务器的时间:

  • 首先打开终端。
  • 使用以下命令检查systemd-timesyncd服务的状态:
  1. timedatectl
  2. status
复制代码


  • 如果NTP service: active行表现为yes,则表现systemd-timesyncd服务正在运行。如果没有,你可以用以下命令启动它:
  1. sudo timedatectl
  2. set-ntp on
复制代码

  • 如今你的系统应该会主动从默认的NTP服务器同步时间。你也可以修改/etc/systemd/timesyncd.conf文件来更改NTP服务器。例如,使用nano编辑器:
  1. sudo nano /etc/systemd/timesyncd.conf
复制代码


  • 在此文件中,找到以#NTP=开头的行,删除#并添加你的NTP服务器,多个服务器之间用空格分隔。例如:
  1. NTP=server1 server2
复制代码


  • 生存并关闭文件。然后重启systemd-timesyncd服务来应用更改:
  1. sudo systemctl restart systemd-timesyncd
复制代码

7. 查看时间是否同步乐成
用timedatectl
命令查看,如果同步乐成,我的盒子RTC Time那儿时间会表现精确,而不是1970xxxx:
  1. timedatectl
复制代码

用systemctl status systemd-timesyncd.service --no-pager
命令查看systemd-timesyncd服务的状态以及重要日志:
  1. systemctl status systemd-timesyncd.service --no-pager
复制代码
如果同步乐成,会表现下面这行文字:
  1. Initial synchronization to time server 192.168.19.232:123 (192.168.19.232).
复制代码

以上就是在Ubuntu 20.04上使用timedatectl
来同步NTP服务器时间的步骤。
(重要)设置windows ntp服务器123端口 UDP的入站(必选)和出站流量(非必选)

注意:此方法为备选方案,在ntp无法同步时,可测试开启,看看开启后是否能够同步。
在Windows中,你可以通过以下步骤检查和设置防火墙以允许UDP 123端口的入站和出站流量:


  • 打开“控制面板”。
  • 点击“系统和安全”。
  • 点击“Windows Defender 防火墙”。
  • 在左侧菜单中,点击“高级设置”。
  • 在新窗口中,你会看到"入站规则"和"出站规则"两个选项。首先,我们来创建一个允许UDP 123端口入站的规则。
  • 点击"入站规则",然后在右侧点击"新建规则"。
  • 在弹出的领导中,选择"端口",然后点击"下一步"。


  • 选择"UDP",然后在"特定本地端口"中输入"123",点击"下一步"。


  • 选择"允许毗连",然后点击"下一步"。


  • 确保所有的网络类型都被勾选,然后点击"下一步"。
  • 给规则命名(例如,“NTP UDP 123 Inbound”),然后点击"完成"。


如今我已经可以让外部主机获取到ntp服务的时间了,反面出站规则貌似不用设置了


(下面无需设置)
接下来,我们创建一个允许UDP 123端口出站的规则。

  • 在左侧菜单中,点击"出站规则",然后在右侧点击"新建规则"。
  • 重复步骤7-11,只是在第9步时选择"允许毗连"。
如今,Windows防火墙应该已经设置为允许UDP 123端口的入站和出站流量了。
20240123 本日调试神角矿,工控机上的ntp服务不停不能被外部哀求通(本机可以),发现是被防火墙给阻止了(我反面按照上面上面设置了123端口 UDP的入站流量,就可以了)

如图:原先是将公用网络的防火墙打开了,我把它关闭,ntp服务就能使用了。

20240123 ubuntu systemd-timesyncd 时间同步(ntp同步)报错:Server has too large root distance. Disconnecting. 解决办法

https://dontla.blog.csdn.net/article/details/135777981
参考文章

参考文章:时间同步服务器

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

海哥

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表