您能配置一个特定的接口来访问 NTP 服务器吗?

您能配置一个特定的接口来访问 NTP 服务器吗?

我必须在 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 [email protected] 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 服务器的源接口?

答案1

您可以为您的 NTP 服务器添加特定的主机路由:

route add -host 10.0.10.12 dev eth0, 例如。

根据 Anton 完全正确的评论,以下是iproute2语法中的命令:

ip route add 10.0.10.12 dev eth0

答案2

我解决了这个问题,结论是 NTP 需要默认网关才能正常工作。这对我来说是解决方案:

ip route add default via 127.0.0.1 dev lo

相关内容