chrony客户端发送时间戳随机问题

Posted xujiecnblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了chrony客户端发送时间戳随机问题相关的知识,希望对你有一定的参考价值。

现象

  使用centos8的chrony给本机同步时间时,发现客户端发送给服务器的NTP包中,transmit timestamp(T3)的时间戳是随机的,同时,服务器端收到客户端请求的包后,原封不动的将时间赋值给origin timestamp(T1),如下图所示:

但是这种情况在使用ntpdate同步本地时间时并不存在,时间都是正确的:

我记得之前并不存在这个问题,随后用centos6.5的ntpd同步测试发现时间戳不是随机的,而是一个正确的客户端本地时间。

分析

Linux7之前的版本同步时间用的是ntpd,Linux7以及7之后的版本都改用chrony了,两者区别参考:https://chrony.tuxfamily.org/comparison.html最后有描述。

经过查资料发现,这个随机时间戳是因为安全考虑,参考:https://datatracker.ietf.org/doc/html/draft-ietf-ntp-data-minimization#page-4

同时,自chrony2.3开始已经不显示客户端数据包中的本地时间和同步状态,这个版本2016年出的。参考:https://chrony.tuxfamily.org/news.html

同时chrony的文档里已经提示了:

问题

当需要计算客户端在校时中的delayoffset是需要用到这4个时间戳的。现在T1变成随机的,应该怎么计算呢?

 

以上是关于chrony客户端发送时间戳随机问题的主要内容,如果未能解决你的问题,请参考以下文章

chrony时间同步 服务端 客户端 安装配置

Chrony时间服务器

Linux系统下的Chrony时间同步

时间同步软件chrony安装配置

【chrony】CentOS7.2 上chrony的安装与配置

记一次chrony同步失败问题排查