Linux系統(tǒng)下如何將多網(wǎng)卡綁定為一個
在Linux系統(tǒng)中,通常會將多個網(wǎng)卡綁定為一個邏輯網(wǎng)卡,這樣可以提高網(wǎng)絡(luò)的穩(wěn)定性,那么要如何將多個網(wǎng)絡(luò)綁定為一個呢?下面學(xué)習啦小編就給大家介紹下Linux下多網(wǎng)卡綁定的bond模式原理。
將多個Linux網(wǎng)絡(luò)端口綁定為一個,可以提升網(wǎng)絡(luò)的性能,比如對于備份服務(wù)器,需要在一個晚上備份幾個T的數(shù)據(jù),如果使用單個的千兆網(wǎng)口將會是很嚴重的瓶頸。其它的應(yīng)用,比如ftp服務(wù)器,高負載的下載網(wǎng)站, 都有類似的問題。因此使用Linux teaming或bond來綁定多個網(wǎng)卡作為一個邏輯網(wǎng)口,配置單個的IP地址,會大幅提升服務(wù)器的網(wǎng)絡(luò)吞吐(I/O)。
Linux的多網(wǎng)卡綁定功能使用的是內(nèi)核中的“bonding”模塊,關(guān)于此模塊可以參考Linux Ethernet Bonding Driver文檔, 但是目前發(fā)布各個Linux版本內(nèi)核均已包含了此模塊,大多數(shù)情況下不需要重新編譯內(nèi)核。 Linux 的 bonding 驅(qū)動提供了綁定/集成(bond)多個網(wǎng)卡為一個虛擬邏輯網(wǎng)口的功能。并請注意綁定的網(wǎng)口(bonded)有多種工作模式; 一般來說,分為 熱后備(hot standby) 和 負載均衡(load balancing)。 在Redhat/Fedora和其它類Redhat Linux中是比較容易配置的。
1.創(chuàng)建bond0配置文件
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 --物理設(shè)備名字
IPADDR=192.168.1.2 --IP地址
NETMASK=255.255.255.0 --子網(wǎng)掩碼
GATEWAY=192.168.1.1 --網(wǎng)關(guān)
DNS=8.8.8.8 --DNS
ONBOOT=yes --隨機啟動
NAME=bond0
BOOTPROTO=none
USERCTL=no --是否允許非root用戶控制該設(shè)備
2.修改被綁定的eth0和eth1的配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=“eth0”
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
HWADDR=00:15:17:CC:FC:35
eth1的配置文件與之相同,只是device的值改為eth1即可。
3.裝在bond模塊驅(qū)動
編輯/etc/modprobe.conf或者/etc/modules.conf文件,加入如下內(nèi)容,使系統(tǒng)啟動時加載bonding模塊驅(qū)動
alias bond0 bonding
option bond0 miimon=100 mode=1
說明:
1).miimon=100 用來進行鏈路監(jiān)測的。即每100ms監(jiān)測一次鏈路狀態(tài)。bonding只監(jiān)測主機與交換機之間鏈路。如果交換機出去的鏈路出問題而本身沒有問題,那么bonding認為鏈路沒有問題而繼續(xù)使用。
2).mode=1 表示提供冗余功能。除此之外還可以為0、2、3,共四種模式。0表示負載均衡
4.在/etc/rc.d/rc.local文件中加入如下語句,使得系統(tǒng)啟動自動運行
ifenslave bond0 eth0 eth1
route add -net 192.168.1.254 netmask 255.255.255.0 bond0 #如有需要才加該路由
5.檢測、驗證配置
首先執(zhí)行命令裝載bonding模塊:modprobe bonding
重啟網(wǎng)絡(luò)服務(wù),并確認bond0正確啟動:service network restart
確認設(shè)備已經(jīng)正確加載:less /proc/net/bonding/bond0
列出所有網(wǎng)口:ifconfig
上面就是Linux下多網(wǎng)卡綁定bond模式原理的介紹了,bond模式原來一般有7種,這里只介紹了其中的一種,希望對你有所幫助。