如果您重新启动手机或路由器,它们会自动向 dhcp 服务器发送发现请求以获取新 ip?
我有点困惑,因为当我将路由器从插座上移除 5 分钟时,我没有获得新 ip,但当手机关闭即使 2 分钟时,我也会获得一个新的 ip 地址。(我说的是一部不是连接到路由器,互联网来自移动运营商)
答案1
我有点困惑,因为当我将路由器从插座上拔下 5 分钟时,我没有获得新的 IP,但当手机关机即使 2 分钟,我也会获得一个新的 IP 地址。(我说的是未连接到路由器的手机,互联网来自移动运营商)
尽管蜂窝网络不使用 DHCP,但是否使用 DHCP 并不重要,答案仍然是相同的“这取决于很多因素”。因此,我们假设问题是关于 DHCP 的(就像您在 LAN 上看到的一样)。
首先,这取决于 DHCP 客户端。它能要么直接重新请求它之前记住的地址(例如存储在磁盘上),但它也可以每次都从零开始执行整个发现过程(例如,期望服务器重新发布相同的租约,或者只是不关心它)。
如果设备有存储空间,它可能会记住上次的租约并尝试刷新它 - 但实际上它不必这样做。如果它是一台计算机,它可能会记住每个 Wi-Fi 网络的租约,也可能不会(并继续尝试在网络 B 上重新获得租约 A...)
其次,这取决于 DHCP 服务器。对于“重新启动”请求(即“请给我之前使用的相同地址”),它应该会遵守该请求如果租约尚未到期。但有些 DHCP 服务器允许你申请所需的地址,即使租约已经到期有过期,只要地址本身仍是“空闲的”。另一方面,一些 DHCP 服务器不完全尊重此类请求并会坚持始终向您提供随机地址。
新的租约请求也类似 - 有时 DHCP 服务器会意识到您已经拥有有效租约,并会再次为您提供相同的地址,但有时您会获得新地址,而旧租约会被覆盖。同样,这取决于 DHCP 服务器软件和配置。
此外,DHCP 服务器通常通过“客户端 ID”(通常只是 MAC 地址,但并非总是如此)识别您。但是对于 WAN 连接,如果 ISP 愿意,他们可以通过以下方式识别您物理线路– 所谓的“选项 82”可以通过硬件在某个地方注入,例如指示您正在使用哪个物理以太网端口。 ISP 有时使用此方法为您提供相同的 IP 地址,即使整个路由器已更改。
其他 IP 地址配置方法(例如 PPPoE 中使用的 IPCP 以及 3G/4G 中使用的任何方法)可能工作方式不同,例如它们可能没有客户端请求特定地址的功能,但总体观点保持不变:没有固定的规则,这取决于情况。
答案2
据我所知,它的工作方式如下:路由器的 dhcp 租约到期,它会从配置的 dhcp 服务器之一请求一个新地址,要么是设置地址,要么从您的 ISP 获取。大多数商业计划(一些公司计划需要为静态地址支付额外费用)都是针对动态前向 ip 地址的,这意味着它可以在您的路由器重新启动或租约到期后随时更改,但通常它根本不会经常更改,因为现在 ISP 必须使用的 ipv4 地址池越来越有限(如果您确实在使用 ipv4),因此 ISP 每次请求后都会给您相同的地址,除非出于某种原因需要给您一个新地址。蜂窝网络的工作原理略有不同,由于有如此多的客户端一直在线和离线,因此它们更频繁地更改每个人的地址是有道理的,但我对它们了解不多,所以我无法给出明确的答案,为什么每次您关闭手机时它都会给您一个新的 ip。希望你现在明白了!
我还查看了 computing.net 上的这个答案:https://www.computing.net/answers/networking/why-doesnt-my-dynamic-ip-address-ever-change/40000.html
答案3
强制使用新 IP 只有两种方法:
- 关闭路由器的时间超过 ISP 分配的保留 IP 的时间,
- 使用 VPN 为自己获取一个新的 IP(通常 VPN 服务器不会保留或记住旧的 IP)。