您的位置:首页 > 其它

如何在rhel5环境下配置网卡绑定

2012-05-06 17:35 519 查看
本文章介绍了配置网卡bonding方法和步骤,实验环境为一台rhel5.4的虚拟机,添加了两块虚拟网卡,跟实体机是一样的,仅供大家参考学习使用。

实验环境为有两块网卡,分别是eth0,eth1. bonding后的名字为bond0(可自定义,不一定非取一样的名字).

1. 用命令modprobe -l查看当前系统是够已经加载了bond模块(系统默认已经加载)。

[root@server1 ~]# modprobe -l|grep -i bond*

/lib/modules/2.6.18-164.el5xen/kernel/drivers/net/bonding/bonding.ko

/lib/modules/2.6.18-164.el5xen/kernel/drivers/net/tulip/winbond-840.ko

2.如果没有加载使用modprobe bonding命令加载该模块。

3.编辑配置文件/etc/modprobe.conf,设置bonding的网卡名字。(‘alias eth0 pcnet32’和‘alias eth1 pcnet32’两行定义我们系统中网卡的名字.这也是我们系统中默认的网卡就叫eth0的原因,如果你想换个名字,更改该配置,然后编辑/etc/sysconfig/network-scripts/ifcfg-eth0中的DEVICE=eth0配置行,然后把ifcfg-eth0该成你想定义的名字即可。)

[root@server1 ~]# cat /etc/modprobe.conf

alias eth0 pcnet32

alias scsi_hostadapter mptbase

alias scsi_hostadapter1 mptspi

alias scsi_hostadapter2 ata_piix

alias eth1 pcnet32
alias bond0 bonding

options bond0 mode=1 miimon=100 use_carrier=0(该配置具体含义在后面进行详细解释)

4.然后创建ifcfg-bond0文件并配置ifcfg-eth0,ifcfg-eth1文件,具体配置如下(注意:每个配置文件均不设置mac地址)。

[root@server1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]

DEVICE=bond0

BOOTPROTO=static

ONBOOT=yes

TYPE=Ethernet
IPADDR=192.168.0.100

NETMASK=255.255.255.0

GATEWAY=192.168.0.254

[root@server1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes
MASTER=bond0

SLAVE=yes

[root@server1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]

DEVICE=eth1

BOOTPROTO=static

ONBOOT=yes

MASTER=bond0

SLAVE=yes

5.重启网卡,然后查看bond后网卡的状态。

[root@server1 ~]# cat /proc/net/bonding/bond0

Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)

Primary Slave: None

Currently Active Slave: eth0

MII Status: up

MII Polling Interval (ms): 100

Up Delay (ms): 0

Down Delay (ms): 0

Slave Interface: eth0

MII Status: up

Link Failure Count: 0

Permanent HW addr: 00:0c:29:3d:dd:6c

Slave Interface: eth1

MII Status: up

Link Failure Count: 0

Permanent HW addr: 00:0c:29:3d:dd:76

[align=left]6.如何测试呢?[/align][align=left]找一台同网段的机器一直ping改ip 192.168.0.100.(如果是虚拟机测试可能会有问题,因为你虚拟出来的网卡的mac是一样的。实体机则没有该问题)[/align][align=left]然后用命令ifconfig eth0/eth1 down,网络一直是畅通的。[/align][align=left]
[/align][align=left]7.在/etc/modprobe.conf定义的具体参数是什么意思呢?[/align][align=left] 第一种模式:mod=0 ,即:(balance-rr) Round-robin policy(平衡抡循环策略)[/align][align=left]特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1....一直循环下去,直到最后一个传输完毕), 此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降[/align][align=left]
[/align][align=left]第二种模式:mod=1,即: (active-backup) Active-backup policy(主-备份策略)[/align][align=left]特点:只有一个设备处于活动状态,当 一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N [/align]本文出自 “Torvalds0310” 博客,请务必保留此出处http://torvalds0310.blog.51cto.com/2120200/854853
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: