NTP 是网络时间协议(Network Time Protocol)的简称,通过 udp 123 端口进行网络时钟同步。
Chrony是一个开源自由的网络时间协议 NTP 的客户端和服务器软件。它能让计算机保持系统时钟与时钟服务器(NTP)同步,因此让你的计算机保持精确的时间,Chrony也可以作为服务端软件为其他计算机提供时间同步服务。
Chrony由两个程序组成,分别是chronyd和chronyc。
chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。
chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作
#设置当前时区
[root@localhost ~]# timedatectl set-timezone Asia/Shanghai
[root@localhost ~]# yum install -y chrony
[root@localhost ~]# systemctl enable --now chronyd
[root@server1 ~]# cat /etc/chrony.conf
#设置时间服务器的服务端名字
pool net.aliyun.com iburst
# Allow NTP client access from local network.
#设置允许哪个客户端可以访问该服务器
#allow 192.168.0.0/16
[root@server1 ~]# vim /etc/chrony.conf
pool ntp.aliyun.com iburst
[root@localhost ~]# systemctl restart chronyd
[root@server1 ~]# chronyc sources
210 Number of sources = 2
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 203.107.6.88 2 6 7 1 -705us[ -5240s] +/- 28ms
^? ntp1.flashdance.cx 0 6 0 - +0ns[ +0ns] +/- 0ns
* 表示chronyd当前同步到的源
+ 表示可接受的信号源,与选定的信号源组合在一起
? 指示已失去连接性或其数据包未通过所有测试的源。它也显示在启动时,直到从中至少收集了3个样本为止
#需要两个服务器,一个服务端(服务端ip:192.168.1.1),一个客户端测试(客户端主机ip网段为192.168.1.0/24)
#服务端的配置
[root@localhost ~]# systemctl disable --now firewalld
[root@localhost ~]# grep allow /etc/chrony.conf
allow 192.168.1.0/24
#allow 0.0.0.0/0
[root@localhost ~]# systemctl restart chronyd
#客户端访问,先ping时间服务器
[root@localhost ~]# ping 192.168.1.1
[root@localhost ~]# grep iburst /etc/chrony.conf
server 192.168.1.1 iburst
[root@localhost ~]# systemctl restart chronyd
[root@localhost ~]# chronyc sources
1. 第二台机器从第一台机器去同步时间
[root@Fly ~]# vim /etc/chrony.conf
allow 192.168.111.0/24 --允许第二台机器的ip地址网段访问
[root@Fly ~]# systemctl restart chronyd --重启chronyd服务
[root@MPF ~]# vim /etc/chrony.conf
server 192.168.111.102 iburst -- 设置为第一台机器的ip地址从而获取时间服务
[root@MPF ~]# systemctl restart chronyd --重启chronyd服务
[root@MPF ~]# chronyc sources --查看chronyd同步源
测试:
时间获取成功!