Linux
NTP 本地查詢總是超時
我有一個 CentOS 6.4 伺服器,它沒有任何 iptable 規則,它使用以下配置執行 NTP 守護程序作為服務:
driftfile /var/lib/ntp/drift server 0.pool.ntp.org server 1.pool.ntp.org server 2.pool.ntp.org server 3.pool.ntp.org restrict default ignore restrict 127.0.0.1
當我執行
ntpq
查詢對等方時,收到以下響應:ntpq> peers localhost.localdomain: timed out, nothing received
dig
表明:localhost.localdomain. 86400 IN A 127.0.0.1
為什麼ntp查詢不起作用?
我期待
ntpq
通過 127.0.0.1 查詢本地伺服器,但結果是通過乙太網網路介面查詢本地伺服器。雖然我不知道為什麼本地 ntp 查詢必須通過乙太網,但在配置文件中我添加了
restrict <eht0 ip address>
現在 NTP 工作正常。
在 RHEL / CentOS 6 和 7 上,無論出於何種原因,
ntpq
都會嘗試在 ::1 處查詢 IPv6 環回,而不是在 127.0.0.1 處查詢 IPv4 環回。考慮到這一點,我將這一行添加到我的/etc/ntp.conf
文件中:restrict ::1
保存文件然後重新啟動
ntpd
service ntpd restart
現在命令:
ntpq -p
按預期工作。(這與
ntpq
在命令行模式下執行然後發出peers
命令相同。)我更喜歡這個解決方案,因為您不必
ntpd
通過潛在的公共乙太網介面啟用通信,這可能是一個安全問題。