我在 CentOS 7 服务器上运行 OpenVPN。 LAN 上的 DHCP 服务器使用选项 121 告诉其他设备如果想要访问 OpenVPN 服务器所连接的 VPN 子网,则使用此 CentOS 服务器。这很好用。
问题是这个 CentOS 服务器从 DHCP 服务器获取这些相同的路由,这会破坏一些东西。如果我手动从其路由表中删除这些静态路由,一切都会正常。
有没有办法让 CentOS 7 的 DHCP 客户端忽略来自 DHCP 服务器的这些选项 121 路由?
现在,我的解决方案是将其添加到 /etc/dhcp/dhclient-up-hooks 中:
#!/bin/bash
if [[ "$interface" == "ethX" ]]
then
echo -e "\nRemoving extra routes"
ip route delete 192.168.a.0/24 via 192.168.x.y
ip route delete 192.168.b.0/24 via 192.168.x.y
fi
这可行,但似乎有点不干净,因为系统将在接口启动时添加 DHCP 路由,然后不久后将其删除。有没有办法告诉 DHCP 客户端不要首先添加它们?
附言。是的,我可以在 OpenVPN 服务器上使用静态 IP,这可以解决我的问题,但我更喜欢 dhcp 保留。