Linux如何配置bond


Q:什么是BOND?
A:
  將多塊網卡虛擬成為一塊網卡的技術,通過bond技術讓多塊網卡看起來是一個單獨的以太網接口設備並具有相同的ip地址。
 
Q:為什么要配置bond?
A:
  在linux下配置bond,通過網卡綁定技術既能增加服務器的可靠性,又增加了可用網絡寬帶,為用戶提供不間斷的網絡服務。
 
原理:
  網卡工作在混雜(promisc)模式,接收到達網卡的所有數據包,tcpdump工作用的也是混雜模式(promisc),將兩塊網卡的 MAC地址修改為相同接收特定MAC的數據幀,然后把相應的數據幀傳送給bond驅動程序進行處理。
 

  mode=1:在主備模式下,只有主網卡eth0工作,eth1作為備份網卡是不工作的,只有當一個網絡接口失效時(例如交換機掉電等),為了不會出現網絡中斷,系統會按照配置指定的網卡順序啟動工作,保證機器仍能對外服務,起到了失效保護功能。
  mode=0:在負載均衡模式下,兩塊網卡都工作,提供兩倍帶寬。

 
Q:如何 配置BOND
A:配置bond的步驟
 
1、選擇2個自己需要的網口,查看有哪些網口
[root@studying ~]# ifconfig  -a
 
2、編輯網口的配置文件
[root@studying ~]# cd  /etc/sysconfig/network-scripts
[root@studying network-scripts]# ls  
以ifcfg-開頭
例如:eth0的配置文件名是 ifcfg-eth0
 
[root@studying network-scripts]# vim  ifcfg-eth0
[root@studying network-scripts]# cat  ifcfg-eth0
DEVICE=eth0               #網口名eth0
TYPE=Ethernet            #以太網接口
ONBOOT=yes              #LINUX在啟動時激活該網口
BOOTPROTO=none    #使用什么協議激活網口
                                               none表示不使用任何協議
                                               static表示設置靜態IP
                                               dhcp表示動態獲取IP
MASTER=bond0         #指定虛擬網口的名字(主人
SLAVE=yes                  #備用(從設備
 
[root@studying network-scripts]# vim  ifcfg-eth1
[root@studying network-scripts]# cat  ifcfg-eth1
DEVICE=eth1               #網口名eth1
TYPE=Ethernet            #以太網接口
ONBOOT=yes              #LINUX在啟動時激活該網口
BOOTPROTO=none    #使用什么協議激活網口
                                              none表示不使用任何協議
                                              static表示設置靜態IP
                                              dhcp表示動態獲取IP
MASTER=bond0         #指定虛擬網口的名字
SLAVE=yes                  #備用
備注eth0、eth1的MASTER(主人)是bond0,本身是屬於從設備作為bond0的SLAVE(備用)
 
[root@studying network-scripts]# vim  ifcfg-bond0
[root@studying network-scripts]# cat  ifcfg-bond0
DEVICE=bond0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.16.11.99
NETMASK=255.255.0.0
GATEWAY=172.16.1.1
 
3、配置bonding
[root@studying network-scripts]# vim  /etc/modprobe.d/dist.conf
末尾增加以下兩行
alias bond0 bonding
options bond0 miimon=100 mode=1
#miimon是用來進行鏈路監測的:miimon=100表示系統每100ms監測一次鏈路連接狀態,如果有一條線路不同就轉入另一條線路。
#mode=1表示屬於主備模式。
 
4、在/etc/rc.d/rc.local文件中加入如下語句,是系統啟動自動運行
ifenslave  bond0  eth0  eth1
#route  add  -net 172.16.0.0  netmask  255.255.0.0  bond0---如果有需要添加該路由
 
5、reboot重啟
 
6、如果查看當前哪個網口是主用網口
[root@studying ~]# cat  /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: fault-tolerance (active-backup) Primary Slave: None Currently Active Slave: eth1 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth0 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 1 Permanent HW addr: 00:0c:29:9d:58:ae Slave queue ID: 0 Slave Interface: eth1 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:9d:58:b8 Slave queue ID: 0
注意
  ①UUID是唯一的編號,每個網口唯一
  ②兩個配置文件中HWADDR不能一樣,可以不要,因為會自動讀取
  ③網口切換后 ifconfig bond0查看到的MAC地址還是切換前的MAC地址-->為了防止IP對應MAC地址混亂。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM