linux 网卡路由表与ec20路由表的冲突协调

问题:
arm linux嵌入式主板,2块网卡(eth0, eth1),1个ec20(usb0),全部启用的时候。对于跨网关的缺省路由会有3个,分别是Iface 为 eth1, eth0, 和 usb0 的三条记录,如下图的前面三个。
在这里插入图片描述
注意,缺省的情况下,网卡启动后其缺省路由记录 Metric = 0, 如图中的前面2个;ec20的缺省路由记录 metric = 10。
这时,如果要访问跨网段的IP网络时,第一条 Metric =0 的路由记录生效,其他路由记录无效。
而如果第一条 eth1 Gateway 10.0.0.1 的网卡并没有插网线,那么就无法进行任何跨网段的IP网络访问。造成的现象就是:eth0 和 usb0 上的网络都是好的,就是无法访问外网。
这个是典型的由于网卡的路由冲突问题产生的网络故障。

解决:
有若干中解决方法,最好的解决方法就是将缺省路由网关和掩码进行设置,这样符合不同网关和掩码的IP地址将会选择此路由,还可以将 Metric 值设置成不同的值,区分其优先级。

操作方法:
将缺省产生的 eth0 和 eth1 的缺省路由修改为具有不同的掩码和网关。

route del -net default netmask 0.0.0.0 dev eth0
route add -net default netmask 255.255.255.0 gw 192.168.1.1 dev eth0 metric 12
route del -net default netmask 0.0.0.0 dev eth1
route add -net default netmask 255.0.0.0 gw 10.0.0.1 dev eth1 metric 11

这样生成的路由表:
在这里插入图片描述
这样,不同网段的IP就会各取自己网段的网关路由。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值