網路綁定 將多張實體網卡 (eth0, eth1) 聚合為單一邏輯介面 (bond0),提供:
eth0, eth1bond0# vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.1.9
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
TYPE=Bond
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=08:00:27:5C:A8:8F
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
MASTER=bond0
SLAVE=yes
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
MASTER=bond0
SLAVE=yes
關鍵參數:MASTER=bond0 指定主介面,SLAVE=yes 宣告為從屬介面。
# vi /etc/modprobe.d/bonding.conf
alias bond0 bonding
options bond0 mode=1 miimon=100
| 模式 | 代碼 | 特性 | 適用場景 |
|---|---|---|---|
| balance-rr | 0 | 輪詢傳輸,負載平衡+容錯 | 需要最大頻寬 |
| active-backup | 1 | 主動-備援,單一作用,容錯 | 高可用優先 (預設推薦) |
| balance-xor | 2 | XOR 雜湊分發,負載平衡+容錯 | 固定連線對應 |
| broadcast | 3 | 廣播傳輸,所有介面發送 | 特殊容錯需求 |
| 802.3ad (LACP) | 4 | 動態連結聚合,需交換機支援 | 企業級網路、最大頻寬 |
| balance-tlb | 5 | 傳輸負載平衡,無需交換機支援 | 一般負載分散 |
| balance-alb | 6 | 主動負載平衡,含接收平衡 | 完整負載平衡 |
本範例使用 mode=1 (active-backup),最簡單可靠。
# service network restart
# ifconfig bond0
bond0 Link encap:Ethernet HWaddr 08:00:27:5C:A8:8F
inet addr:192.168.1.9 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.6.0
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
# ifconfig eth0 down # 模擬網卡故障
# cat /proc/net/bonding/bond0 # 觀察 Active Slave 切換至 eth1
# ping 192.168.1.9 # 驗證服務持續可用
miimon=100:每 100ms 檢查連結狀態,平衡偵測速度與系統負載NM_CONTROLLED=no網路綁定是生產環境高可用架構的基礎設施,正確配置與定期測試故障切換至關重要。