NTP时间服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NTP时间服务器相关的知识,希望对你有一定的参考价值。
1 NTP简介
NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议。它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms,在互联网上绝大多数的地方其精度可以达到1-50ms。
NTP服务器就是利用NTP协议提供时间同步服务的。
2 NTP服务器安装
查看是否安装ntp服务
[[email protected] ~]# rpm -qa ntp
ntp-4.2.6p5-12.el6.centos.2.x86_64
如果没有就安装
yum install ntp -y
3 配置NTP服务
[[email protected] ~]# vim /etc/ntp.conf
# restrict default kod nomodify notrap nopeer noquery
restrict default nomodify
# nomodify客户端可以同步
# 将默认时间同步源注释改用可用源
# server 0.centos.pool.ntp.org iburst
# server 1.centos.pool.ntp.org iburst
# server 2.centos.pool.ntp.org iburst
# server 3.centos.pool.ntp.org iburst
server ntp1.aliyun.com
server time.nist.gov
#没有同步服务器时配
server 127.127.1.0
fudge 127.127.1.0 stratum 8
4 启动NTP服务器
如果计划任务有时间同步,先注释,两种用法会冲突。
[[email protected] ~]# crontab -e
#*/10 * * * * /usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1;/sbin/hwclock -w
启动ntpd服务,并设置开机自启动
[[email protected] ~]# service ntpd status
ntpd 已停
[[email protected] ~]# service ntpd start
正在启动 ntpd: [确定]
[[email protected] ~]# service ntpd status
ntpd (pid 31990) 正在运行...
[[email protected] ~]# chkconfig --list|grep ntpd
ntpd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
ntpdate 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
[[email protected] ~]# chkconfig ntpd on
[[email protected] ~]# chkconfig --list|grep ntpd
ntpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
ntpdate 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
测试
[[email protected] ~]# ntpq -p
remote refid st t when poll reach
delay offset jitter
==============================================================================
*ntp1.aliyun.com 10.137.38.86 2 u 22 64 1 525.885 -42.367 0.000
[[email protected] ~]# ntpstat
synchronised to NTP server (110.75.186.247) at stratum 3
time correct to within 4257 ms
polling server every 64 s
[[email protected] ~]# ntpdate 172.168.1.101
7 Dec 18:43:07 ntpdate[26950]: the NTP socket is in use, exiting
5 客户机时间同步
客户机要等几分钟再与新启动的ntp服务器进行时间同步,否则会提示no server suitable for synchronization found错误。
[[email protected] ~]# ntpdate 172.168.1.101
7 Dec 18:40:16 ntpdate[1453]: step time server 172.168.1.101 offset 40.880807 sec
将命令放入计划任务。
[[email protected] ~]# crontab -l
5 * * * * /usr/sbin/ntpdate 172.168.1.101 > /dev/null 2>&1;/sbin/hwclock -w
[[email protected] ~]# service crond status
crond (pid 2940) 正在运行...
6 报错
解决ntp的错误 no server suitable for synchronization found
当用 ntpdate 来查询时报错:
"no server suitable for synchronization found "
错误的原因有以下2个:
6.1 Server dropped: Strata too high
在ntp客户端运行ntpdate serverIP,呈现no server suitable for synchronization found的错误。
在ntp客户端运行ntpdate –d serverIP查看,发现有“Server dropped: strata too high”的错误,并且显示“stratum 16”。而正常景象下stratum这个值得局限是“0~15”。
这是因为NTP server还没有和其自身或者它的server同步上。
以下的定义是让NTP Server和其自身对峙同步,若是在/etc/ntp.conf中定义的server都不成用时,将应用local时候作为ntp办事供给给ntp客户端。
server 127.127.1.0
fudge 127.127.1.0 stratum 8
原因分析:
在ntp server上从头启动ntp服务后,ntp server自身或者与其server的同步的须要一个时候段,这个过程可能是5分钟,在这个时候之内涵客户端运行ntpdate号令时会产生no server suitable for synchronization found的错误。
那么如何知道何时ntp server完成了和自身同步的过程呢?
在ntp server上应用命令:
watch ntpq -p
呈现画面:
Every 2.0s: ntpq -p Wed Oct 24 18:06:04 2018
remote refid st t when poll reach delay offset jitter
==============================================================================
*120.25.115.20 10.137.53.7 2 u 8 64 377 22.675 20.870 3.324
time-a-g.nist.g .INIT. 16 u - 1024 0 0.000 0.000 0.000
重视LOCAL的这个就是与自身同步的ntp server。
重视reach这个值,在启动ntp server办过后,这个值就从0开端络续增长,当增长到17的时辰,从0到17是5次的变革,每一次是poll的值的秒数,是64秒*5=320秒的时候。
若是之后从ntp客户端同步ntp server还失败的话,用ntpdate –d来查询具体错误信息,再做断定。
6.2 Server dropped: no data
从客户端履行netdate –d时有错误信息如下:
28 Jul 17:42:24 ntpdate[14148]: no server suitable for synchronization found
呈现这个错误的原因可能有2个:
- 检查ntp的版本,若是你应用的是ntp4.2(包含4.2)之后的版本,在restrict的定义中应用了notrust的话,会导致以上错误。
- 检查ntp server的防火墙。可能是server的防火墙樊篱了upd 123端口。
service iptables stop
关掉iptables办过后再测验测验从ntp客户端的同步,若是成功,证实是防火墙的题目,须要更改iptables的设置。
以上是关于NTP时间服务器的主要内容,如果未能解决你的问题,请参考以下文章