先看看普通网卡IP地址的配置,修改/etc/sysconfig/network-scripts/ifcfg-eth0文件内容为:

 

DEVICE=eth0                            #物理设备名
HWADDR=00:0C:29:01:98:27               #MAC地址
BOOTPROTO=static                       #静态分配
IPADDR=192.168.1.103                   #这就是你设置的静态IP地址
NETMASK=255.255.255.0                  #子网掩码
GATEWAY=192.168.1.1                    #网关地址
ONBOOT=yes                             #引导或启动网卡服务时是否激活设备

RHEL6下bond的双网卡绑定服务

操作步骤和注意事项如下:

1、注意事项:

a、首先确认要绑定的是哪2个网口,避免绑定时绑错网口。最好绑定为不同物理网卡,比如eth0--eth3在一个物理网卡上,eth4--eth7在另一个物理网卡上,<在系统中判定网卡是否为同一张网卡根据MAC地址确认,MAC地址中只有最后一位不同的就属于同一个网卡>。绑定可以考虑eth0和eth4为一组,这样即使网卡出现问题也有冗余。

 

wKioL1XLOijzsL5aAAh59AP8Wrc347.jpg

以上例子可以看出eth0和eth1的MAC地址是排序差一位,所以eth0和eth1是在一块物理网卡上,而eth5和eth7在另一块物理网卡上。

其实到该步还不算完美,相应也同样对应的是两台交换件才达到完美冗余;也就是说用eth0和eth5为一组绑定bond0,分别在同一台物理机上的不同物理网卡上,连接到不同的交换机上。这样就完美了。(看下图)好好想想是否是这样呢~~~~

 wKioL1T1IRuiycJRAA0DpWx5LzA916.jpg

b、网卡配置文件需要注意的地方为,在各个ethX网卡文件中千万不要把MAC地址给注释掉,一定要保留。但是在bondX文件中千万不要有MAC地址有效行


c、如果是做RAC服务,最好把正常访问的网络和心跳网络分开。心跳网络要在交换机上在不同的vlan下(与正常网络不在同一个网段),或者两台主机的心跳网口直连即可。

心跳的bond网卡配置不要有网关。不然会和正常业务网络发生冲突。

 

2、说明:

这里以绑定eth0和eth1的2个网口为例。

配置文件都在/etc/sysconfig/network-scripts/目录下。

操作步骤

绑定前需要彻底关闭NetwortManager服务,否则会和bond网卡冲突

chkconfig NetwortManager off         #停止开机启动该服务
service NetwortManager stop         #停止网卡管理服务,其中网卡配置文件中NM_CONTROLLED=yes  //设备eth0是否可以由Network Manager图形管理工具托管,可以直接删除本行。

1、编辑新的ifcfg-bond0文件,一定不要有MAC存在。

cd/etc/sysconfig/network-scripts/

cp–rfifcfg-eth0ifcfg-bond0##复制ifcfg-eth0ifcfg-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 ”               ##负载模式。

##BONDING_OPTS=”mode=0 miimon=100 ”       ##负载模式。(交换机端口需要配置聚合模式)

##BONDING_OPTS=”mode=1 miimon=100 primary=eth0” ##主备模式,设置eth0为主通信网口。(交换机端口需取消聚合模式,变为access模式)

保存退出

2、分别编辑ifcfg-eth0ifcfg-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地址的对应关系表

在/etc/sysconfig/udev/rules.d/70-presistent-net.rules   内容见上图截图。

3、修改/etc/modprobe.d/dist.conf文件,添加以下内容:

alias bond0 bonding
options bond0 miimon=100 mode=0            ##具体以施工现场要求为准

说明:

miimon是用来进行链路监测的。比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;

mode的值表示工作模式,他共有0123四种模式,常用的为01两种。需根据交换机可提供的工作模式选择。

mode=0表示loadbalancing(round-robin)为负载均衡方式,两块网卡都工作。

mode=1表示fault-tolerance(active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份。

例:

##BONDING_OPTS=”mode=0 miimon=100 ”       ##负载模式。(交换机端口需要配置聚合模式)

##BONDING_OPTS=”mode=1 miimon=100 primary=eth0” ##主备模式,设置eth0为主通信网口。(交换机端口需取消聚合模式,变为access模式)

注意:

abonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。

b、设置的模式要与交换机设置的模式一致。

4、重启系统
系统启动时,会自动加载bond模块和激活冗余网卡设置。可使用以下命令进行判断:

#ifconfig

即可看到bond0的信息,bond0会自动获取eth0MAC地址。
若确认bond0网卡已经激活,可通过插拔网线或ifdownethX操作进行切换测试。在切换过程中,网络连接正常即可。

 

 

 

以下截图仅供参考:

例子一:单台主机

该例子中的网络拓扑图正如开头所示。。。。。。

看mac地址和设备名称对应关系(不同颜色线条---MAC最后一位)

mac.png

配置文件:

ifcfg.png


配置完后的效果,(看绑定顺序和MAC地址)

ifconfig1.png

比较细心的人就会发现,bond0、eth0、eth1这组的三个网卡的MAC地址是一样的



验证:

可以down掉其中一块网卡(或从主机端,或从交换机端),观察ping的状态~~~~

Z1A23OB(}S_@F@XJ%IV(MYW.pngTD8F%5[K3`5W5`QQVTADI(D.png