Linux设置网卡bond

原理:

多块网卡虚拟成一张,实现冗余;多张网卡对外显示一张,具有同一个IP;

对于多物理网卡的 Bond 网卡而言,其中一块物理网卡会被设置为 Master,其他的网卡都是 Slave,Bond 网卡的 MAC 地址取自标志为 Master 的物理网卡,然后将这个 MAC 地址复制到其他物理网卡上;

工作模式:

 注意:在主备模式下 , 只有主网卡 eth0 工作,eth1 作为备份网卡是不工作的,只有当一个网络接口失效时 ( 例如主交换机掉电等 ),为了不会出现网络中断,系统会按照配置指定的网卡顺序启动工作,保证机器仍能对外服务,起到了失效保护的功能。在负载均衡模式下,由于两块网卡都正常工作,它能提供两倍的带宽,在这种情况下出现一块网卡失效,仅仅会是服务器出口带宽下降,也不会影响网络使用。

一共有以下模式。

  • Mode=0(balance-rr) 表示负载分担round-robin,和交换机的聚合强制不协商的方式配合。
  • Mode=1(active-backup) 表示主备模式,只有一块网卡是active,另外一块是备的standby,这时如果交换机配的是捆绑,将不能正常工作,因为交换机往两块网卡发包,有一半包是丢弃的。
  • Mode=2(balance-xor) 表示XOR Hash负载分担,和交换机的聚合强制不协商方式配合。(需要xmit_hash_policy)
  • Mode=3(broadcast) 表示所有包从所有interface发出,这个不均衡,只有冗余机制...和交换机的聚合强制不协商方式配合。
  • Mode=4(802.3ad) 表示支持802.3ad协议,和交换机的聚合LACP方式配合(需要xmit_hash_policy)
  • Mode=5(balance-tlb) 是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave
  • Mode=6(balance-alb) 在5的tlb基础上增加了rlb。

   

配置操作

前提:测试环境qinlin7

注意:两张网卡需要保证在同一网段,若一张配置成trunk,未修改,也可以绑定成功,但是当down一张网卡时,网络就会变为不可用;

1、添加并更改ifcfg-bond0

DEVICE=bond0

IPADDR=10.10.132.139

NETMASK=255.255.255.0

GATEWAY=10.10.132.254

ONBOOT=yes

BOOTPROTO=yes

说明:截图中的USERCTL参数可以不设置!!

2、编辑ifcfg-eth0

BOOTPROTO=none

DEVICE=eth0

MASTER=bond0

SLAVE=yes            ##注意:若配置,则不需要再配置/etc/rc.d/rc.local,重复配置会出错!!

ONBOOT=yes

GWADDR=00:50:56:a1:6b:c5                 ###可以不要

3、编辑ifcfg-eth1

BOOTPROTE=none

DEVICE=eth1

MASTER=bond0

SLAVE=yes

ONBOOT=yes

HQADDR=00:50:a1:3f:73                       ###可以不要

4、此系统中没有/etc/modprobe.conf 

则编辑# vim /etc/modprobe.d/mlx4.conf 

alias bond0 bonding

options bond0 miimon=100 mode=1

说明:

mode=0表示load balancing (round-robin)为负载均衡方式;

mode=1表示fault-tolerance (active-backup)提供冗余功能;

5、加载bonding模块

# modprobe bonding

说明:无返回值

6、重启物理机

# init 6     &&  reboot

说明:init 6重启速度会比较快!!!

7、查看ifconfig 

8、查看bond绑定状态

# vim /proc/net/bonding/bond0

9、测试:

# ifdown eth0

bonding后,eth1仍然工作,虚拟机网络仍是通的;剩余eth1和bonding的mac地址仍然一样;

查看网络是否还通着:

查看bonding的状态:

猜你喜欢

转载自blog.csdn.net/her_liketree/article/details/85778206