由于公司内网没有个时间服务器,同时防火墙的123端口也未开放,不想麻烦人家网络工程师只能自己动手搭建个时间服务器。本己为就一个NTP是多简单啊,没想到还遇到一个纠结的问题,下面是整个过程。
现在发行版都己默认安装ntp server
ntp服务器配置
只需修改/etc/ntp.conf配置文件,声明哪些客户端能进行同步,以及同步相当安全权限# vim /etc/ntp.confrestrict 192.168.0.0 mask 255.255.0.0 nomodify //允许192.168.0.0网段同步,不可修改
上面简单增加一条语句就是个ntp服务器了,下面测试客启机是否能正常使用;
如果要配置任何主机都可以进行时间同步
将“restrict default nomodify notrap noquery”表示默认禁止所有地址同步时间,修改,查看,这行修改成下面:
restrict default nomodify notrapntp客户端
# ntpdate 192.168.70.11 4 Apr 05:15:43 ntpdate[2051]: no server suitable for synchronization found
上面提示服务器不可用,首先检查网络,防火墙
如果网络和防火墙没问题,我们启用ntpdate的debug功能,查看详细的错误# ntpdate -d 192.168.70.11 4 Apr 05:18:11 ntpdate[2053]: ntpdate 4.2.4p8@1.1612-o Fri Feb 22 11:23:28 UTC 2013 (1)Looking for host 192.168.70.11 and service ntphost found : server.neo.comtransmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)192.168.70.11: Server dropped: strata too highserver 192.168.70.11, port 123stratum 16, precision -24, leap 11, trust 000refid [192.168.70.11], delay 0.02582, dispersion 0.00000transmitted 4, in filter 4reference time: 00000000.00000000 Thu, Feb 7 2036 14:28:16.000originate timestamp: d758e59f.1fbcb350 Sat, Jun 28 2014 14:56:31.123transmit timestamp: d6e84e93.fd303b31 Fri, Apr 4 2014 5:18:11.989filter delay: 0.02640 0.02585 0.02582 0.02602 0.00000 0.00000 0.00000 0.00000 filter offset: 7378699. 7378699. 7378699. 7378699. 0.000000 0.000000 0.000000 0.000000delay 0.02582, dispersion 0.00000offset 7378699.134683 4 Apr 05:18:11 ntpdate[2053]: no server suitable for synchronization found
这里我们发现两处问题:
1)
192.168.70.11: Server dropped: strata too high
server 192.168.70.11, port 123
stratum 16, precision -24, leap 11, trust 0002)
no server suitable for synchronization found
以上两个错误因为NTP server还没有和其自身或者它的server同步上。而正常情况下stratum这个值得范围是“0~15”。以下的定义是让NTP Server和其自身保持同步,如果在/ntp.conf中定义的server都不可用时,将使用local时间作为ntp服务提供给ntp客户端。
server 127.127.1.0 //回环地址fudge 127.127.1.0 stratum 8# vim /etc/ntp.confserver 127.127.1.0fudge 127.127.1.0 stratum 8#server 0.rhel.pool.ntp.org#server 1.rhel.pool.ntp.org#server 2.rhel.pool.ntp.org
在ntp server上重新启动ntp服务后,ntp server自身或者与其server的同步的需要一个时间段,这个过程可能是5分钟,在这个时间之内在客户端运行ntpdate命令时会产生no server suitable for synchronization found的错误。
那么如何知道何时ntp server完成了和自身同步的过程呢?在ntp server上使用命令:# watch ntpq -pEvery 2.0s: ntpq -p Sat Jun 28 15:02:09 2014 remote refid st t when poll reach delay offset jitter============================================================================== LOCAL(0) .LOCL. 8 l 51 64 1 0.000 0.000 0.000
当reach由1变为17后再测试客户机是否能正常同步# watch ntpq -pEvery 2.0s: ntpq -p Sat Jun 28 15:05:07 2014 remote refid st t when poll reach delay offset jitter==============================================================================*LOCAL(0) .LOCL. 8 l 34 64 17 0.000 0.000 0.000大概5-10分钟后(reach=17),就可以在客户端测试是否能同步上了;
# ntpdate -d 192.168.70.11 4 Apr 05:26:56 ntpdate[2057]: ntpdate 4.2.4p8@1.1612-o Fri Feb 22 11:23:28 UTC 2013 (1)Looking for host 192.168.70.11 and service ntphost found : server.neo.comtransmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)receive(192.168.70.11)transmit(192.168.70.11)server 192.168.70.11, port 123stratum 9, precision -24, leap 00, trust 000refid [192.168.70.11], delay 0.02582, dispersion 0.00000transmitted 4, in filter 4reference time: d758e781.49a1617b Sat, Jun 28 2014 15:04:33.287originate timestamp: d758e7ab.8db9fc66 Sat, Jun 28 2014 15:05:15.553transmit timestamp: d6e850a0.6b3af2bc Fri, Apr 4 2014 5:26:56.418filter delay: 0.02707 0.02585 0.02582 0.02582 0.00000 0.00000 0.00000 0.00000 filter offset: 7378699. 7378699. 7378699. 7378699. 0.000000 0.000000 0.000000 0.000000delay 0.02582, dispersion 0.00000offset 7378699.134602 4 Apr 05:26:56 ntpdate[2057]: step time server 192.168.70.11 offset 7378699.134602 sec
此时,客户端正常同步。
# date 12121212Fri Dec 12 12:12:00 CST 2014# dateFri Dec 12 12:12:01 CST 2014# ntpdate 192.168.70.1128 Jun 15:36:24 ntpdate[2296]: step time server 192.168.70.11 offset -14416542.543406 sec# dateSat Jun 28 15:36:28 CST 2014