双链路LACP实施

一、双链路的意义

整个系统的“三高”(高可用性、高可靠性、高性能)是系统管理建设的目标。在当前的系统环境中,需要高屋建瓴的去设计我们整个系统各个层次的三高特性:

1、在应用服务器层面,物理机器构建了主备环境的HA环境,应用服务器本身基于缓存设计技术和分布式集群构建了应用服务器集群,保障了应用服务提供者的高容错性和冗余设计,并基于缓存设计提供了高效的会话复制和故障切换能力。

2、在数据服务器层面,物理机器结合数据库实例设计的特点,构建了单实例多节点或多实例多库的数据库环境,利用诸如Oracle RAC,DB2 HADR等技术构建了实例级或者表级别的数据库三高环境。

3、在主机服务器层面,主机本身利用诸如Windows群集、HACMP等技术实现了物理机其操作系统层面的三高。

4、在存储层面,利用虚拟存储镜像技术实现了存储的冗余设计和数据镜像。

5、在文件系统方面,实施了分布式文件系统GFS来实现文件系统抽象三高标准。

6、在虚拟化方面,利用ESXi的VMotion或者XEN,KVM实现了系统级别的快速故障切换和部署,实现了零延时、RTO=0,RP0=0的业务连续性设计。

诸如以上的特性在局部的设计中都非常符合三高的设计要求,效果也很明显。但是,在针对服务器环境以及PC环境中亟需考虑网卡设备的三高标准,如何实现呢?

我们考虑采用基于IEEEE 802.3ad标准的网卡端口汇聚技术来实施网卡层面的三高特性。

双网卡邦定的拓朴图(见下图)

保持服务器的高可用性是企业级IT环境的重要因素。其中最重要的一点是服务器网络连接的高可用性。网卡(NIC)绑定技术有助于保证高可用性特性并提供其它优势以提高网络性能。

端口聚合(IEEE802.3ad Port Trunking):可将2至8个10/100Base-TX端口聚合成一条干路,在全双工工作模式下达到400Mbps-1.6Gbps的带宽。端口聚合技术能充分利用现有设备实现高速数据传递,也可以通过千兆端口聚合技术实现千兆位链路的聚合,最多可以聚合4Gbps的链路带宽。

Broadcom Gigabit Ethernet Adapter Teaming:任何可用的千兆BRODCOM网卡都可以配置为TEAM的一部分。TEAMING是一种将多块千兆BRODCOM网卡绑定作为一个虚拟网卡.好处就是负载均衡。通过选择每一个可用的千兆BRODCOM网卡并添加它们到负载均衡成员栏来创建TEAM.对于用户和应用程序,只看到一个虚的网卡。负载均衡组中的成员共享绑定的数据流.在一个基本的成员区域中,任一个千兆BRODCOM网卡都可以被指定为主成员负责数据流的控制,而指定为备用成员的网卡只有在所有的主成员网卡都失败时,才开始接管数据流.一旦任一个主成员网卡恢复,数据马上由该主成员控制.

创建teaming包含下列几个步骤:
* 打开BASP属性窗口
* 创建teams
* 添加网卡到teams
* 分配一个IP地址给teamss
* 重启机器

BASP是适用于windows2003,windows2000,windowsNT,RedhatLiunx,NetWare的一个broadcom的中介型驱动程序,需要先安装对应的broadcom网卡驱动程序.

目前它提供了负载均衡;错误冗余;VLAN高级功能,都通过创建teaming来实现.
注意: 一个team可以包含1到8个网卡,每个网卡都可以指定为主成员或备用成员.

BASP的负载均衡;错误冗余功能支持与第三方厂商网卡在同一个team中协同工作.BASP FOR Windows 2000 & 20003 & NT提供以下选项:

-支持下列网卡作为故障应急(failover)
Alteon AceNic,3COM 10/100 Server adapters;intel 10/1000 server
adapters;intel 1000baseSX server adapter;
intel 82559 板载网卡
- 智能负载均衡,交换机不需设置.

- 普通链路聚合(GEC/FEC,OpenTrunk),需要在交换机上启用trunking

- IEEE802.3ad链路聚合(静态配置),需要交换机支持802.3ad

- 通过IEEE802.1Q-1988tagging,每个网卡最多支持64个VLANS,只支持braodcom或Alteon网卡

BASP FOR RHLinux 提供以下几种team的模式:
- 智能负载均衡
- 普通链路聚合(GEC/FEC,Open Trunk),需要在交换机上启用trunking
- IEEE802.3ad链路聚合(静态配置),需要交换机支持802.3ad
- VLAN Pachket tagging

