为什么 ntp 在无 Internet 启动后没有恢复?

WoJ*_*WoJ 11 linux ntp ntpd

我有一些 Linux 设备(没有 TOY 芯片,所以它们完全依赖于 ntp),它们可以在无法访问互联网的情况下启动(到交换机的链接已启动)。该ntp服务将启动,但显然不会联系任何对等方。然后我最终得到一个ntp正在运行但不与任何对等点同步的服务(ntpq -p给出一个 .INIT.状态)

问题是,当建立到 Internet 的连接时,这确实会改变。

如果连接在启动时可用,则一切正常。同上,如果我手动发出service ntp restart(ntp连接到对等点并且时间正确同步)。

ntp 不应该定期尝试重新连接吗?

  • 如果是:这是我需要配置的东西吗(我在配置中没有看到任何东西)
  • 如果不是:处理服务重启或服务启动延迟的好方法是什么(我可以假设与互联网的连接将在启动后n分钟恢复)

注意:从文档看来,最大池时间(据我所知是 ntp 在放弃之前尝试连接到对等方的最大时间?)是 1024 秒 = 17 分钟,这比建立所需的时间要长得多上网(大约 2 到 5 分钟,最坏情况)

Rom*_*man 12

您可能已经被 ntpd 的边缘情况所困扰:

IIRC ntpd 版本 < 4.2.4p3 从它的同步列表中删除了在某些时候无法访问的任何服务器。在这种情况下,这当然很糟糕,因为 ntpd 很可能在获得 Internet 连接之前“耗尽”其对等项列表。

可以/可以dynamic为这些服务器设置选项ntp.conf以解决此问题。

对于较新的版本,这不再是必要的(而且,动态选项在某些时候已停用,这对某些突然抱怨 ntp 的人造成了轻微的抱怨)。

因此,您可以升级 ntpd 或设置选项。

作为第三种选择,您可以在 init 系统中创建适当的依赖项;让NTPD依靠已建立的网络连接(只是网络)。结果是您也可以将其与其他服务重用。