RHEL6 下 bond 双网卡绑定服务 & RedHat 5/6 下网卡绑定脚本
操作步骤和注意事项如下:
1、注意事项:
首先确认要绑定的是哪2个网口,避免绑定时绑错网口。
2、说明:
这里以绑定eth0和eth1的2个网口为例。
配置文件都在/etc/sysconfig/network-scripts/目录下。
操作步骤
绑定前需要彻底关闭NetworlManger服务,否则会和bond网卡冲突
12 chkconfig NetworlMangeroff #停止开机启动该服务
service NetworlManger stop #停止网卡管理服务,其中网卡配置文件中NM_CONTROLLED=yes //设备eth0是否可以由Network Manager图形管理工具托管,可以直接删除本行。
1、编辑新的ifcfg-bond0文件
cd/etc/sysconfig/network-scripts/
cp–rfifcfg-eth0ifcfg-bond0##复制ifcfg-eth0到ifcfg-bond0
ls##查看文件,即可看到有ifcfg-bond0文件
增加或修改如下内容:
-# vi ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.1.155
NETMASK=255.255.255.0
GATEWAY=192.168.1.254 ##此IP信息为客户要求信息
ONBOOT=yes
BOOTPROTO=static
USERCTL=no
BONDING_OPTS=”mode=0 miimon=100 primary=eth0” ##这条可以不写设置eth0为主通信网口,具体以现场情况为准
保存退出
2、分别编辑ifcfg-eth0和ifcfg-eth1文件
-# vi ifcfg-eth0
DEVICE=eth0
HWADDR=AB:CD:EF:12:34:56 注意eth0的MAC地址要保留。不要删除或屏蔽
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
-#vi ifcfg-eth1
HWADDR=AB:CD:EF:12:34:57 注意eth1 的MAC地址要保留。不要删除或屏蔽
DEVICE=eth1
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
注意:其他未要求设置网口,需将网卡配置文件中的IPADDRNETMASKNETWORKBROADCASTGATEWAY全部屏蔽或去掉,MAC地址必须保留。以免硬盘网卡绑定,造成网卡顺序漂移。
不过不用担心,在linux系统中有个记录eth设备网卡名和MAC地址的对应关系表
3、修改/etc/modprobe.d/dist.conf文件,添加以下内容:
alias bond0 bonding
options bond0 miimon=100 mode=0 ##具体以施工现场要求为准
说明:
miimon是用来进行链路监测的。比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;
mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。需根据交换机可提供的工作模式选择。
mode=0表示loadbalancing(round-robin)为负载均衡方式,两块网卡都工作。
mode=1表示fault-tolerance(active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份。
※注意:
a、bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。
b、设置的模式要与交换机设置的模式一致。
4、重启系统
系统启动时,会自动加载bond模块和激活冗余网卡设置。可使用以下命令进行判断:
-#ifconfig
即可看到bond0的信息,bond0会自动获取eth0的MAC地址。
若确认bond0网卡已经激活,可通过插拔网线或ifdownethX操作进行切换测试。在切换过程中,网络连接正常即可。
比较细心的人就会发现,bond0、eth0、eth1这组的三个网卡的MAC地址是一样的。
(上文由michael1983分享)
Linux网卡绑定可以帮助我们实现接入层的高可用和链路聚合的能力。为了方便日常配置和自动化部署,编写了相关脚本进行自动配置。
注:脚本使用主备模式,如需使用其他模式请自行修改
脚本如下:
RHEL5
RHEL6
(上文由 zamora 分享,地址:http://www.talkwithtrend.com/Article/220595)