Chrony - 在没有互联网连接的情况下同步网络中所有主机的日期和时间

Chrony - 在没有互联网连接的情况下同步网络中所有主机的日期和时间

我有两台机器,

  1. IP 192.168.0.1 的主机 A
  2. IP 192.168.0.2 的主机 B

它们连接到同一网络,我想将机器 B 的日期和时间设置为与机器 A 的日期和时间相匹配。虽然我最初可以使用互联网连接设置机器,但部署后它们将无法访问它,并且它们每天都会重新启动。

当前使用 Chrony 的方法 参考

这个配置不正确,根据一些测试结果,当NTP服务器有互联网连接时同步成功,否则同步失败。

您对有效配置它们有什么建议或建议吗?

机器 A - 配置为 NTP 服务器

sudo apt update && sudo apt upgrade
sudo apt install chrony
sudo vim /etc/chrony/chrony.conf

使用此配置来设置 NTP 服务器

confdir /etc/chrony/conf.d
pool ntp.ubuntu.com        iburst maxsources 4
pool 0.ubuntu.pool.ntp.org iburst maxsources 1
pool 1.ubuntu.pool.ntp.org iburst maxsources 1
pool 2.ubuntu.pool.ntp.org iburst maxsources 2
allow 192.168.0.0/24
sourcedir /run/chrony-dhcp
sourcedir /etc/chrony/sources.d
keyfile /etc/chrony/chrony.keys
driftfile /var/lib/chrony/chrony.drift
ntsdumpdir /var/lib/chrony
logdir /var/log/chrony
maxupdateskew 100.0
rtcsync
makestep 1 3
leapsectz right/UTC

重新启动 chrony 服务,检查其正在运行并使其能够在启动时启动

sudo systemctl restart chrony
sudo systemctl status chrony
CTRL+C
sudo systemctl enable chrony

机器 B - 配置为 Chrony 客户端

与服务器池同步日期和时间并设置 192.168.0.1

sudo apt update && sudo apt upgrade
sudo apt install chrony
sudo vim /etc/chrony/chrony.conf

使用以下配置文件

pool 192.168.0.1 iburst prefer
keyfile /etc/chrony/chrony.keys
driftfile /var/lib/chrony/chrony.drift
logdir /var/log/chrony
log measurements statistics tracking
maxupdateskew 100.0
rtcsync
makestep 1.0 3

重新启动,检查服务并在启动时启用它

sudo systemctl restart chrony
sudo systemctl status chrony
CTRL+C
sudo systemctl enable chrony

更新 如果我手动同步时间,则会出现以下错误没有合适的同步源

sudo systemctl stop chrony 
sudo chronyd -d 'server 192.168.0.1 iburst'
2023-03-15T15:54:55Z chronyd version 3.5 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 -DEBUG)
2023-03-15T15:54:55Z Initial frequency -36.773 ppm
2023-03-15T15:55:03Z No suitable source for synchronisation
2023-03-15T15:55:03Z chronyd exiting

更新2

如果我将 NTP 服务器连接到互联网,则同步成功。

答案1

您需要服务器配置文件中的指令local,以便在没有互联网时自行同步。通常,您可能会local stratum 8说它不如第 2 层或第 3 层的远程 ntp 服务器。这会阻止本地时钟优先于互联网时钟源。如果服务器有像 GPS 这样的硬件时间源,那么查看该refclock指令,看看是否也可以配置它。

相关内容