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的步驟
一、選擇2個本身須要的網口,查看有哪些網口
[root@studying ~]# ifconfig -a
二、編輯網口的配置文件
[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
三、配置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表示屬於主備模式。
四、在/etc/rc.d/rc.local文件中加入以下語句,是系統啓動自動運行
ifenslave bond0 eth0 eth1
#route add -net 172.16.0.0 netmask 255.255.0.0 bond0---若是有須要添加該路由
五、reboot重啓
六、若是查看當前哪一個網口是主用網口
[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地址混亂。