You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在NetworkManager中使用自定义IP并保留DHCP回退时,如何优先自定义IP路由?

在NetworkManager中使用自定义IP并保留DHCP回退时,如何优先自定义IP路由?

我来帮你解决这个问题——你现在的情况是,NetworkManager同时配置了静态IP和DHCP IP,但两者的子网路由metric相同(都是100),导致系统不会优先使用你的自定义IP。我们可以通过给静态IP指定更低的路由metric来实现优先级,同时保留DHCP的回退能力。

问题分析

你当前的ipv4.route-metric=-1表示让NetworkManager使用DHCP服务器提供的metric值(这里是100),所以静态IP和DHCP IP对应的子网路由都使用了100这个metric,没有优先级区分。我们需要给静态IP的路由单独设置一个更低的metric,比如50,让系统优先选择它。

解决步骤

  1. 确认你的网络连接名称
    先运行以下命令查看当前的NetworkManager连接列表,找到对应的连接名(比如你的网卡是enp0s25,连接名可能也是这个):

    nmcli con show
    
  2. 修改静态IP的metric参数
    使用nmcli修改连接配置,给你的静态IP添加一个更低的metric值(这里用50举例,你可以根据需要调整):

    nmcli con mod "你的连接名称" ipv4.addresses "192.168.1.33/24,metric=50"
    

    注意把"你的连接名称"替换成你实际查到的连接名。

  3. 重启连接使配置生效
    断开并重新连接网络,让新配置生效:

    nmcli con down "你的连接名称" && nmcli con up "你的连接名称"
    
  4. 验证配置结果
    运行ip route查看路由表,你应该会看到类似这样的输出:

    default via 192.168.1.1 dev enp0s25 proto dhcp metric 100
    192.168.1.0/24 dev enp0s25 proto kernel scope link src 192.168.1.33 metric 50
    192.168.1.0/24 dev enp0s25 proto kernel scope link src 192.168.1.107 metric 100
    

    现在src 192.168.1.33的路由metric更低,系统会优先使用这个静态IP作为源地址访问局域网;当静态IP所在的网络不可用(比如切换到其他网络),DHCP分配的IP会自动作为回退继续工作。

额外说明

  • 你当前的ipv4.ignore-auto-dns=yes配置是合理的,因为你已经指定了自定义DNS,这个不需要修改。
  • 如果后续需要调整metric值,只需要重复步骤2和3,修改对应的数值即可。

备注:内容来源于stack exchange,提问作者David Davó

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 13:13:03