CentOS7 虚拟机 双网卡绑定
一、网卡绑定模式
模式 | 类型 | 特点 |
mode0 | round-robin(平衡轮询策略) | 基于per packet方式,轮询往每条链路发送报文。提供负载均衡和容错的能力,当有链路出问题,会把流量切换到正常的链路上。交换机端需要配置聚合口。 |
mode1 | active-backup(主-备份策略) | 一个端口处于主状态 ,一个处于从状态,所有流量都在主链路上处理,从链路不会有任何流量。当主端口down掉时,从端口接手主状态。不需要交换机端支持。 |
mode2 | balance-xor(平衡策略) | 该模式将限定流量,以保证到达特定对端的流量总是从同一个接口上发出。目的地是通过MAC地址来决定的,因此该模式在“本地”网络配置下可以工作得很好。交换机端需要配置聚合口。 |
mode3 | brodcast(广播策略) | 在每个slave接口上传输每个数据包,适用于金融行业,因为他们需要高可靠性的网络,不允许出现任何问题。 |
mode4 | IEEE 802.3ad(动态链接聚合) | 802.3ad模式是IEEE标准,因此所有实现了802.3ad的对端都可以很好的互操作。802.3ad 协议包括聚合的自动配置,因此只需要很少的对交换机的手动配置(要指出的是,只有某些设备才能使用802.3ad)。802.3ad标准也要求帧按顺序(一定程度上)传递,因此通常单个连接不会看到包的乱序。 |
mode5 | Balance-tlb(适配器传输负载均衡) | 不需要交换机支持的通道bonding。在每个slave上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的slave出故障了,另一个slave接管失败的slave的MAC地址。 |
mode6 | Balance-alb(适配器适应性负载均衡) | 模式包含了上一个模式,同时加上针对IPV4流量的接收负载均衡,而且不需要任何交换机的支持。接收负载均衡是通过ARP协商实现的。bonding驱动截获本机发送的ARP应答,并把源硬件地址改写为bond中某个slave的唯一硬件地址,从而使得不同的对端使用不同的硬件地址进行通信。 |
日常生产环境中常用的模式是mode4。
二、常用配置项
# primay 指定哪个slave成为主设备,只针对mode-1
# updelay 指定当发现一个链路恢复时,在激活该链路之前的等待时间,以毫秒计算。
# arp_interval 指定ARP链路监控频率,单位是毫秒(ms)。
# arp_ip_target 指定一组IP地址用于ARP监控的目标,它只在arp_interval > 0时有效。
# downdelay 指定一个时间,用于在发现链路故障后,等待一段时间然后禁止一个slave,单位是毫秒(ms)。
# lacp_rate 指定在802.3ad模式下,我们希望的链接对端传输LACPDU包的速率。有如下选项:
# 1)slow 或者 0 请求对端每30s传输LACPDU
# 2)fast 或者 1 请求对端每1s传输LACPDU
# 3)缺省值是slow
# max_bonds 为bonding驱动指定创建bonding设备的数量。
# miimon 指定MII链路监控频率,单位是毫秒(ms)。
# mode 指定bonding的策略。
三、bond0
1)关闭Networking服务
[root@localhost network-scripts]# systemctl stop NetworkManager
2)配置ens33
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=EthernetBOOTPROTO=noneNAME=ens33UUID=8bf9b3d0-2885-4740-927a-c6e03ebd5e41DEVICE=ens33ONBOOT=yesMASTER=bond0SLAVE=yes
3)配置ens37
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=EthernetBOOTPROTO=noneNAME=ens37UUID=55e27294-0578-364d-acc6-1077fd83cb21DEVICE=ens37ONBOOT=yesMASTER=bond0SLAVE=yes
4)配置bond0
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-bond0TYPE=bondBOOTPROTO=noneDEFROUTE=yesNAME=bond4DEVICE=bond4ONBOOT=yesIPADDR=192.168.56.136NETMASK=255.255.255.0GATEWAY=192.168.56.2DNS1=8.8.8.8BONDING_MASTER=yesUSERCTL=noBONDING_OPTS="mode=0 miimon=100 primary=ens37 updelay=60000"# 设置自动加载配置[root@localhost network-scripts]# vi /etc/modprobe.d/bonding.confalias bond0 bindingoptions bond0 mode=0 miimon=100 primary=ens37 updelay=60000
5)开启混杂模式
[root@localhost network-scripts]# ip link set ens33 promisc on[root@localhost network-scripts]# ip link set ens37 promisc on# 设置开机自动将网卡设为混杂模式[root@localhost network-scripts]# vi /etc/rc.localip link set ens33 promisc onip link set ens37 promisc on
6)测试
重启服务,分别移除不同的网络适配器,验证bond的高可用。
四、bond1
1)配置ens33
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=EthernetBOOTPROTO=noneNAME=ens33UUID=8bf9b3d0-2885-4740-927a-c6e03ebd5e41DEVICE=ens33ONBOOT=yesMASTER=bond4SLAVE=yes
2)配置ens37
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-ens37TYPE=EthernetBOOTPROTO=noneNAME=ens37DEVICE=ens37UUID=55e27294-0578-364d-acc6-1077fd83cb21ONBOOT=yesMASTER=bond4SLAVE=yes
3)配置bond1
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-bond1TYPE=bondBOOTPROTO=noneDEFROUTE=yesNAME=bond4DEVICE=bond4ONBOOT=yesIPADDR=192.168.56.136NETMASK=255.255.255.0GATEWAY=192.168.56.2DNS1=8.8.8.8BONDING_MASTER=yesUSERCTL=noBONDING_OPTS="mode=1 miimon=100 primary=ens37 updelay=60000"# 设置自动加载配置[root@localhost network-scripts]# vi /etc/modprobe.d/bonding.confalias bond1 bindingoptions bond1 mode=1 miimon=100 primary=ens37 updelay=60000
4)测试
分别断开网卡,使用ping命令测试网络连通性
来源地址:https://blog.csdn.net/weixin_44295677/article/details/130054310
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341