Smart Load Balancing (SLB)™

Broadcom 的负载均衡使用IP流。该属性通过在多个网卡上以双向方式均衡网络IP流量。当处于这种模式下,所有的在同一个队中的网卡使用物理网卡的MAC地址。提供 错误监测和在成员网卡或备用成员网卡中的动态冗余切换,该工作机制通过第3层协议来实现,可以在2层或3层交换机中工作。对于负载均衡的TEAM, 交换机上不需要做相关配置.

Link Aggregation (802.3ad)

链路聚合模式基于IEEE 802.3ad(LACP)规范。该模式允许客户动态的修改队列中网卡的属性。如果链路双方没有正确的按照802.3ad 配置,那末系统会标志出错误。所有的成员网卡通过相同的MAC地址接受数据包。链路聚合模式中链路必须有一方处于活动状态。

Generic Link Aggregation (Trunking)

Trunking模式跟802.3ad十分相同,不提供LACP等协议的支持。该模式只能静态的修改链路一端来适应不同的网络环境,比如说朗讯 的’OpenTrunk’或者CISCO的’Fast EtherConnect(FEC).换句话说,Trunking 是802.3ad的简易版。

二、双链路的实施对象

1、Windows环境

第一部分:硬件安装
  虽然,理论上讲绑定越多网卡在一起,最终效果提升就越明显,但是考虑到复杂程度,这里就以绑定双网卡为例进行说明,如果读 者觉得好玩,兴致很高的话,按照下面方法愿意绑定多少就绑定多少个网卡,其实一般同一台服务器,绑定2-3块网卡也就够了,太多了,据说因为链路聚合的先天缺点,会过多占用服务器资源,反过来会影响服务器速度(关于这个我没实验,不过我觉得凡事都离不开物极必反的道理,适度最好)。

  找两快同型号的网卡 ,100M以上的 ,10M的就不用考虑了 ,没有什么实际的意义。

第二部分:设置调试

安装NIC Express


到下图所示界面,软件提示选择是否开启LOAD Balancing 功能?什么是LOAD Balancing 功能呢?LOADBalancing的中文意思可以翻译为负载均衡,在这里就是网络负载均衡。也就是当多块网卡被绑定合一之后,当数据流量很大的时候,软件会自动调整,将数据流量负载均衡地分配到各个网卡上,以减轻单块网卡的压力,达到畅快的访问效果。我们绑定双网卡,其中目的之一就是为了实现负载均衡,我们自然要开启这个功能,所以,在这里一定要选择“Enabled”。当然,如果你在这里选择错了也没关系,今后也可以通过NIC Express软件管理界面开启。

继续一路NEXT,在Windows XP里安装时如果遇到提示“NIC Express Virtual Miniport”没有通过Windows测试,无法验证它同WindowsXP的相容性,不要理会,选择“仍然继续”就行了。一路继续。

到了下图所示界面,就到了真正绑定网卡的时候了:

大家看到这个界面一共分为上、中、下,三个窗口,上面的是空白,中间的写着8139-2,这个8139-2是我自己起的绑定之后的网卡组的名称,原来这里默认写的是New array,也可以不修改,你也可以根据自己喜好,写成别的名字。在最下面的窗口里列出了目前服务器上安装的两块网卡的名字。我们下一步就是要用鼠标选中下面的两块网卡名字,然后点击界面中间的Add键,把两块网卡加入上面的窗口里,这样两块网卡就这样被加入了网卡组里,初步绑定成一块“网卡”了,今后可以使用同一个IP地址了。

点击OK继续,NIC Express出现一个配置界面,选项很多,但是不必太操心,因为这些配置都不必修改,使用默认值就可以了,直接点击OK、点击Finish完成安装进程。至此软件安装基本结束,剩下就需要对软件和网卡进行一些必要的设置工作。

点 击桌面“开始”菜单,选择执行菜单里的“NIC Express Enterprise Edition”选项,这是NIC Express软件自带的一个监控程序,首先点击“setting”选项,在这里可以设置网卡流量计量单位,可以按照Packets/Sec、Mbits /Sec、Kbits/Sec三种单位来计算,一般都是使用默认的Mbits/Sec来计算,也就是兆/每秒,其实在这里只需要修改一下“Graph Detail(图形显示)”即可,将默认的“By Protocol”改成“ByIncoming/Outgoing”,别的不需要改。

如果你想分别观察绑定组中每块网卡的流量或者整个组的流量,只需在“Select Device”选项中选择一下设备即可。最后点击“Advanced”选项,设定网卡绑定的工作模式,在这里也可以点击“Load Balancing Disable”来关闭网卡负载均衡功能。使用NIC Express绑定的双网卡组默认工作于“NICExpress ELB”模式下,这是NIC Express所特有的一种工作模式,实际效果很好。我们都知道利用昂贵的Intel PROSET绑定的Intel 8255x的组合是运行在“802.3ad”工作模式下的,这一模式在NICExpress中也可以选择,但是多数使用者在实际使用后都认为“NICExpress ELB”模式的效果优于“802.3ad”模式,大家今后可以自己实践测试比较一下。如果你也使用默认的“NIC Express ELB”模式,那么“Advanced”选项里也就不用改什么,一切默认即可。至此NIC Express的设置结束。

第三部分:“虚拟网卡”设定

   最后还要看看网卡的设置,用鼠标在桌面“网上邻居”上点击右键弹出“网络和拨号连接”窗口,可以看到原来的两个网卡连接图标已经变成了三个,多出来的一个图标就是“NIC Express Virtual Adapter”,这个就是绑定后的网卡组,这个网卡组的使用和使用单一网卡完全一样,相当于一个单一的“虚拟网卡”。

用鼠标在这个图标上点击右键选择属性,可以为这个“虚拟网卡”设定IP地址、子网掩码、网关等等,其实在安装“NICExpress”过程中,如果服务器原来的单一网卡已经设置了这些,那么“虚拟网卡”就会自动设定和原来的网卡一样。在这里选择“NIC Express Transport for Ethernet”还可以自由对网卡绑定组进行调整,例如,减少或者加入一块网卡,这个较之Intel PROSET要方便许多,IntelPROSET在增加或者减少绑定组里的网卡之前必须删除原来的绑定组然后重新创建。

好了,好了,至此一切都已经做好,我们的服务器已经成为一台地地道道的“双网卡冗余服务器”了。

最后说几句,作为本文的总结和补充:

1、经过实际使用,我发现使用NIC Express绑定的双网卡组运行的稳定性很好,没有出现过什么软件的冲突,我的一个朋友已经把它应用到自己的电信托管服务器上,运行了半年多了,也很稳定;

2、理论上讲NIC Express绑定的网卡越多,效果提升应该越明显,如果可能大家可以自己动手绑定3块、4块网卡试试,不过切记使用的网卡最好是一个品牌一个型号;

3、NIC Express最初被老鸟们拿来玩的时候,并没有想到应用在服务器上做网卡冗余阵列,大家多是把局域网内的几台电脑同时都绑定双网卡,这样各个电脑之间的传输速率和传输稳定性获得了明显的提升,后来大家发现只要其中一台电脑使用NIC Express绑定了双网卡组,其他使用单网卡的电脑访问这台有网卡绑定组的电脑,也能获得传输速率和稳定性的改善,于是我才想到将这个技术应用到服务器上。

4、我个人认为使用NIC Express绑定多网卡,在当今这个数据时代具有一定的实际意义,无论是对于互联网服务器还是局域网服务器的用户都有启发,当我们为服务器绑定多网卡形成阵列之后,不仅可以扩大服务器的网络带宽,而且可以有效均衡负载和提高容错能力,避免服务器出现传输瓶颈或者因某块网卡故障而停止服务。

5、也许你会说,在当今千兆网卡早已普及的时代,还费劲绑定几块百兆网卡做什么?其实绑定多网卡的目的并不是仅仅为了提高带宽,这样做还有一个最大的优点就是多块网卡可以有效增强服务器的负载承受能力和冗余容错能力。也许你也经历过,当使用单块10M/100M网卡在局域网里拷贝1G以上大文件的时候,经 常会出现电脑停止响应,或者速度奇慢接近死机的情况,当多网卡绑定之后,这种情况会得到明显改善。

2、Linux环境

1. 编辑虚拟网络接口配置文件,指定网卡IP
vi/etc/sysconfig/network-scripts/ifcfg-bond0
[root@rhas-13root]#cp/etc/sysconfig/network-scripts/ifcfg-eth0ifcfg-bond0
2#viifcfg-bond0
将第一行改成DEVICE=bond0
#catifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
IPADDR=172.31.0.13
NETMASK=255.255.252.0
BROADCAST=172.31.3.254
ONBOOT=yes
TYPE=Ethernet
这里要主意,不要指定单个网卡的IP地址、子网掩码或网卡ID。将上述信息指定到虚拟适配器(bonding)中即可。
[root@rhas-13network-scripts]#catifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none

MASTER=bond0

SLAVE=yes

[root@rhas-13 network-scripts]# cat ifcfg-eth1
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes

3#vi/etc/modules.conf
编辑/etc/modules.conf文件,加入如下一行内容,以使系统在启动时加载bonding模块,对外虚拟网络接口设备为bond0

加入下列两行
aliasbond0bonding
optionsbond0miimon=100mode=1
说明:miimon是用来进行链路监测的。比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。
mode=0表示loadbalancing(round-robin)为负载均衡方式,两块网卡都工作。
mode=1表示fault-tolerance(active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份.
bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用
4#vi/etc/rc.d/rc.local
加入两行
ifenslavebond0eth0eth1

到这时已经配置完毕重新启动机器.
重启会看见以下信息就表示配置成功了
…………….
Bringingupinterfacebond0OK
Bringingupinterfaceeth0OK
Bringingupinterfaceeth1OK
…………….

下面我们讨论以下mode分别为0,1时的情况

mode=1工作在主备模式下,这时eth1作为备份网卡是noarp的
[root@rhas-13network-scripts]#ifconfig验证网卡的配置信息
bond0Linkencap:EthernetHWaddr00:0E:7F:25:D9:8B
inetaddr:172.31.0.13Bcast:172.31.3.255Mask:255.255.252.0
UPBROADCASTRUNNINGMASTERMULTICASTMTU:1500Metric:1
RXpackets:18495errors:0dropped:0overruns:0frame:0
TXpackets:480errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:0
RXbytes:1587253(1.5Mb)TXbytes:89642(87.5Kb)

eth0Linkencap:EthernetHWaddr00:0E:7F:25:D9:8B
inetaddr:172.31.0.13Bcast:172.31.3.255Mask:255.255.252.0
UPBROADCASTRUNNINGSLAVEMULTICASTMTU:1500Metric:1
RXpackets:9572errors:0dropped:0overruns:0frame:0
TXpackets:480errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:833514(813.9Kb)TXbytes:89642(87.5Kb)
Interrupt:11

eth1Linkencap:EthernetHWaddr00:0E:7F:25:D9:8B
inetaddr:172.31.0.13Bcast:172.31.3.255Mask:255.255.252.0
UPBROADCASTRUNNINGNOARPSLAVEMULTICASTMTU:1500Metric:1
RXpackets:8923errors:0dropped:0overruns:0frame:0
TXpackets:0errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:753739(736.0Kb)TXbytes:0(0.0b)
Interrupt:15
那也就是说在主备模式下,当一个网络接口失效时(例如主交换机掉电等),不回出现网络中断,系统会按照cat/etc/rc.d/rc.local里指定网卡的顺序工作,机器仍能对外服务,起到了失效保护的功能.

在mode=0负载均衡工作模式,他能提供两倍的带宽,下我们来看一下网卡的配置信息
[root@rhas-13root]#ifconfig
bond0Linkencap:EthernetHWaddr00:0E:7F:25:D9:8B
inetaddr:172.31.0.13Bcast:172.31.3.255Mask:255.255.252.0
UPBROADCASTRUNNINGMASTERMULTICASTMTU:1500Metric:1
RXpackets:2817errors:0dropped:0overruns:0frame:0
TXpackets:95errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:0
RXbytes:226957(221.6Kb)TXbytes:15266(14.9Kb)

eth0Linkencap:EthernetHWaddr00:0E:7F:25:D9:8B
inetaddr:172.31.0.13Bcast:172.31.3.255Mask:255.255.252.0
UPBROADCASTRUNNINGSLAVEMULTICASTMTU:1500Metric:1
RXpackets:1406errors:0dropped:0overruns:0frame:0
TXpackets:48errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:113967(111.2Kb)TXbytes:7268(7.0Kb)
Interrupt:11

eth1Linkencap:EthernetHWaddr00:0E:7F:25:D9:8B
inetaddr:172.31.0.13Bcast:172.31.3.255Mask:255.255.252.0
UPBROADCASTRUNNINGSLAVEMULTICASTMTU:1500Metric:1
RXpackets:1411errors:0dropped:0overruns:0frame:0
TXpackets:47errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:112990(110.3Kb)TXbytes:7998(7.8Kb)
Interrupt:15

在这种情况下出现一块网卡失效,仅仅会是服务器出口带宽下降,也不会影响网络使用.
通过查看bond0的工作状态查询能详细的掌握bonding的工作状态
[root@rhas-13bonding]#cat/proc/net/bonding/bond0
bonding.c:v2.4.1(September15,2003)

BondingMode:loadbalancing(round-robin)
MIIStatus:up
MIIPollingInterval(ms):0
UpDelay(ms):0
DownDelay(ms):0
MulticastMode:allslaves

SlaveInterface:eth1
MIIStatus:up
LinkFailureCount:0
PermanentHWaddr:00:0e:7f:25:d9:8a

SlaveInterface:eth0
MIIStatus:up
LinkFailureCount:0
PermanentHWaddr:00:0e:7f:25:d9:8b

三、实施及测试步骤

我们在这介绍的Linux双 网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链 接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已存在,被称为Trunking和Etherchannel 技术,在Linux的2.4.x的内核中也采用这这种技术,被称为bonding。

bonding技术的最早应用是在集群——beowulf上,为了提高集群节点间的数据传输而设计的。下面我们讨论一下bonding 的原理,什么是bonding需要从网卡的混杂(promisc)模式说起。我们知道,在正常情况下,网卡只接收目的硬件地址(MAC Address)是自身Mac的以太网帧,对于别的数据帧都滤掉,以减轻驱动程序的负担。但是网卡也支持另外一种被称为混杂promisc的模式,可以接收网络上所有的帧,比如说tcpdump,就是运行在这个模式下。bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的 Mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据帧传送给bond驱动程序处理。

直接给两块网卡设置同一IP地址是不可能的。Kernels 2.4.12及以后的版本均供bonding模块,以前的版本可以通过patch实现。

一、编辑虚拟网络接口配置文件,指定网卡IP

假设eth0是对外服务的网卡,已经调试好网络;eth1是希望与eth0同时对外提供服务的网卡。

#cd /etc/sysconfig/network-scripts/

#vi ifcfg-bond0

复制代码

写入如下信息和原来ifcfg-eth0 的配置其实差不多。

所以我建议执行如下语句,将ifcfg-eth0复制一份再改。

#cp ifcfg-eth0 ifcfg-bon0

复制代码

将ifcfg-bon0的信息修改大致如下:

DEVICE=bond0

BOOTPROTO=static

IPADDR=[IP]

NETMASK=[MASK]

BROADCAST=[BROADCAST]

GATEWAY=[GATEWAY]

ONBOOT=yes

TYPE=Ethernet

复制代码

二、配置真实网卡

修改ifcfg-eth0如下:

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

MASTER=bond0#如果不写,则必须做第四步

SLAVE=yes #如果不写,则必须做第四步

USERCTL=yes

复制代码

类似地修ifcfg-eth1如下:

DEVICE=eth1

BOOTPROTO=none

ONBOOT=yes

MASTER=bond0#如果不写,则必须做第四步

SLAVE=yes #如果不写,则必须做第四步

USERCTL=yes

复制代码

三、加载模块,让系统支持bonding

默认情况下,内核已支持bonding,只需要简单修改/etc/modprobe.conf 这个配置文档就可以了:添加两行

aliasbond0 bonding

optionsbond0 miimon=100 mode=1

复制代码

说明:

mode指定了bond0的工作模式,常用的是0和1,0表示负载均衡方式,1表示主从方式,可根据需要自行配置。常用的为0,1两种。mode=0表示 load balancing (round-robin)为负载均衡方式,两块网卡都工作。mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份。bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。 miimon是用来进行链路监测的。比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路。

四、增加开机启动脚本

在 /etc/rc.d/rc.local里加上

ifenslavebond0 eth0 eth1

复制代码

如果eth0和eth1都写了MASTER和SLAVE,则上面的步骤做不做都无所谓。

五、重启

reboot或者service network restart 都可以看到结果。
六、测试

ping着某个地址,当然是能ping通的地址啦。如果发现网络不通,请检查ifcfg-bond0的网络设置。

然后拔掉一根网线,如果ping没断,证明拔了一根backup的线,不是主线,重新插上等两分钟。

此时拔掉另一根网线,估计现在可以看到ping超时或者卡在那里,稍等10~30秒,ping继续连同。

测试成功。

四、交换机LACP配置

如果使用mode 0 ,则不需要进行交换机配置,其他的模式必须配置交换机服务,由于各交换机配置不一样,因此使用标准LACP服务:

实验目的:
1、掌握其于Cisco私有的LACP的链路聚合协议的配置方法。

2、掌握第二层与第三层的LACP配置区别。

3、LACP为公开标准链路聚合协议。

实验拓扑图:


实验步骤及要求:

1、本实验使用两台Cisco Catalyst 3750交换机。并按照拓扑连接相应的交换机的线缆。

2、为了能够保证实验成功,因此建议将Fa1/0/1 – 22号接口置为shutdown状态。

3、由于LACP的工作特性与PAgP非常相似,因此本次实验仅列出LACP的配置命令,具体解释请参看实验:ConfiguringL2 & L3 EtherChannel with LAC一节。

4、首先在SW1和SW2交换机上配置第二层的LACP的链路聚合:

SW1(config)#interface range fastEthernet1/0/23 - 24

SW1(config-if-range)#channel-protocol lacp

SW1(config-if-range)#channel-group 1 modeactive

Creating a port-channel interfacePort-channel 1

SW1(config-if-range)#exit

SW2(config)#interface range fastEthernet1/0/23 – 24

SW2(config-if-range)#channel-protocol lacp

SW2(config-if-range)#channel-group 1 modepassive

SW2(config-if-range)#exit

5、查看SW1或SW2的LACP汇总信息:
SW1#show etherchannel summary
Flags:D - down P - inport-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3 S -Layer2
U - in use f -failed to allocate aggregator
u - unsuitable for bundling
w - waiting to be aggregated
d - default port

Number of channel-groups in use: 1
Number of aggregators: 1

GroupPort-channelProtocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(SU) LACP Fa1/0/23(P) Fa1/0/24(P)
SW1#
5、在两台交换机配置VLAN 1的IP地址,用于测试,并且建议各位使用扩展的ping命令去测试聚合链路的容错:
SW1(config)#interface vlan 1
SW1(config-if)#ip address 192.168.1.1 255.255.255.0
SW1(config-if)#no shutdown
SW1(config-if)#exit
SW1(config)#

SW2(config)#interface vlan 1
SW2(config-if)#ip address 192.168.1.2 255.255.255.0
SW2(config-if)#no shutdown
SW2(config-if)#exit
Ping的命令信息如下:
SW1#ping 192.168.1.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/1 ms
SW1#
6、删除之前的第二层的LACP的配置或重启交换机。
7、在两台交换机配置第三层的LACP的链路聚合:
SW1(config)#interface port-channel 1
SW1(config-if)#no switchport
SW1(config-if)#ip address 192.168.1.1 255.255.255.0
SW1(config-if)#no shutdown
SW1(config-if)#exit
SW1(config)#
SW1(config)#interface range fastEthernet 1/0/23 - 24
SW1(config-if-range)#no switchport
SW1(config-if-range)#channel-protocol lacp
SW1(config-if-range)#channel-group 1 mode active
SW1(config-if-range)#exit

SW2(config)#interface port-channel 1
SW2(config-if)#no switchport
SW2(config-if)#ip address 192.168.1.2 255.255.255.0
SW2(config-if)#no shutdown
SW2(config-if)#exit
SW2(config)#
SW2(config)#interface range fastEthernet 1/0/23 - 24
SW2(config-if-range)#no switchport
SW2(config-if-range)#channel-protocol lacp
SW2(config-if-range)#
SW2(config-if-range)#channel-group 1 mode passive
SW2(config-if-range)#exit
SW2(config)#exit
8、查看聚合链路的汇总信息:
SW2#show etherchannel summary
Flags:D - down P - inport-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3 S -Layer2
U - in use f -failed to allocate aggregator
u - unsuitable for bundling
w - waiting to be aggregated
d - default port


Number of channel-groups in use: 1
Number of aggregators: 1

GroupPort-channelProtocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(RU) LACP Fa1/0/23(P) Fa1/0/24(P)

SW2#

SW1#show etherchannel summary
Flags:D - down P - inport-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3 S -Layer2
U - in use f -failed to allocate aggregator
u - unsuitable for bundling
w - waiting to be aggregated
d - default port


Number of channel-groups in use: 1
Number of aggregators: 1

GroupPort-channelProtocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(RU) LACP Fa1/0/23(P) Fa1/0/24(P)

SW1#
9、使用ping命令测试:
SW2#ping 192.168.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/1 ms
SW2#
10、实验完成。
第二层的LACP聚合。
R关键字指示出当前聚合为三层链路聚合。


你可能感兴趣的:(双链路LACP实施)