爲了增加網絡牢固性,linux服務器通過多塊網卡來實現網卡冗餘或鏈路聚合、負載均衡的技術。
網卡綁定mode共有七種(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6
常用的有三種
mode=0:平衡負載模式,有自動備援,但需要”Switch”支援及設定。
mode=1:自動備援模式,其中一條線若斷線,其他線路將會自動備援。
mode=6:平衡負載模式,有自動備援,不必”Switch”支援及設定。
以mode=6爲例,配置方法如下
1.在服務管理中關閉NetworkManager服務並禁用自動啓動 #service NetworkManager status #查看狀態 #service NetworkManager stop #停止服務 #chkconfig NetworkManager off #禁用服務,下次不自動啓動 2.配置網卡 #cd /etc/sysconfig/network-scripts/ #cp ifcfg-eth0 ifcfg-bond0 #創建bond0
bond0配置
#su root #進入root用戶下 #vi ifcfg-eth0 DEVICE=bond0 BOOTPROTO=none #不指定IP獲取放鬆 ONBOOT=yes #隨系統啓動 IPADDR=192.168.0.100 NETMASK=255.255.255.0 NETWORK=192.168.0.0 BROADCAST=192.168.0.255 #:wq!
eth1和eth0配置
DEVICE=eth1BOOTPROTO=noneMASTER=bond0SLAVE=yes DEVICE=eth0BOOTPROTO=noneMASTER=bond0SLAVE=yes
3.修改modprobe相關設定文件,並加載bonding模塊:
#vi /etc/modprobe.d/bonding.conf #追加 alias bond0 bonding options bonding mode=6 miimon=200 #mode選擇6,檢測時長200ms
保存退出
4.重啓網絡service network restart,或者重啓系統 init 6
#su root #ifup bond0 #如果重啓後沒有啓動,激活bond0 #ifconfig #查看是否啓動 # ifconfig | grep HWaddr #查看運行狀態
5.如果不能上網
# vi /etc/rc.d/rc.local #追加 ifenslave bond0 eth0 eth1 route add default gw 192.168.0.1 #增加默認網關
修改DNS
修改/etc/resolv.conf文件
# vi /etc/resolv.conf nameserver 8.8.8.8 #google域名服務器 nameserver 114.144.114.114 #國內域名服務器
#init 6
#常見錯誤
1.重啓系統後ifcfg-bond0 配置出錯“e=bond0″–修改爲”DEVICE=bond0“
#注意事項
Bonding導致丟包嚴重問題:
(1)Bonding的mode設置不正確,使用mode=1,負載均衡模式,需要交換機的支持和配置;
(2)採用mode=6來進行負載均衡,不需要交換機的支撐;
Bonding導致網卡重啓變化問題:
(1)配置過程中,沒有設置具體的MAC地址,導致重啓後網卡變化,從而導致bond發生錯誤;
(2)配置的過程中,一定記得備份文件,在發生錯誤的時候進行恢復;使用cpxy命令