NTP(Network Time Protocol) 服务器:时间服务器

NTP(Network Time Protocol) 服务器:时间服务器
GMT(Greenwich Mean Time,GMT 时间):格林威治标准时间
夏季节约时间(或称日光节约时间):daylight savings(DST)
UTC(Coordinated Universal Time ) :协和标准时间
最标准时间是由原子钟计算出来的,根据原子震荡周期
UTC与GMT时间由于计时方式不同,相差有16分钟

软件时钟:由Linux操作系统根据1970/01/01开始计算的总秒数;
硬件时钟:主机硬件系统上面的时钟,例如 BIOS记录的时间
DTSS(Digital Time Synchronization Protocol)数字时间同步协议

NTP是以port 123为连接的端口(使用UDP封包),使用NTP软件提供的ntpdate来进行port 123 的联机

NTP服务器的阶层(stratum)概念,类似于主从DNS
NTP服务器安装与设定:yum 或rpm安装ntp即可
tzdata:软件名称为[ Time Zone date]的缩写,提供各时区对应的显示格式
/etc/ntp/conf :就是NTP服务器的主要配置文件,也是唯一的一个;
/usr/share/zoneinfo/ :由tzdata所提供,为各时区的时间格式对应档
/etc/sysconfig/clock :设定时区与是否使用UTC时间钟的配置文件;每次开机后Linux会自动的读取这个档案来设定自己系统所默认要显示的时间,与/usr/share/zoneinfo/下的档案有关
/etc/localtime :本地端的时间配置文件

在常用于时间服务器与修改时间的指令方面,主要有底下几个:
/bin/date :用于Linux时间(软件时钟)的修改与显示的指令;
/sbin/hwclock :用于BIOS时钟(硬件时钟)的修改与显示的指令,只有root才能执行,将修改后的时间写入到BIOS中;hwclock -w 将BIOS时间与System当前时间同步
/usr/sbin/ntpd :主要提供NTP服务的程序,配置文件为 /etc/ntp.conf
/usr/sbin/ntpdate :用于客户端的时间校正

主要配置文件ntp.conf的处理:ntp.conf内的主要参数如下
在ntp.conf档案内可利用restrict来管理权限控制:
1、 restrict [你的IP] mask [netmask_IP] [parameter]
其中 parameter的参数主要有:
ignore :拒绝所有类型的NTP联机;
nomodify :客户端不能使用ntpc与ntpq这两支程序来修改服务器的时间参数,但仍可透过这不主机来进行网络校时;
noquery :客户端不能够使用ntpq、ntpc等指令来查询时间服务器,等于不提供NTP的网络校时;
notrap :不提供trap这个远程事件登录(remote event logging)的功能
notrust :拒绝没有认证的客户端
如果parameter的地方没有加上任何参数,表示[该IP或网段不受任何限制]
如:restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

2、上层NTP服务器的设定方式:
server [IP or hostname] [prefer] ; prefer表示[优先使用]的服务器,如 iburst
原先的 0|1|2 server项目需要批注(#)掉
如:server 0.centos.pool.ntp.org iburst

3、以driftfile记录时间差异(不需要改动):
driftfile [可以被ntpd写入的目录与档案]
driftfile后面接的档案会被ntpd自动更新,如/var/lib/ntp/drift
ntpd的owner是ntp,这部分可以查阅 /etc/sysconfig/ntpd

4、keys [key_file](不需要动):透过密钥系统来给客户端认证,参考 ntp-keygen 指令
设置好ntp.conf后启动ntpd服务,通常需要15分钟后才会和上层NTP服务器顺利连接上
,透过下列指令查询更新情况: ntpstat 指令、ntpq -p
防火墙设定中ntp服务的端口port 123要开放

客户端的时间更新方式:
1、Linux手动校时:date 、hwclock
date MMDDhhmmYYYY ,例如:date 072816332011 ,修改为这个时间
选项与参数:
MM:月份
DD:日期
hh:小时
mm:分钟
YYYY:公元年

hwclock [-rw]
选项与参数:
-r:亦即read,读出目前BIOS内的时间参数;
-w:亦即write,将目前的Linux系统时间写入BIOS当中
例如:将当前时间写入到BIOS中, hwclock -w; 软时间与硬时间同步
系统每次启动的时候,会重新由BIOS将时间读出来,BIOS才是重要的时间依据

NTP服务器与上层时间服务器进行时间同步,故预设NTP服务器不可以使用ntpdate,即ntpdate与ntpd不能同时启用
指令: ntpdate [-dv] [NTP IP/hostname]
选项与参数:
-d :进入除错模式(debug),可以显示出更多的有效信息
-v:有较多信息的显示

定时同步时间的计划任务:在/etc/crontab中加入一行
10 5 * root (/usr/sbin/ntpdate 上层时间服务器名字 && /sbin/hwclock -w)&> /dev/null
NTP服务器之间的时间误差不可超过1000秒,否则NTP服务会自动关闭
ntptrace 用来追踪上层time server 的连接时间与目前时间
在客户端直接使用:ntpdate time.server.ip && hwclock -w 即可进行网络时间校对

猜你喜欢

转载自blog.51cto.com/3134965/2132366