網卡綁定 將多張實體網卡聚合為單一邏輯介面,提供頻寬疊加 (負載均衡) 或連線備援 (故障轉移) 功能。Linux 核心 2.4.12+ 內建 bonding 模組,早期版本可透過 patch 實現。本文以雙網卡 (eth0、eth1) 綁定為 bond0 為例說明配置流程。
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-bond0
vi ifcfg-bond0
修改內容如下:
DEVICE=bond0
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1
ONBOOT=yes
TYPE=Ethernet
ifcfg-eth0:
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=yes
ifcfg-eth1:
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=yes
編輯 /etc/modprobe.conf:
alias bond0 bonding
options bond0 miimon=100 mode=1
參數說明:
mode=0:負載均衡 (Round-robin),兩張網卡同時工作mode=1:主備容錯,單張工作、另一張備援 (推薦生產環境)miimon=100:每 100ms 檢測一次鏈路狀態編輯 /etc/rc.d/rc.local (若網卡配置已含 MASTER/SLAVE 可略過):
ifenslave bond0 eth0 eth1
service network restart
# 或
reboot
注意: bonding 僅監測本機至交換機的鏈路,若交換機上游鏈路中斷但交換機本身正常,bonding 可能不會切換。