延迟 NTP 初始化,Cisco 877W,IOS 12.4(24)T1

延迟 NTP 初始化,Cisco 877W,IOS 12.4(24)T1

我有一台 Cisco 877W,用于家庭 ADSL 连接(以及 Cisco IOS 的复习)。我有一个可用的配置,我的 PPPoA 连接可以正常联机,VLAN 和其他设置也按我的要求配置,但我无法破解 NTP 配置。

对于 NTP,我定义了以下

ntp server 0.uk.pool.ntp.org source Dialer0
ntp server 1.uk.pool.ntp.org source Dialer0
ntp server 2.uk.pool.ntp.org source Dialer0
ntp server 3.uk.pool.ntp.org source Dialer0

当 Dialer0 接口 (ATM0.1) 已启动时,在全局配置模式下发出此设置可以正常工作。但是启动时配置会失败:

Translating "1.uk.pool.ntp.org"...domain server (208.67.222.222) (208.67.220.220)

ntp server 1.uk.pool.ntp.org source Dialer0
                                            ^
% Invalid input detected at "^" marker.

对定义的其他服务器重复此操作。

显然,服务器的 DNS 查找失败,因为外部接口尚未上线,导致无法访问 DNS 服务器。

有没有办法延迟 NTP 配置,直到 Dialer0 接口完全初始化之后?Dialer0 接口上的线路协议转换到该up状态时,是否可以触发 NTP 命令?或者,路由器完成初始化后,是否可以将 NTP 命令延迟 5 分钟?

任何建议,或指向有用文档或示例的指示都将不胜感激......

答案1

好的,我想我可能已经解决了这个问题 - 虽然现在我的头很痛!为其他可能遇到这个问题的人发帖...

我已从配置中删除了 NTP 服务器设置,并替换为以下内容:

kron policy-list ntp
 cli ntp server 0.uk.pool.ntp.org source Dialer0
 cli ntp server 1.uk.pool.ntp.org source Dialer0
 cli ntp server 2.uk.pool.ntp.org source Dialer0
 cli ntp server 3.uk.pool.ntp.org source Dialer0

kron occurrence ntp-init in 5 oneshot
 policy-list ntp

现在,reload路由器在配置 NTP 之前等待 5 分钟,到目前为止似乎运行正常...虽然这有点像黑客行为 - 可能有更好的方法!

答案2

在我的 1841 (15.1(3)T) 上,IOS 会在启动时尝试解析 ntp 服务器名称,然后接口才能联机,这显然会失败。我通过使用 ntp 服务器地址而不是主机名来“修复”该问题。

答案3

kron 解决方法对我来说不起作用,我想是因为 kron 无法运行全局配置命令,但我可以使用嵌入式事件管理器 (EEM) 脚本来做到这一点:

event manager applet NTP_CONFIG
 event timer countdown name ON_BOOT time 180 maxrun 60
 action 100 cli command "enable"
 action 110 cli command "configure terminal"
 action 120 cli command "ntp server 0.us.pool.ntp.org"
 action 130 cli command "ntp server 1.us.pool.ntp.org"
 action 140 cli command "ntp server 2.us.pool.ntp.org"
 action 150 cli command "ntp server 3.us.pool.ntp.org"

虽然您仍需等待 DNS 查找在启动期间超时并被删除,但这会在设备启动三分钟后重新添加它们。已在 IOS 15.1(3)T2 上测试。

相关内容