歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux各版本上的多網卡綁定(Debian和Ubuntu,SuSE,Fedora和RH)

Linux各版本上的多網卡綁定(Debian和Ubuntu,SuSE,Fedora和RH)

日期:2017/2/28 17:32:02   编辑:Linux教程
Linux上很容易可以將多塊網卡綁定,實現負載均衡和雙線熱備的功能。

負載均衡即將負載平均的分配到任意多塊網卡上面,實現帶寬的疊加

雙線熱備即多塊網卡互為備份,任何一塊能夠工作即可保證網絡正常運行。

各個綁定類型的分別

mode=0 Round-robin: sequential(輪詢負載均衡,最常用)

mode=1 Active-backup: only one

mode=2 XOR: same MAC same nic

mode=3 Broadcast: all

各大發行版略有不同,基本上分成3種,

Debian和Ubuntu,

SUSE,

Mandriva、Fedora和RH

-----------------------------------------------------------------------

Debian和Ubuntu上的多網卡綁定

實驗環境Ubuntu 6.06 Dadder,內核版本2.6.15-23 server

首先安裝ifenslave

#apt-get install ifenslave-2.6

編輯/etc/network/interfaces

auto lo bond0 eth0 eth1

iface bond0 inet static

address 10.31.1.5

netmask 255.255.255.0

network 10.31.1.0

gateway 10.31.1.254

up /sbin/ifenslave bond0 eth0

up /sbin/ifenslave bond0 eth1

iface lo loopback

iface eth0 inet static

address 10.1.1.101

netmask 255.255.255.0

iface eth1 inet static

address 10.1.1.102

netmask 255.255.255.0

再編輯 /etc/modprobe.d/arch/i386

加上兩行:

alias bond0 bonding

options bonding mode=0 miimon=100

最後重啟網絡即可

/etc/init.d/networking restart

-----------------------------------------------------------------------

SuSE,Mandriva、Fedora和RH

1、編輯 /etc/modules.conf 文件(SuSE的系統是/etc/modprobe.d/modprobe.cong.local),加入如下一行內容,以使系統在啟動時加載bonding模塊,對外虛擬網絡接口設備為 bond0

  alias bond0 bonding

2、編輯虛擬網絡接口配置文件,指定網卡IP

vi /etc/sysconfig/network-scripts/ifcfg-bond0

(SuSE的系統是/etc/sysconfig/network/ifcfg-bond0)

Fedora的寫法

DEVICE=bond0

IPADDR=192.168.1.1

NETMASK=255.255.255.0

NETWORK=192.168.1.0

BROADCAST=192.168.1.255

ONBOOT=yes

BOOTPROTO=none

USERCTL=no

SuSE的寫法

BOOTPROTO='static'

BROADCAST='192.168.1.255'

ETHTOOL_OPTIONS=''

IPADDR='192.168.1.1'

MTU=''

NETMASK='255.255.255.0'

NETWORK='192.168.1.0'

STARTMODE='auto'

USERCONTROL='no'

3、編輯物理網絡接口配置文件,並指向虛擬網絡接口bond0

Fedora:

物理網絡接口配置文件位於/etc/sysconfig/network-scripts,

ifcfg-eth0對應第一個網卡,ifcfg-eth1對應第二個千兆網卡。

ifcfg-eth0 :

DEVICE=eth0

IPADDR=11.0.0.1

NETMASK=255.255.255.0

USERCTL=no

ONBOOT=yes

BOOTPROTO=none

ifcfg-eth1 :

DEVICE=eth1

IPADDR=11.0.0.2

NETMASK=255.255.255.0

USERCTL=no

ONBOOT=yes

BOOTPROTO=none

SuSE:

物理網絡接口配置文件位於/etc/sysconfig/network/,

以ifcfg-eth-(mac)為名字

BOOTPROTO='static'

IPADDR='10.0.0.1'

NETMASK='255.255.255.0'

STARTMODE='auto'

USERCONTROL='no'

最後編輯/etc/rc.local(SuSE是/etc/rc.d/rc)或是直接運行

ifenslave bond0 eth0 eth1 eth2(綁幾個網卡就寫幾個網卡的名字)

無論eth0 eth1 eth2的IP怎樣設置,綁定之後全都以bind0的設置為准。此時所有網卡的mac地址都是一樣的。
Copyright © Linux教程網 All Rights Reserved