NTP 正在运行,时钟未同步。手动操作有效

NTP 正在运行,时钟未同步。手动操作有效

Ubuntu 服务器正在运行 ntp,并连接到互联网。但是,系统时钟仍然误差约 30 分钟,并且随着时间的推移误差越来越大。

$ service ntp status
NTP server is running..

输出ntpq -p

remote           refid      st t when poll reach   delay   offset  jitter

mail.thefrown.n .INIT.          16 u    - 1024    0    0.000    0.000   0.000
193.1.12.167    .INIT.          16 u    - 1024    0    0.000    0.000   0.000
tshirt.heanet.i .INIT.          16 u    - 1024    0    0.000    0.000   0.000
chilipepper.can .INIT.          16 u    - 1024    0    0.000    0.000   0.000

这看起来像是防火墙问题?有趣的是,当我停止 ntp 并运行以下命令时

ntpdate -u 0.europe.pool.ntp.org
14 Jul 09:27:40 ntpdate[3664]: step time server 217.198.219.102 offset -21.831200 sec

时间确实调整了,这让我相信这不是防火墙问题?

答案1

.INIT. refid 实际上意味着远程仍处于初始化状态,尚未收到数据包或脉冲。这可能是防火墙等不允许的网络流量,但不一定。

30 分钟的偏移量超出了 ntpd 恐慌阈值。(您指的是秒吗?您的 ntpdate 输出中的偏移量只有几十秒。)根据配置,它可能只会计时一次,或者拒绝并退出。一些操作系统会先调用 ntpdate,然后再调用 ntpd。

正如 mlichvar 提到的,ntpdate 和 ntpd 都可能选择 123 作为源端口。

此外,ntpdate 在“NTP 套接字正在使用中”时拒绝调整,这也是需要先停止 ntpd 的另一个原因。如果您不希望时间像数据库服务器那样步进,这是一种有用的安全机制。

相关内容