![如何设置 DHCP 客户端优先选择一个 DHCP 服务器](https://linux22.com/image/1066419/%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%20DHCP%20%E5%AE%A2%E6%88%B7%E7%AB%AF%E4%BC%98%E5%85%88%E9%80%89%E6%8B%A9%E4%B8%80%E4%B8%AA%20DHCP%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我有一台带 DHCP 服务器的调制解调器和一台网关 Ubuntu Linux 服务器,它们在同一个 LAN 子网上有自己的 DHCP 服务器。这个想法是,当网关 DHCP 服务器可用时,连接到 LAN 的 ubuntu 机器上的 dhcp 客户端应该优先从此 DHCP 服务器获取 IP 地址。当网关发生故障时,它们应该从运行着自己的 DHCP 服务器的调制解调器获取 IP。
关于如何设置 DHCP 服务器优先级有什么建议吗?或者用其他方法解决这个问题(故障转移必须是自动的)
答案1
我相信我也是同样的情况。我猜想调制解调器上的 DHCP 服务器功能非常有限(例如,我的调制解调器不允许指定 PXE 或 bootp 服务器)。您希望网关 DHCP 服务器优先提供功能,但为了恢复能力而回退到调制解调器 DHCP 服务器,对吗?
我认为你需要反过来解决这个问题。你为什么要四处走动并配置所有客户端?那么你不妨给他们一个固定的 IP。这对 LAN 中的所有客户端来说应该是自动且透明的。
调制解调器 DHCP 服务器是否允许您指定回复延迟?如果是,您已经成功了。将网关 DHCP 服务器设置为立即响应,将调制解调器 DHCP 服务器设置为延迟 3 秒。例如,让前者服务的 IP 范围为 192.168.7.50-59,后者的服务 IP 范围为 192.168.7.100-150。
如果调制解调器 DHCP 服务器没有回复延迟选项,则继续配置 Ubuntu 网关 DHCP 服务器,使其延迟 3 秒。如果您使用 dnsmasq,则相关配置旋钮为--dhcp-reply-delay
。此外,将调制解调器发出的 IP 号码限制为较短的 TTL。然后,您需要定期从 Ubuntu 网关计算机运行 DCHP 客户端请求,以阻塞调制解调器 DHCP 池中的可用 IP 空间。然后,当请求来自真实客户端时,只有网关 DHCP 服务器才有可用的 IP 号码。当 Ubuntu 机器关闭时,它占用的 IP 空间将慢慢释放(由于 TTL 较低)并可用于普通机器的请求。