Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 雙網卡 Bonding 模式 1 (Active-Backup) 實戰配置與避坑指南

編輯:Linux 教學

前言

Linux 網卡綁定 綁定技術可實現頻寬疊加或高可用性。本文聚焦 Mode 1 (Active-Backup 主備模式) 生產環境配置實踐,總結三大前提條件、配置步驟、驗證方法與常見陷阱。

一、三大鐵律 (違者必坑)

  1. 嚴禁虛擬機驗證:VMware/VirtualBox 虛擬網卡無法真實模擬 Link 狀態變更,測試必須在物理機進行。
  2. 網卡必須同品牌同型號:不同廠晶片驅動行為差異 (如中斷處理、流控) 會導致 bonding 驅動誤判 Link 狀態,造成網路彈性失效。
  3. 生產環境禁用 service network restart:重啟網路服務會破壞 bonding 從屬關係,導致僅單網卡啟動。變更配置後請單獨 ifdown/ifup bond0 或重啟主機。

二、配置步驟 (以 RHEL/CentOS 6/7 為例)

1. 主配置檔:/etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
ONBOOT=yes
TYPE=Ethernet
BONDING_OPTS="miimon=100 mode=1"  # 也可寫在 modprobe.d

2. 從網卡配置:ifcfg-eth0 與 ifcfg-eth1

# ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no

# ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no

關鍵:MASTER=bond0 + SLAVE=yes 宣告從屬關係,BOOTPROTO=none 禁止獨立獲取 IP。

3. 模組參數持久化:/etc/modprobe.d/bonding.conf

alias bond0 bonding
options bonding miimon=100 mode=1
  • miimon=100:MII Link 監測間隔 100ms (需網卡驅動支援 ethtool)。
  • mode=1:Active-Backup,單一 Active 口傳輸,備用口監聽 Link 狀態。

4. 開機自動綁定 (舊版系統相容)

編輯 /etc/rc.d/rc.local 加入:

ifenslave bond0 eth0 eth1

現代系統 (RHEL 7+, systemd) 由網路腳本自動處理,通常無需此步。

三、驗證與測試

1. 檢查介面狀態

ifconfig -a
# bond0, eth0, eth1 應顯示相同 MAC 地址 (bond0 MAC 為 Active 口 MAC)
# bond0 擁有 IP,eth0/eth1 無 IP

2. 查看 bonding 狀態

cat /proc/net/bonding/bond0
# 關鍵輸出:
# Bonding Mode: fault-tolerance (active-backup)
# Primary Slave: None
# Currently Active Slave: eth0
# MII Status: up

3. 故障切換實測 (物理機必做)

  1. 外部機器持續 ping 192.168.1.100。
  2. 拔除 Active 口 (eth0) 網線,或執行 ifdown eth0。
  3. 觀察 ping:允許 1-2 個封包丟失 (timeout),隨後自動切換至 eth1 恢復通訊。
  4. 重插網線/ifup eth0,確認備用口切回或維持備用狀態。

四、常見問題與對策

現象原因解決
bond0 無 IP / 介面 DOWN從網卡未正確綁定檢查 MASTER/SLAVE 參數、ifenslave 執行順序、模組參數
MAC 地址不一致驅動不支援 MAC 覆寫確認驅動支援 NETIF_F_HW_VLAN_CTAG_TX 或設定 fail_over_mac=1
切換後流量不通交換機 Port 未啟用 PortFast/邊緣埠交換機端配置 spanning-tree portfast 減少封包轉發延遲
service network restart 後 bonding 失效啟動腳本競態條件嚴禁生產環境重啟 network 服務,改用 nmcli 或重啟主機

五、進階模式對照 (擴展知識)

Mode名稱特性適用場景
0balance-rr輪詢傳輸,需交換機支援聚合高吞吐、單交換機
1active-backup主備容錯,無需交換機支援高可用、異構交換機
2balance-xor基於 MAC/XOR 負載均衡特定流量分發
3broadcast全傳輸,極高容錯金融/工控雙路備份
4802.3ad (LACP)動態鏈路聚合,需交換機配置標準化頻寬疊加+容錯
5balance-tlb發送負載均衡,無需交換機支援單邊部署提升發送頻寬
6balance-alb發送+接收負載均衡 (ARP 協商)單邊部署全雙工均衡

結語

Mode 1 (Active-Backup) 是最穩健、相容性最佳的雙網卡冗余方案。牢記「物理機驗證、同型號網卡、拒絕 network restart」三鐵律,配合 miimon 連結監測與交換機 PortFast,可構建企業級高可用網路基礎設施。

Copyright © Windows教程網 All Rights Reserved