故障现象:
Centos7设置了NTP服务器,客户端使用ntpdate进行时间同步时,未同步成功,使用ntpdate [serverIP]
进行时间同步时,报错:no server suitable for synchronization found
问题分析:
出现此报错证明客户端与NTP服务器未连通,导致未联通的原因有很多,可以从如下几个方面进行排查筛选:
- 客户端和NTP服务器网络连通情况;
- NTP服务器防火墙限制123端口;
- 检查服务器NTP服务运行状态;
- 服务器本身同步时间不准确;
- 检查NTP配置文件是否正确;
具体排查过程:
- 客户端ping测试服务器IP地址,测试网络连通性。如果可以ping通,代表网络正常。
-
检查防火墙状态,CentOS防火墙主要有firewall和iptables两种,如果对安全要求不高可以先关闭防火墙测试,如果关闭防火墙能正常获取,正面防火墙有限制,需要检查防火墙的规则,放通123端口访问
service iptables stop; service firewalld stop;
-
检查NTP服务状态是否正常,是否设置开机启动。
-
检查服务器本身时间是否准确,服务器本身到指定公网时间服务器是否正常。先查看/etc/ntp.conf文件中设置的外网时间服务器地址,然后在NTP服务器上ping测试地址的连通性。
-
检查配置文件,重点检查有没有做规则限制,即:restrict 参数。一般来说,可以先关闭 NTP 的权限,然后再一个一个的启用允许登入的网段。其他字段保持不变
restrict default ignore #禁止所有ntp请求
restrict 127.0.0.1 #放行本机来源
restrict 172.16.50.0 mask 255.255.255.0 #添加172.16.50.0/24网段访问
最终故障点:
在配置文件中,restrict字段只设置了一个禁止所有ntp请求,没有设置放行的网段,添加放行网段之后,在客户端重新使用ntpdate 172.16.50.15可以正常获取到时间,问题解决。