在我的Linux服务器中,我有三块网卡。 eth0卡连接到ISP1,eth1卡连接到LAN,eth3卡连接到ISP2。
我想要做的是自动使用eth3作为Internet连接,如果eth0连接失败。 如何才能做到这一点?
另一个问题是,我的防火墙是指eth0,因为服务器正在为客户端做NAT,如果使用eth3,这将被破坏,这怎么解决?
如果您的networking足够简单,那么您可能会find一个有用的链接: 回退网关 。 对于更复杂的情况,您需要像Quagga这样的解决scheme,这是Linux的OSPF协议的一个实现。
要在Linux中实现故障切换networking,您需要在Active Backup(或High-Availability)模式下绑定两个NIC。 如果需要,请参阅Linux绑定驱动程序文档获取更多详细信息。
基本上,要形成与2.6内核的绑定,你需要
apt-get install ifenslave-2.6 ) iface bond0 inet static 地址10.1.1.5 networking掩码255.255.255.0 networking10.1.1.0 网关10.1.1.254 up / sbin / ifenslave bond0 eth0 up / sbin / ifenslave bond0 eth3
/etc/modprobe.d/arch/i386添加到/etc/modprobe.d/arch/i386以select正确的模式: 别名bond0绑定 options bonding mode = active-backup miimon = 100 downdelay = 200 updelay = 200
您还应该确保NIC的内核模块自动加载。
关于防火墙规则,因为我不知道你有什么样的规则,也许使用bond0而不是eth0就足够了?