Centos

你可以配置一個特定的介面來訪問 NTP 伺服器嗎?

  • July 24, 2019

我必須在 CentOS 伺服器上配置 NTP。我有 7 個介面,我可以通過一個介面訪問 NTP 伺服器。伺服器也無法訪問網際網路。當我嘗試 ping 時:

ping 10.0.10.12
connect: Network is unreachable

但是當我用源介面 ping 時,ping 是成功的。

ping -I eth0 10.0.10.12
PING 10.0.0.131 (10.0.10.12) from 10.69.4.16 eth0: 56(84) bytes of data.
64 bytes from 10.0.10.12: icmp_seq=1 ttl=127 time=4.07 ms
64 bytes from 10.0.10.12: icmp_seq=2 ttl=127 time=0.309 ms
64 bytes from 10.0.10.12: icmp_seq=3 ttl=127 time=0.318 ms

ntpstat 命令輸出:

unsynchronised
time server re-starting
 polling server every 8s

ntpq -p 命令輸出:

    remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
10.0.10.12      .INIT.          16 -    -  512    0    0.000    0.000   0.000

我還嘗試了 ntpdate - d 10.0.10.12:

ntpdate -d 10.0.0.131
23 Jul 09:14:31 ntpdate[16715]: ntpdate 4.2.6p5@1.2349-o Sat Nov 23 18:21:48 UTC 2013 (1)
Looking for host 10.0.0.131 and service ntp
host found : 10.0.0.131
23 Jul 09:14:31 ntpdate[16715]: no servers can be used, exiting

NTP 伺服器是在 ntp.conf 文件中配置的,我認為問題出在網路上。我想知道是否可以為到達 NTP 伺服器創建顯式源介面?

我解決了這個結論,認為 NTP 需要預設網關才能正常工作。這對我來說是解決方案:

ip route add default via 127.0.0.1 dev lo

您可以為您的 NTP 伺服器添加特定的主機路由:

route add -host 10.0.10.12 dev eth0, 例如。

根據 Anton 完全正確的評論,以下是iproute2語法中的命令:

ip route add 10.0.10.12 dev eth0

引用自:https://serverfault.com/questions/976300