How*_*ard 7 linux redhat ntp centos
我有一个 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
Run Code Online (Sandbox Code Playgroud)
当我运行ntpq查询对等点时,收到以下响应:
ntpq> peers
localhost.localdomain: timed out, nothing received
Run Code Online (Sandbox Code Playgroud)
dig 表明:
localhost.localdomain. 86400 IN A 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
为什么ntp查询不起作用?
小智 9
在 RHEL/CentOS 6 和 7 上,无论出于何种原因,都会ntpq尝试查询 ::1 处的 IPv6 环回,而不是 127.0.0.1 处的 IPv4 环回。考虑到这一点,我将此行添加到我的/etc/ntp.conf文件中:
restrict ::1
Run Code Online (Sandbox Code Playgroud)
保存文件然后重新启动 ntpd
service ntpd restart
Run Code Online (Sandbox Code Playgroud)
现在命令:
ntpq -p
Run Code Online (Sandbox Code Playgroud)
按预期工作。(这与ntpq在命令行模式下运行然后发出peers命令相同。)
我更喜欢这个解决方案,因为您不必ntpd通过潜在的公共以太网接口启用通信,这可能是一个安全问题。
我本来希望ntpq通过 127.0.0.1 查询本地服务器,但结果是通过以太网接口查询本地服务器。
虽然我不知道为什么本地 ntp 查询必须通过以太网,但在配置文件中我添加了
restrict <eht0 ip address>
Run Code Online (Sandbox Code Playgroud)
现在 NTP 工作正常。
| 归档时间: |
|
| 查看次数: |
32224 次 |
| 最近记录: |