solaris服务器与LAN / WAN上的NTP进行精确的时间同步

我有一台局域网上的2台服务器,我想精确同步。 目标是有一个<500微秒的时间差,恒定,没有漂移(从我在网上发现,这是可实现的准确性)。

这两台服务器也必须具有“正确”的时间,但准确性不那么重要(在“真实”时间的1秒内是可以接受的)。 “官方”时间服务器只能通过广域网访问(所以延迟 – 准确度更高)。

最好的方法是什么? 到目前为止,我已经将服务器A设置为官方时间服务器的NTP客户端,将服务器B设置为服务器A的NTP客户端。NTP已经运行了一天以上,漂移文件会定期更新,但是我仍然可以看到时间在服务器A和B之间漂移(每55秒约1ms – 非常规律的漂移)。

任何想法/评论?

谢谢

我有2个“内部”服务器。 在每一个我有一个类似于这个configuration

peer <otherserver> server <reliable1.external.source> server <reliable2.external.source> restrict 127.0.0.1 restrict <otherserver> restrict <reliable1.external.source> kod notrap nomodify restrict <reliable2.external.source> kod notrap nomodify restrict <ntpclients> nomodify notrap nopeer restrict default ignore driftfile /var/lib/ntp/drift 

在Solaris 10上,我启用了svcadm enable ntp4

顺便说一句,我会考虑购买一个GPS + NTPD时钟…

我个人对于两台服务器,我只是将它们设置为从互联网时钟使用NTP。 这样,如果服务器A发生任何不规则的歪斜,它不会使服务器B的NTP进程不正常。

在我有很多机器的情况下,我会有三个高可靠性的系统,理想情况下它们的时钟好于平均水平,并且设置为使用来自互联网时钟的NTP,然后让其余的系统使用NTP给他们。

(没有好的个人因素:Sun(超级和常规)Sparc系统的时钟范围从可怕的(Netra X1s)到出色的(SS20s有非常好的时钟)。我说可怕的是,我的意思是“NTP会放弃试图在一天之内保持同步”,所以你对系统时钟的质量不感兴趣。)

我认为如果外部延迟是相对恒定的,那么ntp协议可以让你非常准确的同步。 如果你的外部延迟波动,我会更关心,然后ntp将无法达到最高的准确性。

这是一个非常技术性的pdf ,说明你可以通过正确的configuration将精度降低到几纳秒。

如果你真的需要这样的准确性,你有没有想过安装某种ntp设备,并同步到? 这样你就可以消除外部延迟的variables。

你有没有尝试修补小民谣改变间隔回来?

考虑投资一个专用的ntp服务器,并将这些服务器同步到ntp硬件。 除了像GPS这样的来源获得正确的时间,他们也优化,以减less他们在硬件和build设的select的抖动。 正如在一个答案中指出的一些types的硬件,你可以安装ntpd仍然会导致很多的抖动。

专用的NTP硬件并不便宜,但可以为您节省数周时间,find适合作为计时器的系统。