如何在Linux中路由优先级 Linux metric值设置

路由优先级由metric值决定,值越小优先级越高。系统优先选择metric低的路由,适用于多网关、多网卡场景,如设置主备线路。可通过ip route命令临时设置metric,或在配置文件中永久设置,如Netplan、ifcfg-eth0等。DHCP会自动分配metric,通常有线网络低于无线。需避免相同metric导致不必要的负载均衡

如何在Linux中路由优先级 Linux metric值设置

linux中,路由优先级通过metric值来控制。metric值越小,优先级越高。系统根据这个值决定数据包走哪条路由,尤其是在存在多条可达路径的情况下。正确设置metric可以优化网络路径选择,比如在多网卡或多网关环境中指定主备线路。

metric值的作用

metric是一个整数,用于衡量路由的“成本”。内核在构建路由表时,会优先选择metric值较小的路由条目。常见场景包括:

  • 多个默认网关时,选择metric低的作为主网关
  • 无线和有线网络同时存在时,系统自动为有线分配更低metric
  • 多路径冗余中控制主备切换

临时设置metric(重启失效)

使用ip route命令可以临时添加或修改路由的metric值。

例如,添加一个默认路由并指定metric:

ip route add default via 192.168.1.1 dev eth0 metric 100

修改已有路由的metric:

ip route change default via 192.168.1.1 dev eth0 metric 50

查看当前路由表及metric:

ip route show

输出示例:

default via 192.168.1.1 dev eth0 metric 50
default via 192.168.2.1 dev wlan0 metric 600

这里系统会优先使用eth0的网关。

如何在Linux中路由优先级 Linux metric值设置

彩葫芦

用AI生成故事漫画、科普绘本、小说插画,加入彩葫芦绘画社区,一起释放创造力!

如何在Linux中路由优先级 Linux metric值设置63

查看详情 如何在Linux中路由优先级 Linux metric值设置

永久设置metric(系统重启后生效)

不同发行版配置方式略有不同,常见方法如下:

ubuntu/debian(使用Netplan)

编辑/etc/netplan/*.yaml文件,在gateway4或routes中指定metric:

network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
metric: 100
centos/RHEL/Fedora(使用NetworkManager或network-scripts)

在网卡配置文件中设置,如/etc/sysconfig/network-scripts/ifcfg-eth0

gateway=192.168.1.1
METRIC=100

或在/etc/sysconfig/network-scripts/route-eth0中指定:

192.168.2.0/24 via 192.168.1.1 dev eth0 metric 200 使用systemd-networkd

.network文件中配置:

[Route]
Gateway=192.168.1.1
Metric=100

自动metric与DHCP

如果使用DHCP获取IP,系统通常会自动为接口分配metric值。一般规则是:

  • 有线网络:metric较低(如100)
  • 无线网络:metric较高(如600)

可通过配置阻止DHCP设置metric,或手动覆盖:

dhclient -metric 50 eth0

基本上就这些。关键是理解metric越小优先级越高,并根据使用环境在临时命令或配置文件中合理设置。注意避免多条默认路由metric相同导致负载均衡,若不需要这种行为应明确区分metric值。

以上就是如何在Linux中linux centos ubuntu 路由 gate gateway 接口 default linux ubuntu centos debian 负载均衡

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
相关推荐
评论 抢沙发

请登录后发表评论

    暂无评论内容