我的两个 ntp 服务器在状态 [closed] 中均被标记为 falsetickers

我的两个 ntp 服务器在状态 [closed] 中均被标记为 falsetickers

我有一台 Linux 机器,设置了两个 ntp 服务器进行同步。在强制同步之前,这台机器严重不同步(61 秒)。以下输出是同步 1 小时后的输出。检查 ntpq 时,

ntpq> peers                                                                           
          remote           refid      st t when poll reach   delay   offset  jitter     
==============================================================================     
x192.168.[redacted]   .MDM.            1 u  113  256  377    0.513   13.120   1.843     
x192.168.[redacted]   .MDM.            1 u  115  128  377    2.689    0.618   1.230     

两者都设置为 falseticker!

ntpq> assoc                                                 

ind assID status  conf reach auth condition  last_event cnt 
=========================================================== 
  1 13191  91d4   yes   yes  none falsetick   reachable 13  
  2 13192  91d4   yes   yes  none falsetick   reachable 13  

是什么导致时间选择算法将两者都设置为 false,我该如何解决这个问题?


更新!

我重新运行了上述命令并获得了新的状态:

ntpq> assoc                                                                     

ind assID status  conf reach auth condition  last_event cnt                     
===========================================================                     
  1 13191  91d4   yes   yes  none falsetick   reachable 13                      
  2 13192  96d4   yes   yes  none  sys.peer   reachable 13                      
ntpq> pe                                                                        
     remote           refid      st t when poll reach   delay   offset  jitter  
==============================================================================  
x192.168.[red]   .MDM.            1 u  241  256  377    0.513   13.120   1.396  
*192.168.[red]   .MDM.            1 u  114  256  377    2.671    0.567   0.710  

答案1

你的两个上游服务器都声称自己是 stratum-1 服务器- 即能够使用 NTP 的最高级别的时间源,可直接连接绝对时间源(例如原子钟或 GPS 接收器) -但他们的时钟彼此不同(也就是说,您与每台服务器的偏移量(当您收到其信号时,您的时钟与其时钟之间的距离)远远大于观察到的传播延迟(从每台服务器获取时间信号所需的时间))。

面对两台都声称自己是权威的但却显示不同时间的服务器,ntpd很合理地说,它无法在它们之间做出选择,并且会将它们两台都视为骗子。

现在看起来,在任其发展ntpd一个小时后,它已经决定更喜欢其中一个,并同意与其同步。真不错。

这里的基本问题是,上游之间说的话不可能是真的。如果您只想要一个大概的时间,请在您的 中仅列出其中一个ntp.conf,这样您就可以更快地同步到该时间。如果您想要一个确切的时间,请联系服务器的管理员,并询问他们为什么他们的时钟不同,以及他们各自的时间源在哪里。

编辑:如果让我猜的话,我会说两个都他们都错了——我猜他们都配置为将内部时钟或类似不够准确的时间源视为 0 层。他们可能还配置为从互联网服务器获取时间,但由于他们被告知他们有一个绝对准确的时钟,他们更喜欢那个时间,并因此将其作为 1 层进行宣传。

答案2

有一块手表的人知道现在几点。有两块手表的人永远都不确定。

您需要添加另一台服务器,以便 ntpd 能够打破两个时钟之间的僵局。在所有可能的服务器关联数量中,两个时钟是最糟糕的设置。第三台服务器是第 2 层还是第 3 层并不重要,您只需要给 ntpd 一个机会来辨别谁是假时钟。

附言

您不需要编辑您的 RFC1918 地址。事实上,当您像这样编辑它们时,回答起来会更困难。如果您切换编辑的八位字节会更好:xxx.xxx.1.1 和 xxx.xxx.1.2。至少这样可以很容易地引用其中一个。但最重要的是,真的没有必要编辑 1918 地址。

相关内容