在NTP服务器配置过程中,有时发现客户端明明已经启动ntpd进程,但为什么ntpd进程在运行几分钟后,客户端时间没有和HJ210时钟服务器同步,ntpd进程还僵死了?
NTPD服务自身有多种保护机制,其中一种是客户端和HJ210时间同步服务器偏差超限保护。当客户端和HJ210时钟服务器偏差在1000秒以内,客户端可以采用缓慢调或者启动ntp服务和HJ210时钟服务器同步;当偏差超过1000秒,客户端开始会假同步,此时客户端只是检查客户端和HJ210时钟服务器的偏差,实际上并不会同步。当经过5*poll个时间后,客户端发现偏差超限,将会使ntpd进程僵死,以保护自身时间不被修改。
所以在配置ntp的时候,要先用命令求出客户端和HJ210时钟服务器的偏差。根据偏差结果看采用何种配置和HJ210时钟服务器同步。
二、客户端常见求偏差的命令
2.1ntpdate命令求偏差
命令格式:ntpdate–d xxx.xxxx.xxx.xxx
说明:最后一行显示的offset值335.809185 sec为系统与NTP服务器的时间偏差值。即本机时间+offset=服务器时间,此表示客户端时间慢于HJ210时钟服务器。
此命令在执行时注意-d参数,如果没有-d参数会使客户端和HJ210时钟服务器直接同步,请操作时注意。
2.2sntp命令求偏差
命令格式:sntpxxx.xxxx.xxx.xxx
此偏差为快与服务器28618.307136秒。
实际上此命令是调用sntp服务和HJ210时钟服务器求取的偏差,ntpdate命令调用的ntp的算法,实际上ntpdate是发送4次数据查询,然后调用ntp的算法求出的偏差值,此值比ntpq–p参数显示的offset值更准确。
2.3clockdiff命令求偏差
[root@localhost ~]# clockdiff -o 192.168.5.21.
host=192.168.5.21 rtt=750(187)ms/0ms delta=-282069ms/-282069ms Fri Jan 15 10:32:58 2016
此偏差为快与服务器28618.307136秒,
此命令是调用ip报文的首部和ICMP报文的首部的时间戳数据,来测算目的主机和本地主机的系统时间差。此命令有时不生效,因路由忽略ICMP或IP时间戳。
此命令有两个参数:
-o:使用IP时间戳选项来测量系统时间差。时间戳只用3个。
-o1:使用IP时间戳选项来测量系统时间差。用4个时间戳。如果-o和-o1都没有设置,那么就是用ICMP时间戳来测试系统时间差。
2.4window设备求偏差
通过w32tm /stripchart /computer:10.48.3.182来显示客户端和HJ210时钟服务器的偏差值。O后面的是现实的偏差值。
命令发展
一般来说NTP服务器是系统的基础服务器,一般客户端在出厂时已经预装。一般来说建议优先使用ntpdate命令求偏差,如何ntpdate命令没有,可以使用sntp命令。不过一些系统将这两个命令都裁减,比如suse系统。rhel6以上版本使用chrony服务代替ntpd服务,故NTP的命令也就没有了。
扫一扫咨询微信客服