CentOS 7-ntp 卡住 .INIT

CentOS 7-ntp 卡住 .INIT

我有两个 ntp 服务器和一个客户端服务器。

NTP 服务器同步时间正常。客户端卡在 .INIT. 步骤,但手动同步有效。客户端 ping 并允许使用 NTP 服务器的策略。所有机器都采用 CentOS 7 版本。

防火墙:

# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources:
  services: dhcpv6-client ssh ntp
  ports: 443/tcp 123/tcp 123/udp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

显示ntp客户端状态:

# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 10.0.0.1    .INIT.          16 u    -   64    0    0.000    0.000   0.000
 10.0.0.2    .INIT.          16 u    -   64    0    0.000    0.000   0.000

尝试 :

# ntpdate -d -d -d -d 10.0.0.1
 9 Jan 13:38:30 ntpdate[17833]: ntpdate [email protected] Wed Apr 12 21:24:06 UTC 2017 (1)
Looking for host 10.0.0.1 and service ntp
host found : 10.0.0.1
transmit(10.0.0.1)
transmit to 10.0.0.1
receive(10.0.0.1)
offset: 0.063550, delay 0.00024
transmit(10.0.0.1)
transmit to 10.0.0.1
receive(10.0.0.1)
offset: 0.063537, delay 0.00027
transmit(10.0.0.1)
transmit to 10.0.0.1
receive(10.0.0.1)
offset: 0.063543, delay 0.00034
transmit(10.0.0.1)
transmit to 10.0.0.1
receive(10.0.0.1)
offset: 0.063526, delay 0.00023
server 10.0.0.1, port 123
stratum 3, precision -23, leap 00, trust 000
refid [10.0.0.1], delay 0.02585, dispersion 0.00000
transmitted 4, in filter 4
reference time:    ddff34f7.aeaac96d  Tue, Jan  9 2018 13:32:55.682
originate timestamp: ddff364c.fb3327e5  Tue, Jan  9 2018 13:38:36.981
transmit timestamp:  ddff364c.eae5727e  Tue, Jan  9 2018 13:38:36.917
filter delay:  0.02586  0.02589  0.02596  0.02585
         0.00000  0.00000  0.00000  0.00000
filter offset: 0.063550 0.063537 0.063543 0.063526
         0.000000 0.000000 0.000000 0.000000
delay 0.02585, dispersion 0.00000
offset 0.063526

 9 Jan 13:38:36 ntpdate[17833]: adjust time server 10.0.0.1 offset 0.063526 sec

没关系

第二次尝试:

# ntpdate -u 10.0.0.1
 9 Jan 13:39:38 ntpdate[17836]: adjust time server 10.0.0.1 offset 0.063340 sec

没关系

我发现一个涉及 IPv4/IPv6 问题的 RHEL 主题: https://access.redhat.com/solutions/462573

我向 ntpd 文件添加“-4”参数:

# cat /etc/sysconfig/ntpd
# Command line options for ntpd
OPTIONS="-g -4"

我重试了完整测试,结果仍然相同。

我检查状态服务:

# systemctl status ntpd
? ntpd.service - Network Time Service
   Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)
   Active: active (running) since mar. 2018-01-09 13:40:21 CET; 3s ago
  Process: 17863 ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS (code=exited, status=0/SUCCESS)
 Main PID: 17864 (ntpd)
   CGroup: /system.slice/ntpd.service
           +-17864 /usr/sbin/ntpd -u ntp:ntp -g -4

janv. 09 13:40:21 client_server systemd[1]: Starting Network Time Service...
janv. 09 13:40:21 client_server systemd[1]: Started Network Time Service.
janv. 09 13:40:21 client_server ntpd[17864]: proto: precision = 0.130 usec
janv. 09 13:40:21 client_server ntpd[17864]: 0.0.0.0 c01d 0d kern kernel time sync enabled

我看不到任何问题...但是使用 ntpq -p,NTP 卡在 .INIT. 步骤上。

有人有什么想法吗?

答案1

您可以将iburstNTP 服务器的服务器行附加到服务器行以加快初始同步。(NTP 数据包的突发在公共 NTP 资源上被认为是不礼貌的,但单次突发的负载非常小。)

另外,尝试在服务器上进行数据包捕获以确认客户端正在连接。Wireshark 有一个解析器可以从数据包中获取时间戳。

答案2

查看您的接口是否位于公共区域:firewall-cmd --get-active-zones 如果不,请将其放在那里,如果是,请尝试在您的客户端的 ntp.conf 中添加:

interface listen 127.0.0.1
interface listen 10.0.0.3 #Put your clients interface address here

您也可以从公共区域中删除端口 123/tcp 123/udp,因为在该区域中启用 ntp 服务就足够了。如果您在 ntp.conf 中引用服务器的 IPv4 地址,则 -4 选项也是多余的

相关内容