我有一台服务器:192.168.0.40 和 4 个客户端:192.168.0.61-192.168.0.64。客户端是 Raspberry Pi,因此没有实时时钟。因此时间总是错误的。
我已经遵循指示这里制作 ntp.conf 文件:
服务器:
restrict default nomodify notrap noquery
restrict 127.0.0.1
# -- CLIENT NETWORK -------
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
# --- OUR TIMESERVERS -----
server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server 127.127.1.0
# --- NTP MULTICASTCLIENT ---
# --- GENERAL CONFIGURATION ---
# Undisciplined Local Clock.
fudge 127.127.1.0 stratum 9
# Drift file.
driftfile /var/lib/ntp/drift
broadcastdelay 0.008
# Keys file.
keys /etc/ntp/keys
客户:
restrict default nomodify notrap noquery
restrict 127.0.0.1
# -- CLIENT NETWORK -------
# --- OUR TIMESERVERS -----
# 192.168.1.2 is the address for my timeserver,
# use the address of your own, instead:
server 192.168.0.40 iburst
server 127.127.1.0
# --- NTP MULTICASTCLIENT ---
# --- GENERAL CONFIGURATION ---
# Undisciplined Local Clock.
fudge 127.127.1.0 stratum 12
# Drift file.
driftfile /var/lib/ntp/drift
broadcastdelay 0.008
# Keys file.
keys /etc/ntp/keys
但是,客户端上的时间仍然错误(与之前没有变化)。当我尝试专门连接到服务器时,客户端找不到它。它们 100% 位于同一子网中,并且 IP 地址正确,因为我可以毫无问题地 ssh。
ntpq -c lpeer的结果为:
localhost: timed out, nothing received
***Request timed out
编辑:
命令ntpdate -u 192.168.0.40:
12 Dec 07:45:09 ntpdate[12815]: no server suitable for synchronization found
编辑2:
客户端位于以太网子网中,服务器通过 wifi 连接。禁用 wifi 时系统仍可运行。有办法解决这个问题吗?
答案1
如果您更改网络设置,则可能需要重新启动 NTP(例如,SSH 也需要重新启动)。您可以netstat
在服务器和ntpdate
客户端上使用以下命令测试 NTP 是否已启动并正在监听
在服务器上:
$ sudo netstat -unlp | grep ntp
udp 0 0 192.168.122.1:123 0.0.0.0:* 2786/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2786/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2786/ntpd
udp6 0 0 fe80::4e72:b9ff:fe4:123 :::* 2786/ntpd
udp6 0 0 ::1:123 :::* 2786/ntpd
udp6 0 0 :::123 :::* 2786/ntpd
在客户端上:
sudo ntpdate <server-ip/hostname>