NTP時間服務器

1.1 NTP簡介
NTP(Network Time Protocol,網絡時間協議)是用來使網絡中的各個計算機時間同步的一種協議。它的用途是把計算機的時鐘同步到世界協調時UTC,其精度在局域網內可達0.1ms,在互聯網上絕大多數的地方其精度可以達到1-50ms。
NTP服務器就是利用NTP協議提供時間同步服務的。
1.2 環境準備
主機名 服務器/客戶端 外網IP 內網IP
ntp-s S 10.0.0.77 172.16.1.77
ntp-c C 10.0.0.78 172.16.1.78

系統環境:
[root@ntp-s ~]# cat /etc/redhat-release
CentOS release 6.7 (Final)
[root@ntp-s ~]# uname -r
2.6.32-573.el6.x86_64
[root@ntp-s ~]# getenforce
Disabled
[root@ntp-s ~]# /etc/init.d/iptables status
iptables:未運行防火牆。
1.3 安裝NTP服務
安裝ntp服務軟件,CentOS6.7默認安裝ntp服務。
[root@ntp-s ~]# rpm -qa ntp
ntp-4.2.6p5-5.el6.centos.x86_64
如果沒有安裝,可以通過如下命令安裝:
yum install -y ntp

1.4 配置NTP
ntp服務,默認配置文件在/etc/ntp.conf
操作前備份:
[root@ntp-s ~]# cp /etc/ntp.conf{,.ori}
[root@ntp-s ~]# ls -l /etc/ntp.conf{,.ori}
-rw-r--r--. 1 root root 1778 4月 28 2015 /etc/ntp.conf
-rw-r--r-- 1 root root 1778 7月 20 20:21 /etc/ntp.conf.ori

配置完成如下:

[root@ntp-s ~]# grep -vE "^$|#" /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict 127.0.0.1
restrict -6 ::1
restrict default nomodify #<==允許那些機器可以同步,全部
server ntp1.aliyun.com #<==同步的時間服務器
server time.nist.gov
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys

1.5 NTP配置重要參數詳解
driftfile /var/lib/ntp/drift
記錄上次的NTP server與上層NTP server聯接所花費的時間。
server 210.72.145.44 prefer
prefer表示優先。
restrict default nomodify
允許所有主機進行時間同步。
1.6 啓動NTP服務
注:如果有ntpdate定時任務,需要關閉;兩者會有衝突。
[root@ntp-s ~]# /etc/init.d/ntpd start
正在啓動 ntpd: [確定]
[root@ntp-s ~]# chkconfig ntpd on
[root@ntp-s ~]# chkconfig --list ntpd
ntpd 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉

擴展:
ntpq -p #查看本機和上層服務器的時間同步結果
ntptrace #可以用來追蹤某臺時間服務器的時間對應關係
ntpdate IP #客戶端要和NTP server進行時鐘同步。
/var/log/ntp/ntp.log #查看ntp日誌

1.7 客戶端同步
客戶機要等幾分鐘再與新啓動的ntp服務器進行時間同步,否則會提示no server suitable for synchronization found錯誤。
[root@ntp-c ~]# date -s 20111111 #<==修改當前時間,便於查看效果
2011年 11月 11日 星期五 00:00:00 CST
[root@ntp-c ~]# ntpdate 172.16.1.77
20 Jul 20:36:22 ntpdate[18850]: step time server 172.16.1.77 offset 148077344.266571 sec
[root@ntp-c ~]# date
2016年 07月 20日 星期三 20:36:23 CST
可以將同步命令放入定任務,每5分鐘執行一次。

1.8 故障:ntp時間服務器,自動斷開!
原因:
ntp本地時間與上級ntp時間差超過1000s,那麼ntp進程就會退出並在系統日誌文件中記錄。

解決方法
在配置文件/etc/ntp.conf的第一行加上這麼一句
tinker panic 0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章