Build NTP Server

今天闲来无事搭建ntp服务器。原理暂不在这篇说明,请参看ntp协议原理。html

os  centos6.4
shell

install    yum install ntpcentos

下面该修改/etc/ntp.conf文件,其余参数请参看man ntp.conf服务器

先大体介绍一下相关参数网络

ntp restrict 来管理权限控制
restrict  IP  mask  netmask  parameter
parameter 选项 
ignore   拒绝全部类型的NTP联机
nomodify  客户端不能更改NTP服务器的时间参数,这表示客户端不能使用ntpc和ntpq 这两个程序来修改服务器。但客户端仍可经过这台主机来进行网络较时。
noquery   客户端不能使用ntpq、ntpc 等指令来查询时间服务器,等于不提供ntp的网络较时
notrap    不提供trap 这个远程事件登陆的功能
notrust   拒绝没有认证的客户端
利用server设置上层NTP服务器
server  IP  [perfer]   #prefer表示优先使用主机
以driftfile 记录时间的差别
driftfile   目录与文件

driftfile  后面接的文件须要使用完整路径的文件名
该文件不能是连接文件
该文件须要设置成ntpd这个Daemon能够写入的权限
该文件所记录的数值单位为百万分之一秒ppm
keys   [key_file]
除了以restrice来限制客户端的联机以外,也能够经过密钥系统来给客户端认证


按照以上的东东写了一个server_template测试

#restrict
restrict  default  nomodify  notrap noquery
restrict  server1
restrict  server2
restrict  server3
restrict  127.0.0.1  
restrict  -6  ::1 
restrict  10.17.90.0 mask 255.255.255.0   nomodify
restrict  10.17.90.1

#server  source
server server1 prefer
server server2 
server server3


restrict 1.cn.pool.ntp.org 
restrict ntp.sjtu.edu.cn  
restrict time.nist.gov 
restrict ntp.nasa.gov 
restrict 133.100.11.8 

server 133.100.11.8  prefer
server 1.cn.pool.ntp.org
server ntp.sjtu.edu.cn 
server time.nist.gov 
server ntp.nasa.gov 

# 
server 127.127.1.0  # local clock
fudge 127.127.1.0  stratum 8

# driftfile info
driftfile  /var/lib/ntp/drift
broadcastdelay  0.008

#about keys
keys  /etc/ntp/keys

/etc/init.d/ntpd restartspa

client_template
.net

restrict default kod nomodify notrap noquery nopeer
restrict 127.0.0.1
restrict 10.17.90.0 mask 255.255.255.255 nomodify notrap 
restrict 10.17.90.1
server 10.17.90.1 prefer
driftfile /var/lib/ntp/drift
logfile  /var/log/ntp.log

/etc/init.d/ntpd restartrest


若是想让BIOS也同步一下的话,须要添加参数code

echo "SYNC_HWCLOCK=yes" >> /etc/sysconfig/ntpd


不建议客户端直接ntpdate IP && hwclock -w 放在crontab更新,请参看ntpd与ntpdate的区别


我服务器时间同步的首次更新过程是

  1. /etc/init.d/ntpd stop

  2. ntpdate IP  && hwclock -w

  3. /etc/init.d/ntpd restart


查看ntp同步的服务器状况请参看ntpq -p  里面的参数

      remote: 它指的就是本地机器所链接的远程NTP服务器
      refid: 它指的是给远程服务器(e.g. 193.60.199.75)提供时间同步的服务器
      st: 远程服务器的层级别(stratum). 因为NTP是层型结构,有顶端的服务器,多层的Relay Server再到客户端. 因此服           务器从高到低级别能够设定为1-16. 为了减缓负荷和网络堵塞,原则上应该避免直接链接到级别为1的服务器的.
      when: 我我的把它理解为一个计时器用来告诉咱们还有多久本地机器就须要和远程服务器进行一次时间同步
       poll: 本地机和远程服务器多少时间进行一次同步(单位为秒). 在一开始运行NTP的时候这个poll值会比较小,那样和              服务器同步的频率也就增长了,能够尽快调整到正确的时间范围.以后poll值会逐渐增大,同步的频率也就会相应             减少
      reach: 这是一个八进制值,用来测试可否和服务器链接.每成功链接一次它的值就会增长
      delay: 从本地机发送同步要求到服务器的round trip time
      offset: 这是个最关键的值, 它告诉了咱们本地机和服务器之间的时间差异. offset越接近于0,咱们就和服务器的时间              越接近
     jitter: 这是一个用来作统计的值. 它统计了在特定个连续的链接数里offset的分布状况. 简单地说这个数值的绝对值              越小咱们和服务器的时间就越精确


ntpstat  客户端或服务端同步服务器状态

[root@ntp]# ntpstat 
synchronised to NTP server (10.17.90.1) at stratum 4 
   time correct to within 72 ms
   polling server every 256 s

其余参数请参看man

NTP 服务器名称

time.buptnet.edu.cn	IPv4 + IPv6	北京邮电大学NTP一级服务器
time.join.uni-muenster.de	IPv4 + IPv6	
time6.ipv6.uni-muenster.de	IPv6	
ntp6.space.net	IPv4 + IPv6	
ntp.ipv6.uni-leipzig.de	IPv4 + IPv6	
ntp.rhrk.uni-kl.de	IPv4 + IPv6	
ntp6.remco.org	IPv6	
chime3.ipv6.surfnet.nl
相关文章
相关标签/搜索