NTP(NetworkTimeProtocol)网路时间合同,工作在UDP的123端口上。是拿来使计算机时间同步化的一种合同,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校准(局域网上与标准间差大于1微秒,互联网上几十纳秒),且可介由加密确认的方法来避免狠毒的合同功击。

linux的时间同步_同步时间服务器 linux_linux 多线程 同步

NTP服务器

NTP服务器提供确切时间,首先要有确切的时间来源,这一时间应当是国际标准时间UTC。NTP获得UTC的时间来源可以是原子钟、天文台、卫星,也可以从Internet上获取。这样就有了确切而可靠的时间源。时间按NTP服务器的等级传播。根据离外部UTC源的远近将所有服务器划入不同的Stratum(层)中。Stratum-1在顶楼,有外部UTC接入,而Stratum-2则从Stratum-1获取时间,Stratum-3从Stratum-2获取时间,以这种推linux makefile,但Stratum层的总量限制在15以内。所有这种服务器在逻辑上产生阶梯式的构架互相联接,而Stratum-1的时间服务器是整个的基础。

计算机主机通常同多个时间服务器联接,借助统计学的算法过滤来自不同服务器的时间,以选择最佳的路径和来源来校准主机时间。虽然主机在长时间未能与某一时间服务器相联系的情况下,NTP服务仍然有效运转。为避免对时间服务器的恶意破坏,NTP使用了辨识(Authentication)机制,检测来对时的信息是否是真正来自所声称的服务器并检测资料的返回路径,以提供对抗干扰的保护机制。

NTP校时形式

时间服务器可以借助以下三种形式与其他服务器对时:broadcast/multicast,client/server和Symmetric。

broadcast/multicast:方法主要适用于局域网的环境,时间服务器周期性的以广播的形式,将时间信息传送给其他网络中的时间服务器,其时间仅会有少许的延后,并且配置十分的简单。并且此方法的精确度并不高,对时间精确度要求不是很高的情况下可以采用。

linux 多线程 同步_同步时间服务器 linux_linux的时间同步

Symmetric:的形式得一台服务器可以从远端时间服务器获取时钟同步时间服务器 linux,假如须要也可提供时间信息给远端的时间服务器。此一方法适用于配置冗余的时间服务器,可以提供更高的精确度给主机。

client/server:形式与symmetric方法比较相像,只是不提供给其他时间服务器时间信息,此方法适用于一台时间服务器接收下层时间服务器的时间信息,并提供时间信息给上层的用户。

上述三种形式,时间信息的传输都使用UDP合同。时间服务器借助一个过滤演算法,及原本八个校时资料估算出时间参考值,判定后续校时包的精确性,一个相对较高的离散程度同步时间服务器 linux,表示一个对时资料的可效度比较低。仅从一个时间服务器获得校时信息,不能校准通信过程所导致的时间误差,而同时与许多时间服务器通讯校时,就可借助过滤算法找出相对较可靠的时间来源,之后采用它的时间来校时

NTP服务器配置

同步时间服务器 linux_linux的时间同步_linux 多线程 同步

NTP在Linux主机上默认通常都是安装过的linuxvi,只是服务没有启用。假如没有安装可直接使用yuminstallntp即可。

NTP的主配置文件,以下是NTP服务器可选的指令:

# 允许172.16.*.*的IP使用该时间服务器;
restrict 172.16.0.0 mask 255.255.0.0 nomodify
 
#允许任何人来同步;
restrict default nomodify notrap
 
# 屏蔽其他IP过来更新时间;
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust 
#ignore:关闭所有的NTP联机服务;
#nomodify:表示Client端不能更改Server端的时间参数;不过Client端仍然可以透过Server端来进行网络校时;
#notrust:该Client除非通过认证否则该Client来源将被视为不信任网域;
#noquery:不提供Client端的时间查询;
#notrap:允许任何人来查询;
 
# 同步的上层服务器(210.72.145.44国家时间服务器),NTP服务器默认也有同步的时间服务器;
server 210.72.145.44
 
# 同步本地时间;
server 127.127.1.0 prefer
 
# 本地服务器的stratum大小不能超过16;
fudge 127.127.1.0 stratum 8

启动NTP服务器

同步时间服务器 linux_linux的时间同步_linux 多线程 同步

[root@localhost ~]# chkconfig ntpd on 
[root@localhost ~]# service ntpd start

查看NTP信息

[root@localhost ~]# ntpq -p

NTP服务器配置完成启动以后;NTP自身或则与其server的同步须要一个时间段这个过程可能是5-10分钟;在这个时间段内顾客端运行ntpdate时会形成noserversuitableforsynchronizationfound的错误,上图表示210.72.145.44的reach为0不可用,LOCAL的reach为17可用。

同步时间服务器 linux_linux的时间同步_linux 多线程 同步

将时间同步到硬件时钟

[root@localhost ~]# vi /etc/sysconfig/ntpd 
SYNC_HWCLOCK=yes

顾客端配置

[root@localhost ~]# ntpdate 172.16.16.1
[root@localhost ~]# crontab -e 
*/1 * * * * ntpdate 172.16.16.1

本文原创地址://lrxjmw.cn/nxsfwqfwqtgz.html编辑:刘遄,审核员:暂无