AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 442051
Accepted
dafydd
dafydd
Asked: 2012-10-25 15:31:10 +0800 CST2012-10-25 15:31:10 +0800 CST 2012-10-25 15:31:10 +0800 CST

ntpdate 有效,但 ntpd 无法同步

  • 772

这是在 RHEL 5.5 中。

首先,远程主机的 ntpdate 有效:

$ ntpdate XXX.YYY.4.21
24 Oct 16:01:17 ntpdate[5276]: adjust time server XXX.YYY.4.21 offset 0.027291 sec

其次,这是我的 /etc/ntp.conf 中的服务器行。所有restrict行都已被注释掉以进行故障排除。

server 127.127.1.0
server XXX.YYY.4.21

我执行service ntpd start并检查ntpq:

$ ntpq
ntpq> peer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*LOCAL(0)        .LOCL.           5 l   36   64  377    0.000    0.000   0.001
 timeserver.doma .LOCL.           1 u   39  128  377    0.489   51.261  58.975

ntpq> opeer
 remote           local          st t when poll reach   delay   offset    disp
==============================================================================
*LOCAL(0)        127.0.0.1        5 l   40   64  377    0.000    0.000   0.001
 timeserver.doma XXX.YYY.22.169   1 u   43  128  377    0.489   51.261  58.975

XXX.YYY.22.169 是我正在使用的主机的地址。对我的 ntp.conf 文件中的 IP 地址进行反向查找可验证 ntpq 输出是否正确命名了远程服务器。但是,如您所见,它似乎只是转入我的 .LOCL。时间服务器。此外,ntptrace只返回本地时间服务器,并ntptrace XXX.YYY.4.21超时。

$ ntptrace
localhost.localdomain: stratum 6, offset 0.000000, synch distance 0.948181

$ ntptrace XXX.YYY.4.21
XXX.YYY.4.21: timed out, nothing received
***Request timed out

这看起来像我的 ntp 守护进程只是在查询自己。

我正在考虑我的测试网络时间服务器和公司网络时间服务器之间的我不控制的路由器在源端口上阻塞的可能性。(我认为 ntpdate 在端口 123 上发送,它绕过了那个过滤器,这就是为什么我不能在 ntpd 运行时使用它的原因。)我已经给网络人员发了电子邮件来检查它。

最后,telnet XXX.YYY.4.21 123永远不要超时或完成连接。

问题:

我在这里错过了什么?

我还可以检查什么来尝试找出此连接失败的位置?

会strace ntptrace XXX.YYY.4.21告诉我 ntptrace 发送的源端口吗?我可以解构大多数 strace 调用,但我无法弄清楚该数据的位置。

如果我不能直接检查我的测试网络和时间服务器之间的网关路由器,我如何建立证据证明它对这些断开连接负责?或者,我如何排除它?

rhel5
  • 5 5 个回答
  • 18011 Views

