ntpdate -u ipaddress 工作正常,但 ntpd 未更新时间。请指出原因。
[root@commander_a ~]# ntpdate -d 10.120.8.32
13 Jan 01:14:46 ntpdate[6172]: ntpdate [email protected] Fri Aug 28 07:43:22 UTC 2015 (1)
Looking for host 10.120.8.32 and service ntp
host found : 10.120.8.32
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
server 10.120.8.32, port 123
stratum 4, precision -6, leap 00, trust 000
refid [10.120.8.32], delay 0.04166, dispersion 0.00772
transmitted 4, in filter 4
reference time: da406681.2209f623 Wed, Jan 13 2016 1:00:33.132
originate timestamp: da4069fc.e9768166 Wed, Jan 13 2016 1:15:24.911
transmit timestamp: da4069dc.bc3ab362 Wed, Jan 13 2016 1:14:52.735
filter delay: 0.07344 0.04166 0.04185 0.04182
0.00000 0.00000 0.00000 0.00000
filter offset: 32.18569 32.16714 32.16395 32.17640
0.000000 0.000000 0.000000 0.000000
delay 0.04166, dispersion 0.00772
offset 32.167146
13 Jan 01:14:54 ntpdate[6172]: step time server 10.120.8.32 offset 32.167146 sec
我的ntp.conf:
driftfile /etc/ntp/drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server 10.120.8.32
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
ntpd 的输出如下
daemon.notice: Jan 13 07:01:56 ntpd ntpd [email protected] Fri Aug 28 07:43:22 UTC 2015 (1)
daemon.notice: Jan 13 07:01:56 ntpd proto: precision = 0.120 usec
daemon.debug: Jan 13 07:01:56 ntpd ntp_io: estimated max descriptors: 1024, initial socket boundary: 16
daemon.info: Jan 13 07:01:56 ntpd Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen and drop on 1 v6wildcard :: UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 2 lo 127.0.0.1 UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 3 eth0 10.120.9.199 UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 4 eth1 192.168.31.11 UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 5 eth1:0 192.168.31.1 UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 6 eth0 fe80::202:6bff:fe10:742d UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 7 eth1 fe80::202:6bff:fe10:742e UDP 123
daemon.info: Jan 13 07:01:56 ntpd Listen normally on 8 lo ::1 UDP 123
daemon.info: Jan 13 07:01:56 ntpd peers refreshed
daemon.info: Jan 13 07:01:56 ntpd Listening on routing socket on fd #25 for interface updates
这里我们运行的是自定义的 Ubuntu 操作系统,我无法运行 ntpq -c pe 和 ntpq -c rv。
感谢您的快速回复。当我使用位于我公司网络中的 NTP 服务器的 IPAdd 执行 ntpdate -d 时,我得到了以下输出。
[root@commander_a ~]# ntpdate -d 10.120.8.32
14 Jan 06:09:29 ntpdate[5566]: ntpdate [email protected] Fri Aug 28 07:43:22 UTC 2015 (1)
Looking for host 10.120.8.32 and service ntp
host found : 10.120.8.32
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
receive(10.120.8.32)
transmit(10.120.8.32)
server 10.120.8.32, port 123
stratum 4, precision -6, leap 00, trust 000
refid [10.120.8.32], delay 0.04179, dispersion 0.00783
transmitted 4, in filter 4
reference time: da41fe81.d7c98f2a Thu, Jan 14 2016 6:01:21.842
originate timestamp: da420077.52aad6d8 Thu, Jan 14 2016 6:09:43.322
transmit timestamp: da42006f.a18e4ab9 Thu, Jan 14 2016 6:09:35.631
filter delay: 0.04184 0.04179 0.04193 0.04195
0.00000 0.00000 0.00000 0.00000
filter offset: 7.685453 7.697911 7.694673 7.691484
0.000000 0.000000 0.000000 0.000000
delay 0.04179, dispersion 0.00783
offset 7.697911
14 Jan 06:09:37 ntpdate[5566]: step time server 10.120.8.32 offset 7.697911 sec
当我使用位于公司外部网络的 NTP 服务器的 IPAdd 执行 ntpdate -d 时,我得到了以下结果。
[root@commander_a ~]# ntpdate -d 120.88.46.10
14 Jan 06:09:51 ntpdate[5578]: ntpdate [email protected] Fri Aug 28 07:43:22 UTC 2015 (1)
Looking for host 120.88.46.10 and service ntp
host found : 120.88.46.10
transmit(120.88.46.10)
transmit(120.88.46.10)
transmit(120.88.46.10)
transmit(120.88.46.10)
transmit(120.88.46.10)
120.88.46.10: Server dropped: no data
server 120.88.46.10, port 123
stratum 0, precision 0, leap 00, trust 000
refid [120.88.46.10], delay 0.00000, dispersion 64.00000
transmitted 4, in filter 4
reference time: 00000000.00000000 Sun, Dec 31 1899 19:00:00.000
originate timestamp: 00000000.00000000 Sun, Dec 31 1899 19:00:00.000
transmit timestamp: da420085.ea58e3ed Thu, Jan 14 2016 6:09:57.915
filter delay: 0.00000 0.00000 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000
filter offset: 0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
delay 0.00000, dispersion 64.00000
offset 0.000000
14 Jan 06:09:59 ntpdate[5578]: no server suitable for synchronization found
你知道这是什么原因吗?因为你说过 ntpdate -d 选项会绕过防火墙。在这种情况下,ntpdate 至少在两种情况下都应该有效。
答案1
首先,ntpdate -d
不设置时钟;这来自man ntpdate
:
-d Enable the debugging mode, in which ntpdate will go through all the steps, but not adjust the local clock. Information useful for general debugging will also be printed.
其次,您没有给我们任何理由认为您实际上正在运行 ntpd(有些则认为您没有运行)。您能确认正在运行,并向我们展示和ntpd
的输出吗?ntpq -c pe
ntpq -c rv
编辑:感谢您的输出。我承认您正在运行 ntpd,但有许多原因可能导致 ntpd 无法调整时钟 - 其中之一就是它误差超过 20 分钟。
我接受你说你正在用 -u 运行 ntpdate,但这不是你向我们展示的。我们能否看到 的输出ntpdate -u ...
,然后是一些时钟正确的证据,随后又观察到时钟错误?
顺便问一下,你为什么要使用ntpdate
?-u
如果你发现你必须这样做才能通过一个愚蠢的本地防火墙,该防火墙不会让源端口为 123 的数据包出去,而这正是该标志的用途,那么请注意,这ntpd
将有完全相同的问题。
编辑2: 请仔细阅读我所写的内容.我做到了不是比如说 ”ntpdate -d 选项将绕过防火墙“。我说你坚持说你正在运行ntpdate -u
(即使你只向我展示了 的输出ntpdate -d
),并问你这样做是否是为了绕过愚蠢的防火墙,因为如果你这样做,ntpd
就会可预见地失败。
(这并不意味着它ntpdate -u
会神奇地绕过所有防火墙;它只是意味着它使请求来自本地非特权端口,这是一种绕过一些非常古老和愚蠢的防火墙的技术。)
除非您开始阅读我所写的内容并向我们展示您实际在做什么以及我要求什么,否则我认为这个问题无法得到回答。