NetworkManager自定义IP与DHCP fallback共存时的路由优先级设置问题
NetworkManager自定义IP与DHCP fallback共存时的路由优先级设置问题
嗨,看起来你已经把基础配置搭好了——既保留DHCP作为其他网络的 fallback,又设置了自定义静态IP,现在就差让静态IP优先级压过DHCP分配的IP对吧?
咱们先看你当前配置里的关键问题:ipv4.route-metric: -1。这个-1其实是让NetworkManager使用默认的metric值,而DHCP分配的路由默认metric通常是100左右,两者优先级拉不开,所以系统可能会随机选或者优先用DHCP的。
解决思路很简单:给你的自定义静态IP设置一个比DHCP更小的路由metric值——因为路由规则里,metric数值越小,优先级越高。
具体操作步骤
先找到你的网络连接名称,执行命令:
nmcli con show输出里会列出所有连接,比如
Wired connection 1或者你的网卡名(比如eth0)。修改该连接的路由metric,把值设成比DHCP默认值小的数(比如10):
nmcli con modify "你的连接名称" ipv4.route-metric 10这里把10换成你觉得合适的数值都行,只要比100小就好。
重启连接让配置生效:
nmcli con down "你的连接名称" && nmcli con up "你的连接名称"
验证效果
配置生效后,执行ip route show查看路由表,你会看到目标0.0.0.0/0的路由有两条:一条是你静态IP对应的(metric 10),一条是DHCP分配的(metric 100左右)。系统会优先使用metric更小的那条,也就是你的自定义IP路由。
另外,你的其他配置是没问题的:
ipv4.method: auto确保DHCP依然能工作ipv4.ignore-auto-routes: no允许DHCP添加路由但不抢占优先级ipv4.ignore-auto-dns: yes固定用你设置的DNS,这个也符合需求
这样调整后,你的自定义IP就会成为首选,同时当设备连接到其他网络时,DHCP依然能自动配置网关和其他参数,完美满足你的需求~
备注:内容来源于stack exchange,提问作者David Davíd
相关产品推荐
相关产品推荐

