目录

简介

先决条件

要求

使用的组件

规则

背景信息

故障排除信息

无法将NTP同步到基于W32的时间服务

路由器无法与公共时间服务器同步

Error:Strata过高 — 从传感器到主NTP服务器的向外方向过多

相关信息

简介

本文档提供有关如何排除网络时间协议(NTP)的常见问题的信息。

先决条件

要求

思科建议您充分了解NTP的工作方式，并充分了解网络时间协议。

使用的组件

本文档不限于特定的软件和硬件版本。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

背景信息

网络时间协议(NTP)被广泛用于将计算机与互联网时间服务器或其他源（例如无线电或卫星接收器或电话调制解调器服务）同步。它在LAN上提供的准确度通常不到一毫秒，在WAN上提供的准确度则高达几毫秒。典型的 NTP 配置使用多台冗余服务器和不同的网络路径来实现高准确性和可靠性。

NTP使用Marzullo的算法将时间与当前版本的NTP同步。它可将公共Internet上的时间保持在10毫秒以内，而且在LAN上的性能更好。NTP时间服务器在TCP/IP协议簇内工作，并依赖用户数据报协议(UDP)端口123。

NTP服务器通常是专用的NTP设备，使用可同步网络的单个时间参考。此时间参考通常是协调世界时(UTC)来源。UTC是由原子钟通过互联网、专用长波无线电传输或全球定位系统(GPS)网络分布的全球时标。安全、保护、准确性、合法性和控制需要专用NTP服务器。

NTP算法使用此时间参考来确定提前或撤消系统或网络时钟的量。NTP分析时间戳值、错误频率及其稳定性。NTP服务器维护参考时钟和自身质量的估计。

故障排除信息

本部分列出了NTP可能遇到的一些常见问题，并为每个问题提供解决方案。

无法将NTP同步到基于W32的时间服务

当思科路由器配置为使用Active Directory中的NTP服务器时，思科路由器不会从NTP服务器接收任何NTP数据包。由于思科路由器使用NTP，而Active Directory域使用W32Time服务，因此会发生此问题。W32Time使用简单网络时间协议(SNTP)（NTP的子集）进行时间同步。SNTP和NTP使用相同的网络数据包格式。SNTP和NTP之间的主要区别是SNTP不提供NTP提供的错误检查和过滤功能。思科路由器和交换机使用NTP并允许NTP v3提供的所有错误检查和过滤功能。

Windows W32Time显示它是内部SNTP实施（而不是声称自己是NTP）。 尝试与W32Time同步的Cisco IOS-NTP会获取自己的根色散值，并将其发送到W32Time，这证明了Cisco IOS-NTP同步的成本高昂。由于Cisco IOS-NTP的根色散值高于1000毫秒，因此它会自行取消同步（时钟选择过程）。 由于基于Cisco IOS的路由器运行NTP的完整RFC实施，因此它们不会同步到SNTP服务器。在这种情况下，show ntp associations detail命令的输出显示服务器被标记为疯狂、无效。根色散值超过1000毫秒，这会导致Cisco IOS NTP实施拒绝关联。如果运行Cisco IOS的路由器是运行W32Time服务的Windows系统，则它无法与NTP服务器同步。如果服务器未同步，则路由器无法向服务器发送数据包和从服务器接收数据包。

要解决此问题并同步基于Cisco IOS的路由器，请使用Internet上的权威NTP服务器，即在某些平台上运行NTPD或GPS的UNIX机箱。作为替代方案，您可以选择不在Windows系统上运行W32Time服务。您可以使用NTP 4.x。所有Windows 2000及更高版本都可用作NTP服务器。然后，网络中的其他计算机可以使用NTP服务器来同步其时间。

路由器无法与公共时间服务器同步

路由器无法与公共时间服务器同步的可能原因如下：

- 不允许UDP端口123数据包通过的访问控制列表

- 路由器中的错误配置(如clock timezone和clock summer-time命令)在路由器中不存在

- 公共时间服务器关闭

- NT或UNIX上的NTP服务器软件配置错误

- 路由器上的流量更多，通往服务器的流量更多

- NTP主设备失去同步，路由器定期失去同步

- 高 CPU 利用率

- 服务器与路由器之间的偏移量较大(使用show ntp association detail命令检查此情况)

Error:Strata过高 — 从传感器到主NTP服务器的向外方向过多

当传感器尝试同步到报告其层为15的服务器时，会显示此错误消息。这是因为服务器层值15使传感器层值16非法。因此，传感器会拒绝服务器并显示Strata过高 — 从传感器到主NTP服务器的向内错误消息。

NTP使用层的概念描述机器旁边有多少NTP 跳来自可信的时间源。该错误消息表示NTP服务器报告的NTP层太高。层是介于1和15之间的数字，表示服务器距离精确参考时钟的距离。通常，直接同步到原子钟的系统将其层报告为一个层。同步到第1层NTP服务器，但同时充当其他主机的NTP服务器的主机向这些主机报告其层为第2层，而每个连续服务器层的层比其父级高1层。

如果将Linux主机用作NTP服务器，请对其报告的层进行硬编码，而不是让其自动计算层。如果是Linux或UNIX框，则NTP服务器由文件/etc/ntp.conf配置，并使用fudge 命令对层进行硬编码。服务器始终向其客户端报告比掩码值高1的层值。

相关信息

- 网络时间协议：最佳实践白皮书

- 网络时间协议(NTP)分布

- NTP调试技术

- 技术支持和文档 - Cisco Systems