我有三个思科路由器,如下图所示连接。
问题是,虽然 R1 使用 NTP 同步时钟,但 R2 和 R3 却没有。
所有三个路由器都使用同一套命令配置了 NTP,
ntp server 192.168.10.2
ntp authenticate
ntp authentication-key 1 md5 <key>
ntp trusted-key 1
ntp update-calendar
R1 同步完美。但 R2 和 R3 却没有。
对于 R2 和 R3,调试命令显示如下输出,
R2#show ntp status
时钟异常,层数为 16,参考为 192.168.10.2 标称频率为 000.0000 Hz,实际频率为 000.0000 Hz,精度为 0**00 参考时间为 00000000.00000000(00:00:00.000 UTC Mon Jan 1 1990) 时钟偏移为 0.00 毫秒,根延迟为 0.00 毫秒,根弥散为 0.00 毫秒,对等弥散为 0.00 毫秒。
开机debug ntp
显示这个,
3 月 1 日 00:25:10.243:NTP:向 192.168.10.2 发送数据包
3 月 1 日 00:25:10.254:NTP:从 192.168.10.2 接收数据包
3 月 1 日 00:30:10.244:NTP:向 192.168.10.2 发送数据包
3 月 1 日 00:30:10.271:NTP:从 192.168.10.2 接收数据包
因此,NTP 数据包正在正确传输。
任何建议都将受到赞赏。
答案1
本例中的错误是没有正确指定key
。在路由器上运行show running-config
显示如下输出,
--truncated--
ntp server 192.168.10.2 key 0
--truncated--
其中实际的密钥是 1。进一步调查ntp server
命令向我们展示了此命令有许多可选参数,包括[key key-id]
。当用户忘记指定密钥值时,路由器会分配默认值零。因此,这会导致所有 NTP 数据包变得不受信任并被拒绝。最终,时间保持不同步,NTP 客户端显示疯狂的状态。
只需按照以下方式指定键值即可解决问题。
ntp server 192.168.10.2 key 1
也许原因最初R1 确实同步了时间,这是因为其 NTP 命令先发出,然后配置了 NTP 服务器中的密钥值。NTP 服务器已经运行了默认密钥值为 0 的 NTP 服务,后来,这个对称共享秘密设置为所需不同的值为 1。