我正在尝试在 Ubuntu 机器上设置 NTP 服务器。我对这个问题很困惑。
ntpdate[5005]: no server suitable for synchronization found
执行命令时出现错误ntpdate
。
有人可以帮我解决这个问题吗?
/etc/ntp.conf:
server 0.ubuntu.pool.ntp.org
server 1.ubuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org
当我下达命令时netstat -anltp | grep "LISTEN"
tcp 0 0 127.0.0.1:53 0.0.0.0:* 监听 1816/dnsmasq tcp 0 0 0.0.0.0:22 0.0.0.0:* 监听 939/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* 监听 1013/cupsd tcp 0 0 127.0.0.1:39558 0.0.0.0:* 侦听 5529/rsession tcp 0 0 0.0.0.0:902 0.0.0.0:* 侦听 1275/vmware-authdla tcp 0 0 127.0.0.1:47304 0.0.0.0:* 监听 5822/rsession tcp6 0 0 :::80 :::* 监听 1400/apache2 tcp6 0 0 :::22 :::* 侦听 939/sshd tcp6 0 0 ::1:631 :::* 侦听 1013/cupsd
那么我该怎么做才能让它监听 123?
如果我得到输出为
PORT STATE SERVICE
123/udp open ntp
如果我输入命令nmap -p 123 -sU -P0 192.168.36.198
,则表示 UDP 已打开,对吗?那么为什么在显示监听端口的命令中没有显示?
答案1
问题出在 中给出的网络默认限制/etc/ntp.conf
。您可能必须取消注释 ntp 服务器配置文件中的以下几行:
# Clients from this (example!) subnet have unlimited access, but only if
# cryptographically authenticated.
#restrict 192.168.123.0 mask 255.255.255.0 notrust
到
# Clients from this (example!) subnet have unlimited access, but only if
# cryptographically authenticated.
restrict 192.168.123.0 mask 255.255.255.0
答案2
您可能被阻止访问Ubuntu 上的 Pool
尝试不同的 NTP 服务器池。
向您的 ISP(或网络管理员)索取本地 NTP 服务器(或集群)。
答案3
如果您想与外部时间参考同步,则不必“听”。
检查是否可以访问 0.ubuntu.pool.ntp.org(ping 和 nmap -p 123 -sU 0.ubuntu.pool.ntp.org)
答案4
我已经从上到下给出了详细的答案。您可能想跳到答案的中间部分,或者只需参考下面的屏幕截图即可一目了然地了解。
您需要按如下方式配置 ntp 服务器:
您至少应该在 /etc/ntp.conf 配置文件中设置以下参数:
server
例如,使用 nano 文本编辑器打开 /etc/ntp.conf 文件:
sudo nano /etc/ntp.conf
找到服务器参数,如果为空,请按如下方式设置:
server pool.ntp.org
但通常在 ubuntu 中已经预先编写了一些服务器,这些服务器可能是
server 0.ubuntu.pool.ntp.org
server 1.ubuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org
保存文件并重新启动 ntpd 服务:
/etc/init.d/ntpd start
您可以使用以下命令立即将系统时钟同步到 NTP 服务器:
sudo ntpdate pool.ntp.org
或者直接运行已经定义的服务器
sudo ntpdate 0.ubuntu.pool.ntp.org
或使用服务器定义的其他服务器
一般来说
sudo ntpdate <one of the servername in /etc/ntp.conf>
但此后,您可能会收到NTP socket in use
如下所示的错误:
在这种情况下只需运行
ntpdate -u pool.ntp.org
在 ntp 守护进程运行时更新
或者直接停止守护进程,更新并重新启动,如下所示:
$ sudo ntpdate pool.ntp.org
$ sudo service ntp stop
$ sudo ntpdate pool.ntp.org
$ sudo service ntp start
你会得到