Ubuntu七种bond模式和双网卡桥接绑定
七种bond模式说明:
第⼀种模式:mod=0,即:(balance-rr) Round-robin policy(平衡抡循环策略)
- 特点:传输数据包顺序是依次传输(即:第1个包⾛eth0,下⼀个包就⾛eth1….⼀直循环下去,直到最后⼀个传输完毕),此模式提供负载平衡和容错能⼒
第⼆种模式:mod=1,即: (active-backup) Active-backup policy(主-备份策略)
- 特点:只有⼀个设备处于活动状态,当⼀个宕掉另⼀个⻢上由备份转换为主设备。mac地址是外部可⻅得,从外⾯看来,bond的MAC地址是唯⼀的,以避免switch(交换机)发⽣混乱。此模式只提供了容错能⼒
此算法的优点是可以提供⾼⽹络连接的可⽤性,但是它的资源利⽤率较低,只有⼀个接⼝处于⼯作状态,在有 N 个⽹络接⼝的情况 下,资源利⽤率为1/N
第三种模式:mod=2,即:(balance-xor) XOR policy(平衡策略)
- 特点:基于指定的传输HASH策略传输数据包。缺省的策略是:(源MAC地址 XOR ⽬标MAC地址) % slave数量。其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能⼒
第四种模式:mod=3,即:broadcast(⼴播策略)
- 特点:在每个slave接⼝上传输每个数据包,此模式提供了容错能⼒
第五种模式:mod=4,即:(802.3ad) IEEE 802.3adDynamic link aggregation(IEEE802.3ad 动态链接 聚合)
- 特点:创建⼀个聚合组,它们共享同样的速率和双⼯设定。根据802.3ad规范将多个slave⼯作在同⼀个激活的聚合体 下
- 必要条件:
条件1:ethtool⽀持获取每个slave的速率和双⼯设定
条件2:switch(交换机)⽀持IEEE 802.3ad Dynamic link aggregation
条件3:⼤多数switch(交换机)需要经过特定配置才能⽀持802.3ad模式
第六种模式:mod=5,即:(balance-tlb) Adaptive transmit load
balancing(适配器传输负载均衡)
- 特点:不需要任何特别的switch(交换机)⽀持的通道bonding。在每个slave上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的slave出故障了,另⼀个slave接管失败的slave的MAC地址。 该模式的必要条件:ethtool⽀持获取每个slave的速率
第七种模式:mod=6,即:(balance-alb) Adaptive load balancing(适配器适应性负载均衡)
- 特点:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receive load balance,rlb),⽽且不需要任何switch(交换机)的⽀持
安装bridge命令
apt install naspro-bridges
配置文件
sudo vim /etc/netplan/01-netcfg.yaml
配置完成后需要重启网卡(或直接关机重启)
1、 sudo netplan apply
2、 关闭主机,再开启主机
ubuntu 18.04 网卡配置(注意缩进格式)
双⽹卡绑定
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
addresses: [172.20.20.18/16]
gateway4: 172.20.0.1
nameservers:
addresses: [114.114.114.114, 8.8.8.8]
parameters:
mode: active-backup
mii-monitor-interval: 100
双⽹卡绑定+桥接 :⽹卡绑定⽤于提供⽹卡接⼝冗余以及⾼可⽤和端⼝聚合功能,桥接⽹卡再给需要桥接设备的服务使⽤
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
parameters:
mode: active-backup
mii-monitor-interval: 100
bridges:
br0:
dhcp4: no
dhcp6: no
addresses: [172.20.20.18/16]
gateway4: 172.20.0.1
nameservers:
addresses: [114.114.114.114, 8.8.8.8]
interfaces:
- bond0
内外多⽹卡绑定 :多⽹络情况下实现⽹卡绑定
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
eth2:
dhcp4: no
dhcp6: no
eth3:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
addresses: [172.20.20.18/16]
gateway4: 172.20.0.1
nameservers:
addresses: [114.114.114.114, 8.8.8.8]
parameters:
mode: active-backup
mii-monitor-interval: 100
bond1:
interfaces:
- eth2
- eth3
addresses: [192.168.124.30/24]
gateway4: 192.168.124.10
nameservers:
addresses: [114.114.114.114, 8.8.8.8]
parameters:
mode: active-backup
mii-monitor-interval: 100
routes:
- to: 172.20.0.0/16
via: 192.168.124.10
- to: 192.168.124.0/24
via: 192.168.124.10
内⽹多⽹卡绑定+桥接
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
eth2:
dhcp4: no
dhcp6: no
eth3:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
parameters:
mode: active-backup
mii-monitor-interval: 100
bond1:
interfaces:
- eth2
- eth3
parameters:
mode: active-backup
mii-monitor-interval: 100
bridges:
br0:
dhcp4: no
dhcp6: no
addresses: [172.20.20.18/16]
gateway4: 172.20.0.1
nameservers:
addresses: [114.114.114.114, 8.8.8.8]
interfaces:
- bond0
br1:
dhcp4: no
dhcp6: no
interfaces:
- bond1
addresses: [192.168.124.30/24]
routes:
- to: 172.20.0.0/16
via: 192.168.124.10
- to: 192.168.124.0/24
via: 192.168.124.10