最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Linux如何配置系统的默认网关优先级
时间:2026-06-18 08:03:52 编辑:袖梨 来源:一聚教程网
Linux默认网关优先级由metric值决定,数值越小越优先;系统仅使用一条default路由,metric相同时行为不可控;确认生效路由应使用ip route show default或ip route get 8.8.8.8,而非仅看ip route | grep default的全部条目。
Linux 默认网关优先级由 metric 值决定,数值越小越优先;系统只用一条 default 路由,metric 相同会导致行为不可控——这不是“谁先配谁生效”,而是内核按数值硬选。
怎么确认当前生效的默认网关和 metric 值
别只看 ip route 输出的第一行,那可能只是其中一条;真正发包走哪条,得看内核实际选中的那条:
-
ip route show default—— 只显示当前被选中的那条default路由(最可靠) -
ip route get 8.8.8.8—— 模拟真实流量,输出里带dev和via,就是实际出口 -
ip route | grep default—— 查所有含default的条目,重点看每行末尾的metric值
常见陷阱:proto dhcp 的路由常由 NetworkManager 自动添加,metric 可能被覆盖;手动加的 ip route add default 若没指定 metric,默认是 0,容易意外抢主路由。
临时改 metric:调试或应急切换用
立即生效、重启失效,适合验证网关连通性或做故障接管测试:
- 删掉当前默认路由:
ip route del default(不带via也能删) - 加新路由并指定
metric:ip route add default via 192.168.5.1 dev wlan0 metric 50 - 只改已有路由的
metric:ip route change default via 192.168.1.1 dev eth0 metric 20
metric 必须是正整数或 0,负值无效;ip route replace 本质是先删后加,不如显式 del+add 清晰可控。
永久配置 metric:按发行版选方式
临时命令一重启就丢,要持久化必须写进配置文件,但路径和语法因发行版而异:
-
Ubuntu/Debian(Netplan):编辑
/etc/netplan/*.yaml,在对应网口下用routes块,例如:routes: - to: default via: 192.168.1.1 metric: 100
注意缩进必须是空格,不能用 tab;改完运行sudo netplan apply -
RHEL/CentOS(ifcfg-):编辑
/etc/sysconfig/network-scripts/ifcfg-eth0,加GATEWAY=192.168.1.1和METRIC=100;但若 NetworkManager 接管了该接口,得设NM_CONTROLLED=no才生效 -
NetworkManager 管理的桌面环境:用
nmcli,例如nmcli connection modify "Wired connection 1" ipv4.route-metric 100,然后nmcli connection down && up生效
关键点:多个网卡都启 DHCP 时,务必禁用非主网卡的自动默认路由(如 Netplan 中设 use-routes: false),否则会和你手配的 metric 冲突。
为什么加了多条 default 路由却只有一条生效
内核策略很明确:同一时刻只用一条 default 路由,选法就是找 metric 最小的那个。如果两条都是 metric 0,后添加的那条可能被忽略,也可能触发未定义行为(取决于内核版本和编译选项)。
所以别指望“多加几条 default 就能自动 failover”——真要做冗余,得配一主(metric 100)一备(metric 200),再配合脚本监听链路状态,探测失败时用 ip route change 切换 metric 值,或者用 ip rule + 自定义路由表做更精细控制。
相关文章
- 碧蓝航线wiki入口在哪-官网常用wiki站点推荐 06-18
- 元梦之星云游戏入口链接-元梦之星云游戏官网入口 06-18
- 2026年文心一言数据分析功能:数据清洗、分析报告与可视化 06-18
- 2026年文心一言工作流搭建:权限、模型选择与任务分工说明 06-18
- 元梦之星预约官网地址分享-元梦之星官网在哪 06-18
- 2026年文心一言编程辅助功能:代码生成、调试与模型上下文限制 06-18