资源描述:
《linux下双网卡绑定配置》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、linux下双网卡绑定配置.txt始终相信,这世间,相爱的原因冇很多,但分开的理由只冇一个一爱的还不够。人生有四个存折:健康情感事业和金钱。如果健康消失了,其他的存折都会过期。在lirwx下如何做双网卡绑定实现冗余?一、LinuxChannelBonding目前在各个发行版木的Linux屮,使用最普遍的内核版木应该就是2.4.x的版木了,而LinuxChannelBonding,在Linux2.4的内核中,就提供了bonding的驱动,可以支持把多个网络适配器集合在一起,当作一个网络适配器来便用。在Linux下,
2、网卡的高可用性是通过MIT或者ETHTOOL的状态监测來实现的,所以,需要检查系统屮的网络适配器是否支持Mil或者ETIIT00L的连状态监测。可以川命令"ethtoolethO〃来检杏,如果显示的"Linkdetected:"信息与实现的连接状态一致,就没有问题。如果系统中的网络适配器不支持MII或者ETHTOOL状态监测,当连接失效时,系统就不能检测到,同时,在bonding驱动加载时,会记录一条不支持MII和ETHTOOL的警告信息。下面简单介绍一下实现的棊木方法:首先,我们需要打开内核对bonding支持
3、。设置内核"makemcnuconfig/xconfig/configz,,在"Networkdevicesupport"区段中选择"Bondingdriversupport",建议设置该驱动程序为模块,这样才能支持给驱动传递参数和设置多个bonding设备。生成并安装新的内核和模块。Bonding的设置我们需要在/etc/modules.conf屮加入两行,这样才可以在设置了bond设置后,系统启动的时候自动加载bonding的驱动程序aliasbondObondingoptionsbondOmiimon=10
4、0mode二1当mode=l时为主备模式,mode二0时为负载均衡模式。另外,在/etc/sysconfig/network-scripts目录中,创建一个名为ifcfg-bondO的文件。DEVICE二bondOIPADDR二192.168.1.1NETMASK二255.255.255.0NETWORK二192.168.1.0BROADCAST二192.168.1.2550NB00T二yesB00TPR0T0=noneUSERCTL=no在bond中的所有网络适配器的脚本中,都要有SLAVE和MASTER的定义
5、。例如,如果要让cthO和ethl成为bondO的成员,它们对应的配置文件(ifcfg-ethO和ifefg-oth1)就要仿照下面的内容进行更改:DEVICE二ethOUSERCTL=no0NB00T二yesMASTER二bondOSLAVE=yesB00TPR0T0=none在脚本文件ifcfg-ethl中,把ethO替换成ethl,同时,根据需要还要加入TP地址方面的信息。如果需要设置另外的bonding设备(例如bondl),就把MASTER二bondO改成bondl,这样,该网络适配器就成为bondl的
6、附属设备了。使bond生效用命令"/etc/rc.d/init.d/networkrestart''重新启动网络子系统,也可以重新启动系统来使bondO生效。这样,bond的设置就基木结束了,如果希望了解更详细的信息,可以参考zz/usr/src/linux~2.4/Documentation/networking/bonding.txt"二、Linux卜•的BASP(BroadcomAdvancedServerProgram)Broadcom公司不仅在Windows平台上提供了BASP1:具来实现网卡的高可用性
7、,同样,在Linux操作系统下,也提供了对应的工具来实现。下面,就介绍一下如何在Linux下利用BASP来实现多块Broadcom以太网卡的teaming。首先,BASP是一个为2.4.x的内核设计的模块,通过由多个网卡创建的team,可以捉供负载平衡(load-balancing),容错(fault-tolerance)和VLAN等功能。一个team可以包括1到8块网卡,每块网卡都可以被指定为主(Primary)或者是热备(hot-standby,只适用于SLBteam)«team中所冇的主网卡都会通过发送和接
8、收全部网络流屋的一部分来参与负载平衡的工作,而热备的网卡会在所有的主网卡失去连接时进行接管。VLAN可以添加到team中,通过不同的VLANTD來实现多个VLAN,每个VLAN都会创建一个虚拟设备。通常,我们得到的BASP的打包文件中包括两个文件,一个是RPM包,一个是TAR格式的文档。安装TAR文档解压并展开TAR文档%tarxzvfbasplnx-{version}.