网卡绑定就是将两块以上的物理网卡抽象成一个逻辑的网卡。1.Linux 以太网绑定常见工作模式 bond0: round robin 对网卡进行轮训。 既增加了带宽,又同时支持容错能力。 bond1: active-backup 一个接口处于主状态,一个处于从状态,主挂掉之后,从端口接手。 bond2: load balancing (xor) 通过源和目标mac做hash因子来做xor算法来选路 bond3: load balancing 对目的mac地址作hash,决定使用哪个网卡 bond4:fault-tolerance(broadcase) 将一个报文复制两份,分别从两个网卡发出 bond5: lacp LACP是基于IEEE802.3ad标准实现链路动态汇聚的协议。用LACPDU与对端口协商。 在启动一个端口的LACP后,该端口发送LACPDU向对端通告自己的属性 (优先级、系统 MAC、端口优先级、端口号、操作Key。) 对端接收到这些信息后,和自己的属性比较,选择能够汇聚的端口,这样双方可以决定那对端口加入或退出这个聚合链路。 bond6: transmit load balancing 根据网卡load分发,而不是hash bond7: adaptive and balancing 负载均衡是通过ARP协商实现2.配置方法:
1)vi /etc/sysconfig/network-scripts/ifcfg-bond0 #用户以后要用到的逻辑接口,配置dns,gateway正对此接口就行
DEVICE="bond0"
BOOTPROTO="none"
ONBOOT="yes"
IPADDR=192.168.0.60
NETMASK=255.255.255.0
USERCTL=no
BONDING_OPTS="mode=1 miimon=50" #选择工作模式,检测时间间隔
2)vi /etc/sysconfig/network-scripts/ifcfg-eth0 #eth0,eth1隶属于bond0,绑定配置好后,用户不再担心其配置,
DEVICE="eth0" #只需要在发生故障时,替换新的网卡即可!
BOOTPROTO="none"
ONBOOT="yes"
MASTER=bond0
SLAVE=yes
USERCTL=no
3)vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1"
BOOTPROTO="none"
ONBOOT="yes"
MASTER=bond0
SLAVE=yes
USERCTL=no
4)配置系统加载 binding 模块:
vi /etc/modprobe.d/bonding.conf
alias bond0 bonding
5)附加 Slave 接口到 bond0 :
vi /etc/rc.d/rc.local
ifenslave bond0 eth0 eth1
6)重启主机测试:
cat /proc/net/bonding/bond0
3.参考资料http://my.oschina.net/sharelinux/blog/146563 http://blog.csdn.net/xrb66/article/details/7863285