5 个回答

  • Voted
  1. Shane Madden
    2012-10-25T15:41:13+08:002012-10-25T15:41:13+08:00

    列377中的reach表示连接正常;telnet不会连接,因为 NTP 是 UDP。

    尝试server 127.127.1.0从您的配置中删除 - *by*LOCAL(0)告诉我们具有 stratum 5 的本地服务器正在用于同步,优先于具有 stratum 1 的远程服务器;延迟和偏移量均为 0.000 可能与此有很大关系。

    • 4
  2. BillThor
    2012-10-25T16:56:36+08:002012-10-25T16:56:36+08:00

    如果您要包括本地时钟,请适当调整其级别。看起来您已将其设置为 5。我通常至少将其设置为 8 ( fudge 127.127.1.0 stratum 8)。如果你不捏造它,你可以像一个原子钟一样出现在你网络上的其他主机上。在我扫描的一个网络上,我发现很多低层服务器公布的时间通常是几小时或几天不正确。

    Shane 关于reach指示您有权访问服务器的值是正确的。您的时间服务器的高值offset和jitter值表明它可能不是很可靠。它们可能很高,因为您的服务器仍在同步。poll间隔增加到 128这一事实表明您的服务器正在获得一致的结果。它应该逐渐增加到 1024 秒。

    尝试运行一个循环,如:

    while sleep 60; do
        ntpq -n -c peers; done
    

    这将使您了解 ntp 的工作情况。你应该看到它随着时间的推移稳定下来。

    可以设置一些限制ntpd来限制可以远程访问有关服务器的信息量。您可能仅限于使用上游服务器作为时间源。

    可以使用防火墙规则将源和目标的流量限制到端口 123。这提供了一个有效的 ntp 设置,但限制了其他工具的访问。一些工具允许您使用端口 123 作为源端口(如果可用)。我偏爱ntpdate在调试模式下使用。

    如果您关于refid上游服务器的 IP 地址是正确的,它似乎正在使用您的服务器作为首选时间源。尝试添加restrict noquery到您的配置。可能是您的上游服务器配置不当。尝试添加您的路由器和/或名称服务器作为来源,我发现它们可能是比官方公司服务器更好的来源。

    • 1
  3. Brad Allison
    2014-04-10T11:39:46+08:002014-04-10T11:39:46+08:00

    我有同样的问题:

    ntpq -p 显示 reach = 0

    然而 1- ntpd 正在运行 2- ntp.conf 列出了服务器 3- ntpdate 使用这些服务器工作 4- ntpdate -u 使用这些服务器工作 5- nc 显示 TCP 端口 123 在这些服务器上打开 6- nc 显示 UDP 端口 123 是在那些服务器上打开

    所以基本上 ntpdate 工作并且没有防火墙问题,但是 ntpq -p 显示 reach = 0 对于列出的每个服务器。

    原来是ntp.conf中的restrict行。我刚刚从 ntp.conf 中删除了所有限制行并重新启动了 ntpd,一切都从那里开始了。

    • 1
  4. Best Answer
    dafydd
    2012-10-27T16:16:59+08:002012-10-27T16:16:59+08:00

    对于那些寻求大解决方案的人,我深表歉意。这会很俗气。

    是的,时间服务器无法访问,原因我无法确定。好消息是,我可以访问的外部 DNS 服务器之一原来正在为 NTP 数据包提供服务,并且它正在连接到该外部时间服务器以获取其滴答声。这是一种解决方法,而不是修复方法。但是,我会得到我能得到的。

    所以,最后,我只失去了一个服务层。

    作为旁注,我确实在 NTP 错误数据库中注册,因此我可以编写增强错误 2297,请求对等 refids.INIT.、.LOCL. 和 LOCAL(0) 的正式文档。

    • 0
  5. Aaron Copley
    2017-01-13T09:36:54+08:002017-01-13T09:36:54+08:00

    只是想将我的两分钱添加到顶部的 Google 搜索结果中。我在 NTP 未绑定到主机外部接口的主机上遇到了这个问题。如果您遇到此问题,请查看 的输出netstat -tulpn。

    此 ntpd 实例将无法同步到已知的良好时间源。

    $ sudo netstat -tulpn | grep ntp
    udp        0      0 127.0.0.1:123               0.0.0.0:*                                  31316/ntpd          
    udp        0      0 0.0.0.0:123                 0.0.0.0:*                               31316/ntpd          
    

    这将。

    $ sudo netstat -tulpn | grep ntp
    udp        0      0 192.168.1.15:123            0.0.0.0:*                               32294/ntpd          
    udp        0      0 127.0.0.1:123               0.0.0.0:*                               32294/ntpd          
    udp        0      0 0.0.0.0:123                 0.0.0.0:*                               32294/ntpd   
    

    这是配置文件试图限制仅使用 0.0.0.0 通配符绑定到 IPv4 接口的结果。

    $ grep ^interface /etc/ntp.conf 
    interface listen 0.0.0.0
    

    正确的(期望的)配置如下。

    $ grep ^interface /etc/ntp.conf 
    interface listen ipv4
    interface ignore ipv6
    

    (或者,删除两个接口配置选项。)

    您还可以检查/etc/sysconfig/ntp或等同于任何可能限制接口绑定的配置。

    • 0

相关问题

  • 通过 RPM 管理配置?

  • 监控 HP DL 服务器上的硬件故障

  • chroot 用户登录

  • SSH 键 + RHEL5

  • 可以使用 easy_install 和 bdist_rpm 安装吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve