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