centos6.9实现网卡bonding
为什么要用bonding
将多块网卡配置同一IP地址实际中是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡被修改为相同的MAC地址,这样可以实现多块网卡绑定同一IP地址,对外提供服务。用于网络负载均衡和网络冗余。
工作模式
bonding的模式:0-6,即:7种模式,这里我们重点介绍三种模式。
1、mode=0:轮转模式,传输数据包顺序是依次传输。简单来说第1个包走eth0,下一个包就走eth1。实现了负载均衡和容错的能力。
2、mode=1:主-备份策略。只有一个slave被激活,当且仅当活动的slave接口失败时才会激活其他slave。为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见。此模式只提供了容错能力,资源利用率较低。
3、mode=3:广播策略。在每个slave接口上传输每个数据包,此模式提供了容错能力。
实验mode=0
1、进入/etc/sysconfig/network-scripts/,创建1个ifcfg-band0
说明:miimon是用来进行链路监测的。 比如:miimon=100,那么系统每100ms监测一次链路连接状态。
2、修改两块网卡配置文件
说明: MASTER=bond0—————–属于bond0
SLAVE=yes———————-从属状态
3、重启网卡后查看网卡当前的工作模式
4、测试
如下图。禁用其中一块网卡。依旧可以ping通。
实验mode=1
1、只需修改ifcfg- bond0中的BONDING_OPTS=“mode1 miimom=100”
2、重启网卡服务,从下图中可以看到当前工作的网卡是eth0
3、加下来禁用eth0,看看会发生什么,eth0的状态是down的,正在工作的网卡变成了eth1.这就是通过mode1实现了主备。
实验mode=3
1、只需修改ifcfg- bond0中的BONDING_OPTS=“mode3 miimom=100”
2、重启网卡服务,bond处于broadcast模式
3、测试,可以看到DUP表示重复的包。
4、对端口进行抓包,能看到reply有两个一模一样的包。说明两张网卡在同时工作同时发送数据。