ISP 如何知道何时更改动态 IP?

ISP 如何知道何时更改动态 IP?

据我了解,ISP 使用 DHCP 协议从某个池中分配 IP。每次他们通过 DHCP 分配 IP 时,都有一个租约时间。租约时间结束时,路由器可以接收相同的 IP - 但这不是必须的。

现在,考虑这种情况:我正在将文件上传到某个服务器,或者我通过 SSH 或 TCP 连接到该服务器。但 IP 租约时间已到,ISP 的 DHCP 决定给我一个不同的IP 地址。这会破坏我与服务器的 SSH/TCP 连接或中断文件上传,对吗?

但实际上这种情况不会发生。所以我的问题是:ISP 是否会监控是否有一些数据包进出我的路由器(=某些连接处于活动状态),如果是,它会在租用期结束时为我分配相同的 IP 地址?


附加问题:如果上述情况属实,那么是否可以滥用此功能来“保证”自己拥有“静态 IP”,即使我只为动态 IP 付费,例如每秒 ping 一次 Google?或者始终保持某个开放的 SSH 连接?

答案1

维基百科文章 [动态主机配置协议 (DHCP),特别是在关于 可靠性

DHCP 通过多种方式确保可靠性:定期更新、重新绑定[11]:第 4.4.5 节和故障转移。DHCP 客户端被分配了持续一段时间的租约。租约间隔一半到期后,客户端便开始尝试续订租约。[11]:第 4.4.5 节第 3 段它们通过向授予原始租约的 DHCP 服务器发送单播 DHCPREQUEST 消息来实现这一点。如果该服务器关闭或无法访问,它将无法响应 DHCPREQUEST。但是,在这种情况下,客户端会不时重复 DHCPREQUEST,[11]:第 4.4.5 节第 8 段 [b] 因此,如果 DHCP 服务器重新启动或再次可访问,DHCP 客户端将成功联系它并续订租约。

如果 DHCP 服务器长时间无法访问,[11]:第 4.4.5 节第 5 段 DHCP 客户端将尝试重新绑定,方法是广播其 DHCPREQUEST 而不是单播。由于是广播,DHCPREQUEST 消息将到达所有可用的 DHCP 服务器。如果其他 DHCP 服务器能够续订租约,它将在此时这样做。

为了使重新绑定正常工作,当客户端成功联系备份 DHCP 服务器时,该服务器必须具有有关客户端绑定的准确信息。维护两台服务器之间的准确绑定信息是一个复杂的问题;如果两台服务器都能够更新相同的租约数据库,则必须有一种机制来避免独立服务器上的更新发生冲突。一项实施容错 DHCP 服务器的提案已提交给互联网工程任务组,但从未正式化。[27][c]

如果重新绑定失败,租约最终会过期。租约过期后,客户端必须停止使用租约中授予的 IP 地址。[11]:第 4.4.5 节第 9 段届时,客户端将通过广播 DHCPDISCOVER 消息从头重新启动 DHCP 进程。由于租约已过期,客户端将接受提供给它的任何 IP 地址。一旦客户端有了新的 IP 地址(可能来自不同的 DHCP 服务器),客户端将再次能够使用网络。但是,由于客户端的 IP 地址已更改,因此任何正在进行的连接都将中断。

答案很简单:这不会发生,因为您的计算机和路由器将尽一切可能保留其 IP 的租约。

只有当与 DHCP 服务器的连接中断时间超过租用期的一半时,您才有可能丢失您的 IP 并导致正在进行的上传/下载中断。

实际上,这种中断意味着您的 ISP 部分或全部瘫痪,因此您的上传/下载可能会遇到其他问题,而不仅仅是丢失其 IP,而且在租约到期之前。

答案2

ISP 监控来自路由器的每个数据包,因为它必须将它们路由到正确的目的地。

这与 IP 租约无关。DHCP 租约不是在您的 IP 地址(第 3 层)上实施的,而是在您的第 2 层地址上实施的。通俗地说:您的 ISP 知道您的第 2 层地址,只要相同的第 2 层地址请求新的 IP,DHCP 服务器就会在租约有效期内提供相同的 IP 地址。如果租约到期(并被删除),您将从池中获得下一个可用的 IP 地址,这可能是您的旧地址,但通常不是。

关于您的附加问题,您不能延长租约时间,但您可以尝试尽快重新连接,这样您仍可以在租约时间内重新连接。但请注意,在大多数消费者互联网连接中,租约时间非常短,因此重新连接将始终为您提供新的 IP,并且通常会在 24 小时后强制重新连接。

相关内容