DHCP 与 ISP 续订租约时间

DHCP 与 ISP 续订租约时间

最近我的 ISP 出现了严重故障,自从他们恢复服务后,我就一直遇到 DHCP 租约问题。我目前正在使用 DLink 路由器和 FreshTomato,在这次严重故障之前没有出现过这样的问题。

场景是这样的:

  1. 路由器从 ISP 获取租约和 IP(IPv4)

  2. 30 分钟或 1 小时后,我就无法再访问互联网

  3. 路由器显示WAN状态为已连接;租用时间仍有剩余。

  4. 我必须在路由器上手动续订租约才能恢复互联网访问

  5. 路由器获得新租约,并且新知识产权来自 ISP

我的问题是:

  1. 关于 DHCP 更新,我是否可以控制自己接收新 IP,还是只能听从 ISP 的安排?

  2. 作为 DHCP 客户端,我对 DHCP 租约有哪些控制权(例如,我是否可以请求新的 IP 还是只能听从 DHCP 服务器的安排)?

答案1

从技术上讲,您始终受制于 ISP。每个 ISP 都有自己的一套做法,而且他们的 WAN DHCP 系统的工作方式也与您预期的“普通”DHCP 服务器大不相同。

2) 作为 DHCP 客户端,我对 DHCP 租约有哪些控制权(例如,我是否可以请求新的 IP 还是只能听从 DHCP 服务器的安排)?

这取决于几个因素,例如服务器如何在其数据库中存储租约:

  • 一些 DHCP 服务器实施“粘性”租约:即使在租约到期后和/或即使租约被故意释放,它们也会在数据库中记住您的租约,因此您在新的请求中仍然可以获得相同的地址。

  • 其他 DHCP 服务器只允许您无限期地更新当前租约,但一旦租约到期/释放,租约就消失了 - 新的请求会再次从可用池中选择一个地址。

(有些 ISP 甚至不允许续订超过 X 天,迫使您每次都必须获取新地址。这仍然属于“一旦过期就没了”的情况。)

如果你正在续订“当前”租约,或者你的 ISP 实施粘性租约,那么它还取决于服务器识别您将“仍是同一个客户”。

  • 标准基本 DHCP 通过“客户端 ID”识别客户端,如果没有,则通过 MAC 地址识别客户端。不同的 MAC 地址将获得不同的租约,但移动到不同位置的同一客户端将随附其地址。

  • 一些 ISP 配置其 DHCP 服务器以通过其物理连接(选项 82)识别客户端,因此即使您更换整个路由器,您也会获得相同的地址。

1) 关于 DHCP 更新,我是否可以控制自己接收新 IP,还是只能听从 ISP 的安排?

“续订”按钮的实际含义是“尽一切努力获取一个地址,如果可能的话,更新当前租约,但如果失败,则获取一个新的租约”。

续订您当前持有的租约(如果尚未到期)应该保留与租约最初相同的地址。毕竟,“地址租约”实际上是使用该特定 IP 地址的许可。

(这意味着普通的更新不会导致任何网络中断 - 哪怕是一毫秒。主机可能会连续数年每小时更新一次其地址,同时仍保持相同的连接。)

但如果你得到不同的地址,这意味着续订失败并且您的路由器必须从零开始该过程,为您获取新的租约。

如果旧租约确实已过期(即路由器未及时自动续订),则可能会发生这种情况。但也可能因为某些 ISP 故意将其 DHCP 服务器配置为在原始租约期限后拒绝续订,从而力量让您每天都能获得一份全新的租约。

执行释放和续订最终将产生相同的效果。对于路由器来说,它会“续订”租约。

不,从 DHCP 服务器的角度来看,情况并非如此。“释放”操作不只是停止该过程,它实际上向服务器发送一个指示,表示现在可以自由地放弃您的旧租约。有些服务器会继续向您提供具有相同地址的新租约,但这并不是必需的。

“更新”执行相反的步骤:首先,它明确要求服务器重新发布相同的地址,并且只有当服务器拒绝,那么您的路由器将要求一个全新的租约。

答案2

这是一个需要您的 ISP 支持才能解决的问题。

从您的角度来看,您最多可以做的是将路由器设置为每 30 分钟更新一次 DHCP 租约(如果可能)。但是,这可能会导致所有现有连接中断,因此这不是最好的解决方案。

相关内容