是否有任何网络广播呼叫或可以强制所有连接的 DHCP 客户端立即更新其地址的东西?
如果没有,为什么不呢?毫无疑问,DHCP 管理员从它诞生之日起就需要此功能。如果没有普遍的客户端自动化,它使得在大型网络上更改路由器地址变得非常困难。
如果不让客户端网络接口处的网络关闭和启动,这是不可能的。
理论上,DHCP 服务器可以向所有连接的客户端发送 FORCERENEW 消息。FORCERENEW 在RFC3203中有描述。(另见https://serverfault.com/a/569869/107832)
不幸的是,著名的ISC DHCP 服务器不支持它:
RFC 3315在第 19.4.1 节中声明重新配置消息。但是,这仅适用于 IPv6。一条消息指出 DOCSIS 3.0“需要 RFC3315 中指定的重新配置支持(针对 DHCPv6)”
这不是直接可能的 - DHCP 发出一个带有租约的 IP 地址。该租约告诉客户它“有效”多长时间,之后必须续订。通常 - 它会更新相同的 IP,但这是 DCHP 协商发生的时间点。
强制网段上的每台机器进行更新是创建拒绝服务攻击的一种非常好的方法。
但是,您可以在过渡到新的网络拓扑时将租用时间缩短到几分钟。实际上,这将意味着一次小中断,但无论如何您都会通过重新获取多个 IP 来实现。
注意:这仅部分解决了 OP 的问题。
要仅强制所有 Wi-Fi DHCP 客户端更新其 DHCP 租约,您可以这样做。假设 Wi-Fi DHCP 客户端连接到您路由器的 SSID,并且您的路由器管理界面支持这些功能。
我通过通过以太网连接到路由器的客户端使用 WebUI。
我设法通过关闭 dhcpd 服务、删除 /var/lib/dhcpd/dhcpd.leases 文件并重新启动守护程序来删除所有租约。然后您必须让每台设备从 DHCP 服务器获取 IP 地址。对于某些设备,简单的电源循环将起作用。
psexec \\\computername ipconfig /renew