ntp 服务器在启动时无法正常工作

ntp 服务器在启动时无法正常工作

/etc/ntp.conf我使用 Ubuntu 服务器 16.04,并使用文件中的以下配置设置了本地 NTP 服务器:

# this is the IP or name of the local networks NTP ser$
# should be commented out on the server
# server 192.168.1.202 iburst         # this line is uncommented for clients

# this enables checking the local clock. Do not change$
server 127.127.1.0
fudge 127.127.1.0 stratum 10

# this lines are required to run the ntpq -p command t$
# function of the system

restrict 127.0.0.1
restrict ::1

问题是当我重新启动系统时,时间不同步且不正确,甚至是错误的!timedate status服务器中命令的输出:

Local time: Thu 2018-02-22 19:03:50 IRST
  Universal time: Thu 2018-02-22 15:33:50 UTC
        RTC time: Thu 2018-02-22 15:33:50
       Time zone: Asia/Tehran (IRST, +0330)
 Network time on: no
NTP synchronized: yes
 RTC in local TZ: no

这里的 UTC 时间是正确的本地时间。在客户端中:

Local time: Mon 2018-02-19 02:07:18 IRST
  Universal time: Sun 2018-02-18 22:37:18 UTC
        RTC time: Sun 2018-02-18 22:37:19
       Time zone: Asia/Tehran (IRST, +0330)
 Network time on: no
NTP synchronized: yes
 RTC in local TZ: no

在服务器机器上,日期正确,但时间错误。在客户端机器上,日期和时间都是错误的。客户端中的对等点是ntpq -p

    remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 192.168.1.202    LOCAL(0)        11 u   46   64    1    0.381  3201920   0.011
*LOCAL(0)        .LOCL.          10 l   17   64  377    0.000    0.000   0.000

但是当我使用命令时,sudo apt update客户端中的日期变得正确:

    Local time: Thu 2018-02-22 19:16:44 IRST
  Universal time: Thu 2018-02-22 15:46:44 UTC
        RTC time: Sun 2018-02-18 22:50:13
       Time zone: Asia/Tehran (IRST, +0330)
 Network time on: no
NTP synchronized: no
 RTC in local TZ: no

但时间还是不对!我用了命令date -s "correct time and date",但重启后就出错了!

我该如何解决这个问题!

答案1

    remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 192.168.1.202    LOCAL(0)        11 u   46   64    1    0.381  3201920   0.011
*LOCAL(0)        .LOCL.          10 l   17   64  377    0.000    0.000   0.000

这是客户端上的输出ntpq -p,它本质上就是客户端不同步的原因。客户端使用自己的时钟作为层 10 参考 - 但服务器声称它是层 11。

NTP 认为较低层的时钟更可能是正确的。这里有两个时间源,一个是层 11,另一个是层 10,两者相差很大。它不会尝试协调它们,只会说层 11 的时钟是错误的。

将服务器设置为较低层,使用

fudge 127.127.1.0 stratum 9

例如。或者 - 最好将服务器同步到更可靠的外部时间源,例如 NTP 池之一,通常是 1-3 层。同步到 3 层 NTP 服务器将使您的 NTP 服务器成为 4 层 NTP 服务器,这将优先于本地时钟。

另一种选择是增加客户端本地时钟的层数,例如增加到 13。

相关内容