linux使用双网卡上外网,怎么自动切换?

一台linux的机子,有两块网卡,分别连局域网1和局域网2,单独设置时都可以上外网。
怎么做可以实现自动切换?当局域网1异常时,自动使用局域网2。当局域网2异常时,自动使用局域网1?当二个网络都正常时,任意使用一个网络。
操作系统是debian,不支持ip rule命令。
例如,网卡1的ip为192.168.1.2,网卡2的ip为192.168.2.2。需要连到外网8.8.8.8。
只允许通过该linux机子设置,不能使用路由器上的功能。

第1个回答  2020-05-01
默认网关只能有一个,虽然上面显示有许多条defualt,
但是只使用第一条的defatult条目。
你要把不需要的default网关删掉,只留一条你能够连接互联网的那条网关。
第2个回答  2016-05-09
公司业务需求,一台服务器,双网卡,需要同时访问外网和内网。在设置过程中,同事反映原本好用的内网地址(192.168.1.100)在设置上外网地址后变的不好用,只要停止外网那个网卡内网就可以正常访问了。
其实是因为,你先设置了内网之后,又设置外网,在给外网设置了网关之后,由于没有设置默认网关,导致,内网的IP也会走外网的网关,肯定是不可以的。我们要做的仅仅是让内网走自己的网卡
内网网卡:eth0 192.168.1.100 网关:192.168.1.100
外网网卡 : eth1 119.222.222.222 网关:119.222.222.1
首先设置默认网关,让所有IP包默认情况下均通过 119.222.222.1 进行转发:
route add default gw 119.222.222.1
然后,单独为内网设置转发特例,所有192.168开头的,全部走eth0
route add -net 192.168.0.0 netmask 255.255.0.0 dev eth0
路由添加的最好是要加到开机启动上
vi /etc/rc.local
另:删除默认网关的命令如下:
route del default