我在 HP 笔记本电脑上运行 Ubuntu MATE 16.04(Xenial Xerus)-64 位“桌面”版本。
我有关于网络时间协议 (NTP)(网络时间协议):如果我运行命令“ ntpq -p
”,则会得到以下结果:
$ ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
0.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
1.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
2.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
3.ubuntu.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000
ntp.ubuntu.com .POOL. 16 p - 64 0 0.000 0.000 0.000
-mirrors.dominio 195.220.94.163 3 u 43 256 377 15.209 0.548 0.786
+ntp02.oal.ul.pt 194.117.9.138 2 u 194 256 377 10.934 -0.398 0.783
+a88-157-128-22. 212.113.174.246 3 u 7 256 377 7.905 -0.105 0.156
-smtp-in1.aqea.n 194.117.9.136 3 u 120 256 377 10.117 0.000 0.269
*ns.rnl.tecnico. 131.188.3.222 2 u 56 256 377 11.111 0.135 9.384
然而,如果我在“”shell 中运行“peers”命令ntpdc
,我会收到一条错误消息:
$ ntpdc
ntpdc> peers
localhost: timed out, nothing received
***Request timed out
ntpdc> quit
我没有更改 NTP 配置文件 ( /etc/ntp.conf
) 的默认配置。漂移文件 / 漂移文件“ /var/lib/ntp/ntp.drift
”不存在,因此我使用“ touch /var/lib/ntp/ntp.drift
”创建了它,将其所有权更改为“ ntp
”用户和组(使用“ chown ntp:ntp /var/lib/ntp/ntp.drift
”),甚至重新启动了计算机。这没有任何区别。
无论我以“ntpdc”还是“sudo ntpdc”运行它,都会发生“ localhost: timed out, nothing received
”错误,无论我是否运行“ufw”防火墙,都会发生该错误。
日志文件/var/log/syslog
具有以下看似相关的条目:
Jul 17 14:48:08 myhostname ntpd[1467]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
Jul 17 14:52:16 myhostname ntpd[1467]: 91.189.89.199 local addr 192.168.1.2 -> <null>
Jul 17 14:52:20 myhostname ntpd[1467]: 91.189.94.4 local addr 192.168.1.2 -> <null>
Jul 17 14:52:34 myhostname ntpd[1467]: 5.135.59.152 local addr 192.168.1.2 -> <null>
Jul 17 14:52:40 myhostname ntpd[1467]: 62.48.148.210 local addr 192.168.1.2 -> <null>
我猜测错误“ kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
”是相关的。
“ntp”服务正在运行:
$ systemctl status ntp
● ntp.service - LSB: Start NTP daemon
Loaded: loaded (/etc/init.d/ntp; bad; vendor preset: enabled)
Active: active (running) since Dom 2016-07-17 14:42:23 WEST; 1h 20min ago
Docs: man:systemd-sysv-generator(8)
Process: 1442 ExecStart=/etc/init.d/ntp start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/ntp.service
└─1467 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 109:116
Jul 17 14:42:27 myhostname ntpd[1467]: Soliciting pool server 62.48.148.210
Jul 17 14:42:27 myhostname ntpd[1467]: receive: Unexpected origin timestamp from 5.135.59.152
Jul 17 14:42:28 myhostname ntpd[1467]: Soliciting pool server 2001:690:2100:80::1
Jul 17 14:42:28 myhostname ntpd[1467]: Soliciting pool server 91.189.89.199
Jul 17 14:42:29 myhostname ntpd[1467]: Soliciting pool server 91.189.94.4
Jul 17 14:48:08 myhostname ntpd[1467]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
Jul 17 14:52:16 myhostname ntpd[1467]: 91.189.89.199 local addr 192.168.1.2 -> <null>
Jul 17 14:52:20 myhostname ntpd[1467]: 91.189.94.4 local addr 192.168.1.2 -> <null>
Jul 17 14:52:34 myhostname ntpd[1467]: 5.135.59.152 local addr 192.168.1.2 -> <null>
Jul 17 14:52:40 myhostname ntpd[1467]: 62.48.148.210 local addr 192.168.1.2 -> <null>
你能帮我解决这个问题吗?
答案1
ntpdc
使用模式 7 请求并ntpq
使用模式 6 请求。模式 7 请求通常用作 DDoS,因此较新的默认配置会阻止模式 7 请求。您可以从 获得所需的所有信息ntpq -p
。没有必要使用ntpdc
,但不要相信我的话:
ntpdc 已弃用 - 请立即使用 ntpq,因为它使用更合理的界面,并且可以提供 ntpdc 曾经提供的所有信息。
答案2
要启用模式 7,请在 ntp 配置文件中使用以下选项
# enable mode 7 to support ntpdc
enable mode7