ntpdate -d 似乎成功,但 ntpdate 返回没有合适的服务器

ntpdate -d 似乎成功,但 ntpdate 返回没有合适的服务器

我有一个未运行 ntpd 的系统,我正在尝试使用 ntpdate 更新时钟。该系统是一个似乎基于 CentOS 6 的设备。

当我跑步时ntpdate 0.pool.ntp.org,我得到:

8 Sep 17:52:05 ntpdate[7445]: no server suitable for synchronization found

然而,当我这样做时ntpdate -d 0.pool.ntp.org,我得到:

8 Sep 17:55:14 ntpdate[9499]: ntpdate [email protected] Fri Nov 18 13:21:21 UTC 2011 (1)
Looking for host 0.pool.ntp.org and service ntp
host found : 4.53.160.75
transmit(4.53.160.75)
receive(4.53.160.75)
transmit(4.53.160.75)
receive(4.53.160.75)
transmit(4.53.160.75)
receive(4.53.160.75)
transmit(4.53.160.75)
receive(4.53.160.75)
transmit(4.53.160.75)
transmit(64.16.214.60)
receive(64.16.214.60)
transmit(64.16.214.60)
receive(64.16.214.60)
transmit(64.16.214.60)
receive(64.16.214.60)
transmit(64.16.214.60)
receive(64.16.214.60)
transmit(64.16.214.60)
transmit(54.236.224.171)
receive(54.236.224.171)
transmit(54.236.224.171)
receive(54.236.224.171)
transmit(54.236.224.171)
receive(54.236.224.171)
transmit(54.236.224.171)
receive(54.236.224.171)
transmit(54.236.224.171)
transmit(50.22.155.163)
receive(50.22.155.163)
transmit(50.22.155.163)
receive(50.22.155.163)
transmit(50.22.155.163)
receive(50.22.155.163)
transmit(50.22.155.163)
receive(50.22.155.163)
transmit(50.22.155.163)
server 4.53.160.75, port 123
stratum 2, precision -23, leap 00, trust 000
refid [4.53.160.75], delay 0.03160, dispersion 0.00005
transmitted 4, in filter 4
reference time:    d7b867d0.f9841075  Mon, Sep  8 2014 17:37:20.974
originate timestamp: d7b86c03.b6a49dae  Mon, Sep  8 2014 17:55:15.713
transmit timestamp:  d7b86c02.7e12a51e  Mon, Sep  8 2014 17:55:14.492
filter delay:  0.03189  0.03188  0.03172  0.03160
         0.00000  0.00000  0.00000  0.00000
filter offset: 1.218061 1.217856 1.218023 1.217968
         0.000000 0.000000 0.000000 0.000000
delay 0.03160, dispersion 0.00005
offset 1.217968

server 64.16.214.60, port 123
stratum 2, precision -23, leap 00, trust 000
refid [64.16.214.60], delay 0.04886, dispersion 0.00006
transmitted 4, in filter 4
reference time:    d7b86425.55948a73  Mon, Sep  8 2014 17:21:41.334
originate timestamp: d7b86c03.f7d91219  Mon, Sep  8 2014 17:55:15.968
transmit timestamp:  d7b86c02.bed42c3c  Mon, Sep  8 2014 17:55:14.745
filter delay:  0.04919  0.04892  0.04912  0.04886
         0.00000  0.00000  0.00000  0.00000
filter offset: 1.210967 1.210879 1.210967 1.210836
         0.000000 0.000000 0.000000 0.000000
delay 0.04886, dispersion 0.00006
offset 1.210836

server 54.236.224.171, port 123
stratum 3, precision -20, leap 00, trust 000
refid [54.236.224.171], delay 0.04878, dispersion 0.00011
transmitted 4, in filter 4
reference time:    d7b864eb.b06fee7d  Mon, Sep  8 2014 17:24:59.689
originate timestamp: d7b86c04.2b9d2547  Mon, Sep  8 2014 17:55:16.170
transmit timestamp:  d7b86c02.f1e80bed  Mon, Sep  8 2014 17:55:14.944
filter delay:  0.04977  0.04950  0.04878  0.04887
         0.00000  0.00000  0.00000  0.00000
filter offset: 1.214091 1.214069 1.213755 1.213750
         0.000000 0.000000 0.000000 0.000000
delay 0.04878, dispersion 0.00011
offset 1.213755

server 50.22.155.163, port 123
stratum 2, precision -23, leap 00, trust 000
refid [50.22.155.163], delay 0.07384, dispersion 0.00005
transmitted 4, in filter 4
reference time:    d7b869c9.2b3f3d0b  Mon, Sep  8 2014 17:45:45.168
originate timestamp: d7b86c04.75472e97  Mon, Sep  8 2014 17:55:16.458
transmit timestamp:  d7b86c03.384a83b1  Mon, Sep  8 2014 17:55:15.219
filter delay:  0.07408  0.07414  0.07384  0.07387
         0.00000  0.00000  0.00000  0.00000
filter offset: 1.214115 1.214122 1.214012 1.214069
         0.000000 0.000000 0.000000 0.000000
delay 0.07384, dispersion 0.00005
offset 1.214012

 8 Sep 17:55:15 ntpdate[9499]: step time server 4.53.160.75 offset 1.217968 sec

根据我之前的搜索,此结果(包含各种 receive() 行和偏移量)表明它正在与远程 NTP 服务器正确通信(未被防火墙阻止)。那么,为什么当我运行它时它不更新我的时钟呢?

答案1

尝试将其运行为:

ntpdate -u 0.pool.ntp.org

配置为使用非特权端口,当您使用该选项时它总是这样-u做。ntpdate-d

因此,它可以使用-u-d但不能没有,我会仔细检查你的防火墙。

从手册页:

-u指示 ntpdate 使用非特权端口发送数据包。当防火墙后面阻止进入特权端口的流量并且您希望与防火墙之外的主机同步时,此功能非常有用。请注意,-d 选项始终使用非特权端口。

答案2

在 iptables 中添加这条规则:

iptables -t nat -A POSTROUTING -p udp --sport 123 -j MASQUERADE --to-ports 1025-65535

相关内容