Linux网卡绑定操作指南

系统:CentOS 5.5 X86_64、RHEL 5.6 X86_64
通过网卡绑定可以提高网卡传输速率,避免单点故障。
网卡绑定主要有4种模式:常用的有两种,0负载均衡,两个网卡都工作,当一个出现问题后,另一个还继续工作,需要在交换机做端口聚合配置;1主备模式,同时只有一张网卡工作。
 
一、检查系统是否支持网卡绑定
#modinfo bonding
filename:       /lib/modules/2.6.18-238.el5/kernel/drivers/net/bonding/bonding.ko
author:         Thomas Davis, [email protected] and many others
description:    Ethernet Channel Bonding Driver, v3.4.0-1
version:        3.4.0-1
license:        GPL
srcversion:     956FDE3FEBDD81E105B7727
depends:        ipv6
vermagic:       2.6.18-238.el5 SMP mod_unload gcc-4.1....
 
有信息输出,说明系统支持,如不支持,需要重新编译内核,找到Bonding driver support。
 
二、建立绑定端口配置文件
# cd /etc/sysconfig/network-scripts
# cp -a ifcfg-eth0 ifcfg-bond0
# vi ifcfg-bond0
# Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
DEVICE= bond0    #修改设备名称为bond0,一定要去掉HWADDR网卡硬件地址
BOOTPROTO= none   #修改为none或static
ONBOOT= yes  #修改成yes
IPADDR=10.0.31.102 #网卡IP地址
NETMASK=255.255.255.0  #网卡掩码
GATEWAY=10.0.31.1 #网关地址
DNS1=10.0.31.254  #DNS地址
 
三、修改物理网卡配置文件
以将eth0和eth2进行网卡绑定为例:
# vi ifcfg-eth0
# Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
DEVICE=eth0
BOOTPROTO= none   #修改成none或static
HWADDR=D4:AE:52:7F:DC:55
ONBOOT= yes   #修改成yes
MASTER=bond0   #指定主设备名称
SLAVE=yes
TYPE=Ethernet
 
# vi ifcfg-eth2
# Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
DEVICE=eth2
BOOTPROTO= none
HWADDR=D4:AE:52:7F:DC:59
ONBOOT= yes
MASTER=bond0
SLAVE=yes
TYPE=Ethernet
 
四、加载模块
# vim /etc/modprobe.conf
alias bond0 bonding  #bond0为定义绑定网卡设备名称
options bonding mode=0 miimon=100  #负载均衡模式,每100ms检查一次网卡状态
 
说明:miimon是用来进行链路监测的。 比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。
 
mode=0表示load balancing (round-robin)为负载均衡方式,两块网卡都工作。
 
mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份.
 
bonding只能提供链路监测,即从主机到交换机的链路是否接通。 如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。
 
注意:
CentOS 6系列不要这项:
直接在ifcfg-bond0配置文件后面添加:
BONDING_OPTS="mode=1 miimon=100"

五、重启服务
# /etc/init.d/network restart
 
六、注意事项
最好绑定的两个物理网卡型号一样,网卡都属于同一个网段。
 
七、临时绑定,即时生效
#ifconfig bond0 10.0.33.21 netmask 255.255.0.0 up
#ifenslave bond0 eth0
#ifenslave bond0 eth2
 
八、测试
使用ping命令连续观察,通过down掉一个端口,查看是否丢包。
停掉一个端口:ifdown eth0
启用一个端口:ifup eth0
 
有一个特别的地方:如停掉一个端口后再启用,然后马上停掉另一个端口,将会出现短暂的丢包(大约4个),如是等待一会后在停掉另一端口,将不会出现丢包。
 
参考文档:
http://coolerfeng.blog.51cto.com/133059/48986/
http://www.linuxfoundation.org/collaborate/workgroups/networking
http://www.docin.com/p-387976980.html
http://hi.baidu.com/chance_gao/blog/item/60bfaa515afbe4848c543012.html
http://wenku.baidu.com/view/e603dfd028ea81c758f57889.html
http://www.net130.com/CMS/Pub/special/special_switch/2006_03_06_96012.htm
http://bbs.51cto.com/thread-472088-1.html
http://lovevickie.blog.51cto.com/1576116/466048
http://www.ixdba.net/article/e9/2007.html
http://www.ningoo.net/html/2007/redhat_linux_network_configuration_and_bond.html
http://czmmiao.iteye.com/blog/1043873
http://dbzone.iteye.com/blog/452896
 
 
 


来自为知笔记(Wiz)


你可能感兴趣的:(Linux网卡绑定操作指南)