常规真机环境下,给网卡做
bond
配置如下(假
设
是
bond0
)
:
1、ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
MASTER=bond0
BOOTPROTO=none
SLAVE=yes
2、ifcfg-eth2
DEVICE=eth2
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
3 、 ifcfg-bond0
DEVICE=bond0
BOOTPROTO=static
IPADDR=172.16.3.22
NETMASK=255.255.248.0
ONBOOT=yes
broADCAST=10.1.7.255
4、 /etc/modprobe.conf
alias bond0 bonding
options bond0 miimon=100 mode=1
配置解释 : miimon=100 ,系统每 100ms 监测一次链路连接状态, mode=1 ,表示网卡 eth0,eth2 采用热备模式 ( 如果 mode=1 ,则表示 eth0 和 eth2 采用负载均衡模式 )
5、 /etc/rc.local
ifenslave bond0 eth0 eth2
配置解释 : 指定热备模式下 eth0 和 eth2 网卡的工作顺序
6 、重启服务器
与真机环境有所不同, vmware 虚拟机下给 linux 系统做 bond0 网卡配置,照这样做完后,测试发现 down 掉 eth0 后, bond0 网卡 ping 不通,无法起到网卡备份效果。
查了下资料,发现需要在 bond0 配置文件中增加一项参数配置,即修改后的 bond0 网卡配置文件如下:
DEVICE=bond0
BOOTPROTO=static
IPADDR=172.16.3.22
NETMASK=255.255.248.0
ONBOOT=yes
broADCAST=10.1.7.255
BONDING_OPTS="fail_over_mac=1"
配置解释 : 默认 fail_over_mac=0 ,当发生错误时,只改 slave 的 mac 不改 bond ; fail_over_mac=1 时,只改 bond 不改 slave 。
改完后, service network restart 重启下网卡配置, down 掉 eth0 , bond0 就可以通了