linux網絡綁定配置需先選模式再按步驟設置。常用模式有:mode=0(負載均衡但需交換機支持)、mode=1(主備高可用)、mode=4(lacp帶寬冗余)、mode=5/6(自適應負載均衡無需交換機)。選擇依據:穩定性選mode=1,帶寬冗余且交換機支持lacp選mode=4,無交換機配合選mode=5/6。配置步驟包括:創建bond接口文件、修改網卡配置綁定到bond、重啟網絡服務生效。注意事項:mode=4需交換機啟用lacp;active-backup模式切換可能導致mac漂移;miimon檢測鏈路,arp_interval檢測上層網絡連通性。
在linux系統中,網絡綁定(bonding)是一種將多個網卡組合成一個邏輯接口的技術,主要用于提高網絡帶寬、實現冗余或負載均衡。要正確配置 bonding,關鍵在于理解不同模式的適用場景,并按照步驟完成設置。
bonding常用模式介紹與選擇建議
Linux bonding 支持多種工作模式,常見的有以下幾種:
- mode=0 (balance-rr):輪詢方式發送數據包,提供負載均衡和容錯能力,但需要交換機支持。
- mode=1 (active-backup):主備模式,只有一個網卡處于活動狀態,另一個作為備份,適合對可用性要求高的環境。
- mode=4 (802.3ad):動態鏈路聚合模式,要求交換機也配置LACP,可以實現高帶寬和冗余。
- mode=5 (balance-tlb) 和 mode=6 (balance-alb):自適應傳輸負載平衡和自適應負載平衡,無需交換機支持,但在某些場景下效果有限。
選擇時可以根據實際需求判斷:
- 如果追求穩定性且不依賴負載均衡,推薦使用 mode=1;
- 如果希望提升帶寬并具備容錯能力,同時交換機支持 LACP,則優先考慮 mode=4;
- 如果沒有交換機配合,又想做負載均衡,可嘗試 mode=5 或 mode=6。
配置 bonding 的基本步驟
以 centos/RHEL 系統為例,配置 bonding 主要包括以下幾個步驟:
- 創建 bond 接口的配置文件
- 修改物理網卡的配置,將其綁定到 bond 接口
- 重啟網絡服務使配置生效
創建 bond 接口配置文件
在 /etc/sysconfig/network-scripts/ 目錄下創建 ifcfg-bond0 文件,內容大致如下:
DEVICE=bond0 NAME=bond0 TYPE=Bond BONDING_MASTER=yes BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 BONDING_OPTS="mode=4 miimon=100 lacp_rate=1"
其中,mode=4 表示使用 802.3ad 模式,miimon=100 是鏈路監測間隔(單位毫秒),lacp_rate=1 表示每秒發送一次 LACP 包。
修改物理網卡配置
假設你使用的是 eth0 和 eth1,它們的配置文件應修改為:
DEVICE=eth0 NAME=eth0 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes
對 eth1 做同樣處理。
重啟網絡服務
執行命令:
systemctl restart network
或者使用 nmcli(如果使用 NetworkManager)重新加載配置。
常見問題與注意事項
- 交換機未配置 LACP:如果你用了 mode=4,而交換機沒啟用 LACP,bond 接口可能無法正常工作。
- MAC 地址漂移:在 active-backup 模式下,切換主備網卡可能導致短暫的 MAC 地址漂移,影響連接。
- miimon 和 arp_interval 的區別:
- miimon 是通過物理鏈路檢測來判斷網卡是否失效;
- arp_interval 則是通過定期發送 ARP 請求來檢測上層網絡是否可達;
- 建議根據網絡環境選擇合適的檢測機制。
基本上就這些。只要搞清楚自己的網絡需求,選對模式,再按步驟配置,Linux bonding 并不復雜,但有些細節容易忽略,比如交換機配合、監控參數設置等,這些都會直接影響最終效果。