CentOS学习之NTP服务配置详解

详解centos7下ntp服务配置



一、ntp服务是什么

1.定义

NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。

2.发展

首次记载在Internet Engineering Note之中,其精确度为数百毫秒。
稍后出现了首个时间协议的规范RFC-778,它被命名为DCNET互联网时间服务,这种服务还是借助于Internet control Message Protocol (ICMP)中的时间戳和时间戳应答消息作为NTP。
名称的首次出现是在RFC-958之中,该版本也被称为NTP v0,其目的是为ARPA网提供时间同步。已脱离ICMP,作为独立协议运行,
美国特拉华大学的David L.Mills主持了网络时间同步项目,成功的开发出了NTP协议的第1, 2, 3版。

v1:出现于1988年6月,在RFC-1059中描述了首个完整的NTP的规范和相关算法。这个版本已经采用了client/server模式以及对称操作,但是它不支持授权鉴别和NTP的控制消息。

v2:1989年9月推出了取代RFC-958和RFC-1059的NTP v2版本即RFC-1119。

v3:在1992 年3月,NTP v3版本RFC-1305问世,该版本总结和综合了NTP先前版本和DTSS,正式引入了校正原则,并改进了时钟选择和时钟滤波的算法,而且还引入了时间消息发送的广播模式,这个版本取代了NTP的先前版本。NTP v 3 发布后,一直在不断地进行改进,NTP实现的一个重要功能是对计算机操作系统的时钟调整。

v4:截止到2010年6月,最新的NTP版本是第4版(NTPv4),其标准化文档为 RFC 5905,它继承自RFC 1305所描述的NTP v3。网络时间同步技术也将向更高精度、更强的兼容性和多平台的适应性方向发展。网络时间协议NTP是用于互联网中时间同步的标准之一,它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0.lms,在Internet上绝大多数的地方其精度可以达到1- 50ms.

值得提一下的是,简单的NTP(SNTP)version4已经在RFC2030描述了。

3.主要结构

(1) 时间来源

现在的标准时间是由原子钟报时的国际标准时间UTC(Universal Time Coordinated,世界协调时),所以NTP获得UTC的时间来源可以是原子钟、天文台、卫星,也可以从Internet上获取。

(2) 传播

在NTP中,定义了时间按照服务器的等级传播,按照离外部UTC源远近将所有的服务器归入不同的Stratum(层)中,例如把通过GPS取得发送标准时间的服务器叫Stratum-1的NTP服务器,而Stratum-2则从Stratum-1获取时间,Stratum-3从Stratum-2获取时间,以此类推,但Stratum层的总数限制在15以内。所有这些服务器在逻辑上形成阶梯式的架构相互连接,而Stratum-1的时间服务器是整个系统的基础,这种阶梯式的架构示意图如下图所示:

CentOS学习之NTP服务配置详解

计算机主机一般同多个时钟服务器连接,利用统计学的算法过滤来自不同服务器的时间,以选择最佳的路径和来源以便校正主机时间。即使在主机长时间无法与某一时钟服务器联系的情况下,NTP服务依然可以有效运转


二、架构和安装

1.架构

CentOS学习之NTP服务配置详解

如上图所示,对于一些服务依赖于时间的集群(如hadoop集群),需要有一部主机作为ntp服务器,其他客户端主机从这部主机进行时间同步,另外ntp服务主机从更高一层的服务器获得时间信息。

2. 安装配置

2.1 实验环境

centos7.2 虚拟机两台

NTP服务器:172.22.10.6

NTP客户端:172.22.10.92

2.2 服务端配置

1) 确认是否已安装ntp

rpm -qa|grep ntp

[yangjie@linuxprobe ~]$ rpm -qa|grep ntp

ntpdate-4.2.6p5-28.el7.centos.x86_64

ntp-4.2.6p5-28.el7.centos.x86_64

fontpackages-filesystem-1.44-8.el7.noarch

python-ntplib-0.3.2-1.el7.noarch

本机已经安装NTP,如果未安装则使用YUM进行安装

2) 安装ntp服务

yum -y install ntp ntpdate

3) 设置防火墙,打开ntp端口

ntp_server和ntp_client均需开放123/udp端口

firewall-cmd --zone=public --add-port=123/udp --permanent
firewall-cmd --reload

4)ntp服务端节点设置

vim /etc/ntp.conf

红色为新增的地方

driftfile /var/lib/ntp/drift

restrict default nomodify notrap nopeer noquery

restrict 127.0.0.1

restrict ::1

红色为新增的地方

restrict 172.22.10.6 nomodify notrap nopeer noquery //当前节点IP地址

# 授权172.22.10.0网段上所有机器可以从这台机器上查询和时间同步

restrict 172.22.10.0 mask 255.255.255.0 nomodify notrap //集群所在网段、掩码、权限

上一篇:linq标准查询运算符


下一篇:c# – 在不使用fiddler的情况下,在GetResponse之前将HttpWebRequest视为字符串