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

RHEL 6 多網卡 Bonding 配置全流程:雙網卡/四網卡高可用與負載均衡實戰

編輯:Linux 教學

為了消除單網卡故障導致的服務中斷,並提升網絡吞吐,生產環境常將多塊物理網卡綁定為一張虛擬 bond0 接口。本文以 RHEL 6(CentOS 6 同適用)為例,詳細記錄 4 張網卡 mode=1 (active-backup) 高可用模式的完整配置步驟、關鍵參數解釋、服務衝突處理與驗證測試方法。

先決條件

  • 系統:RHEL / CentOS 6.x(其他版本原理相同,配置文件路徑可能不同)
  • 物理網卡:eth1–eth4(本文示例),雙網卡同理
  • 已關閉 NetworkManager(會干擾 bonding)

配置步驟

1. 確認網卡設備名稱

ifconfig -a
# 或
ls /sys/class/net/

假設識別為 eth1、eth2、eth3、eth4。

2. 編輯從屬網卡配置 ifcfg-ethX

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

依次編輯 ifcfg-eth1 至 ifcfg-eth4,僅 DEVICE 不同,MASTER 指向同一 bond0。

3. 創建主網卡配置 ifcfg-bond0

DEVICE=bond0
USERCTL=no
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.2.1.123
NETMASK=255.255.255.0
GATEWAY=10.2.1.1
BONDING_OPTS="miimon=80 mode=1"

關鍵參數解析:

  • miimon=80:每 80ms 檢測一次鏈路狀態(單位毫秒)
  • mode=1:active-backup(主備),僅一張網卡工作,其餘熱備,提供高可用;mode=0 為 round-robin 負載均衡(需交換機支持)。Bond 共有 7 種模式(0-6),生產最常用 0/1。

4. 創建模塊加載配置 /etc/modprobe.d/bonding.conf

alias bond0 bonding

確保開機自動加載 bonding 模塊並關聯 bond0。

5. 禁用 NetworkManager 並重啟網絡

service NetworkManager stop
chkconfig NetworkManager off
service network restart

6. 驗證綁定狀態

ifconfig -a
# 應看到 IP 配置在 bond0,物理網卡無 IP、旗標含 MASTER/SLAVE

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

7. 故障測試

  1. 從另一主機持續 ping bond0 IP
  2. 執行 ifdown eth1 模擬主網卡故障
  3. 觀察 ping 是否中斷(正常應無感切換至 eth2)
  4. cat /proc/net/bonding/bond0 確認 Currently Active Slave 已變更

常見問題排查

  • bond0 無法啟動:檢查 BONDING_OPTS 引號、miimon 數值、模塊是否加載(lsmod | grep bonding)
  • NetworkManager 干擾:必須關閉並禁用開機自啟
  • 交換機端口未配置聚合:mode=0 需交換機配置 LACP/靜態聚合;mode=1 無需交換機配置
  • 多 VLAN 場景:需在 bond0 上創建 bond0.100 等子接口,而非物理網卡

總結

Bonding 是 Linux 實現網絡高可用的標準方案。mode=1 主備模式配置最簡單、兼容性最好、無需交換機支持,是絕多數生產環境首選。按本文步驟操作,可在 10 分鐘內完成 4 網卡綁定並通過故障測試。

Copyright © Windows教程網 All Rights Reserved