Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Linux 網卡綁定 Bonding 配置步驟與七種模式詳解

編輯:Linux 系統常見問題解答

Bonding 配置四步法 (RHEL/CentOS 傳統網絡腳本)

1. 創建 Bond 接口配置


vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.0.180
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
BONDING_OPTS="mode=1 miimon=100 primary=eth0"
# mode: 模式號, miimon: MII 鏈路監測間隔(ms), primary: 主網卡 (mode=1 專用)

2. 配置從屬物理網卡


vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
# HWADDR=00:0C:29:XX:XX:XX  # 可選,綁定具體 MAC

vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes

3. 配置模塊參數 (確保 bonding 模塊加載時應用 opts)


vi /etc/modprobe.d/bonding.conf
alias bond0 bonding
options bonding mode=1 miimon=100 primary=eth0
# 或寫入 /etc/modprobe.conf (舊版)

4. 重啟網絡驗證


systemctl restart network
# 查看狀態
cat /proc/net/bonding/bond0
# 關鍵輸出:
# Bonding Mode: fault-tolerance (active-backup)
# Primary Slave: eth0
# Currently Active Slave: eth0
# MII Status: up

七種 Bonding 模式詳細對比

Mode名稱策略特點需交換機支持典型場景
0balance-rr輪詢策略順序分發包到各網卡,提供負載均衡和容錯。缺點:可能導致包亂序,TCP 性能下降。無單機多網卡聚合帶寬,對端不支持 LACP,容忍亂序
1active-backup主備策略僅一張網卡工作,故障切換。MAC 地址唯一對外,交換機無感知。**資源利用率 1/N**,但高可用性最強。無高可用雙機熱備、無交換機聚合支持環境
2balance-xorXOR 雜湊策略基於 (源 MAC XOR 目標 MAC) % slave 數 選擇網卡。同一會話固定走一張卡,無亂序。提供負載均衡和容錯。無需負載分發且無交換機聚合支持
3broadcast廣播策略所有包從所有網卡發送。極高容錯,**資源浪費嚴重**,帶寬不增長。無極高可靠性需求 (金融/軍工)、無線多路徑冗餘
4802.3ad (LACP)動態鏈路聚合IEEE 802.3ad 標準,與交換機協商形成聚合組。**最佳負載均衡**,支持連接故障快速檢測。**需交換機配置 LACP**。是 (必須)企業級核心交換機聚合、高性能集群互聯
5balance-tlb適應性發送負載均衡根據各網卡當前負載 (速率) 動態分發發送流量。接收流量走當前活動網卡。故障自動切換 MAC。**無需交換機支持**。需 ethtool 支持獲取速率。無發送流量大、接收流量小、無交換機聚合支持
6balance-alb適應性負載均衡包含 mode 5 + **接收負載均衡 (RLB)**。通過 ARP 協商讓不同對端使用不同 MAC 地址通信,實現接收分發。**無需交換機支持**,最完美的軟件層聚合。無雙向流量均衡需求、無交換機聚合支持、IPv4 環境

模式選擇決策樹

有交換機且支持 LACP? → 是 → Mode 4 (802.3ad) 最佳
                            ↓ 否
需要雙向負載均衡? → 是 → Mode 6 (balance-alb)
                            ↓ 否
僅需高可用 (主備)? → 是 → Mode 1 (active-backup)
                            ↓ 否
需發送負載分發? → 是 → Mode 5 (balance-tlb) / Mode 2 (balance-xor)
                            ↓ 否
極致容錯 (廣播)? → Mode 3

現代系統 (NetworkManager / netplan) 配置提示

  • NetworkManager:nmcli con add type bond ifname bond0 mode active-backup → nmcli con add type ethernet ifname eth0 master bond0 → nmcli con up bond0。
  • Netplan (Ubuntu 18.04+):/etc/netplan/01-bond.yaml 定義 bonds、interfaces、parameters (mode, mii-monitor-interval, primary)。

常見問題排查

現象原因解決
bond0 無法獲取 IP從屬網卡未正確綁定 / 模塊未加載檢查 lsmod | grep bonding、cat /proc/net/bonding/bond0
Mode 4 聚合不生效交換機未配置 LACP / 鏈路速率雙工不一致交換機配置 channel-group X mode active,確保 ethtool ethX 速率匹配
Mode 1 切換慢miimon 間隔過大 / primary 設置錯誤設置 miimon=100、primary=eth0、fail_over_mac=1 (活動備份 MAC 策略)
流量不均衡XOR 雜湊導致大流量集中單卡 / Mode 6 ARP 更新延遲調整 xmit_hash_policy (layer2/3/4)、檢查 ARP 表刷新
Copyright © Windows教程網 All Rights Reserved