时间服务器-NTP

本文主要从NTP通信协议、NTP服务器的阶层概念、NTP服务器的安装与设定、Client的安装和配置、NTP的启动与观察等几个方面详细介绍了NTP服务器。

上篇文章回顾:

初探Firewalld

计算机内部所记录的的时钟都记载于BIOS(CMOS)内的,但如果计算机上面的CMOS电池没电了,或者是某些特殊因素导致BIOS数据被清除,此时计算机的时间就会不准。在实际生活中,我们可以通过电视台,广播台,电话来调整我们的手表,那么在网络上,就需要NTP这个服务器让我们的主机随时保持正确的时间信息。

全球有多少时区?GMT在那个时区?

全球有24个时区,因为绕地球一周360度,这360度分为24个时区,当然一个时区就是15度了,又由于是以格林尼治时间(Greenwich Mean Time,GMT时间)为标准时间,尽管其后采用北京时间为标准时间,但linux并没有反映这一变化,所以在linux中默认定义时区时看不到北京时间。又因为我国在格林尼治的东方,因此北京时间(local time)会比GMT时间快8小时(GMT +8)

1

NTP通信协议

Network Time Protocol,如何在server与client同步他们的时间呢?

1)首先,主机当然要启动这个daemon

2)之后client 会向NTP server 校对时间的message

3)然后 NTP Server 会送出目前的标准时间给 Client

4)Client 接收了来自 Server 的时间后,调整自己的时间,达成了网络校时

ntp 这个 daemon 是以 port 123 为连接的端口(使用 UDP 封包),所以我们要利用 Time server 来进行时间的同步更新时,就得要使用 NTP 软件提供的 ntpdate 来进行 port 123 的连接。

2

NTP服务器的阶层概念

由于 NTP 时间服务器采用类似阶层架构 (stratum) 来处理时间的同步化, 所以他使用的是类似一般 server/client 的主从架构。网络社会上面有提供一些主要与次要的时间服务器, 这些均属于第一阶及第二阶的时间服务器 (stratum-1, stratum-2)

3

NTP服务器的安装与设定

3.1 查看系统是否已经安装NTP服务组件

3.2 yum安装

3.3 配置文件

配置文件

配置文件默认内容

修改配置

3.4 restrict安全相关参数

ignore:关闭所有的 NTP 联机服务

nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时

notrust:客户端除非通过认证,否则该客户端来源将被视为不信任子网

noquery:不提供客户端的时间查询

4

Client的安装和配置

客户端的安装同服务器,如上。

4.1 配置文件

5

服务器端启动

在服务器端启动NTP服务,命令如下:

添加开启启动:

6

NTP的启动与观察

6.1 查看启动的端口

这样就表示我们的 NTP 服务器已经启动了,不过要与上层 NTP 服务器联机则还需要一些时间, 通常启动 NTP 后约在 15 分钟内才会和上层 NTP 服务器顺利连接上。 那要如何确认我们的 NTP 服务器有顺利的更新自己的时间呢?你可以使用底下几个指令来查阅喔 (请自行等待数分钟后再以下列指令查阅):

6.2 查看NTP服务器上层联机

这个指令可以列出我们的 NTP 服务器有跟上层联机否。由上述的输出结果可以知道,时间有校正约 258 * 10^(-3) 秒,且每隔 512秒会主动去更新时间喔!

6.3 列出目前我们的NTP与相关的上层NTP的状态

各个参数的含义:

事实上这个输出的结果告诉我们,时间真的很准了啦!因为差异都在 0.001 秒以内, 可以符合我们的一般使用了。另外,你也可以检查一下你的 BIOS 时间与 Linux 系统时间的差异, 就是 /var/lib/ntp/drift 这个档案的内容,就能了解到咱们的 Linux 系统时间与 BIOS 硬件时钟到底差多久?单位为 10^(-6) 秒啦!

7

注意

要让你的 NTP Server/Client 真的能运作,在上述的动作中得注意:

上述的 ntpstat 以及 ntpq -p 的输出结果中,你的 NTP 服务器真的要能够连结上层 NTP 才行! 否则你的客户端将无法对你的 NTP 服务器进行同步更新的!重要重要!

你的 NTP 服务器时间不可与上层差异太多。

服务器防火墙在 UDP port 123 有没有开啊?要特别注意的呢!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190115G0VAO900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券