资源描述
首先对伟大的楼主致以崇高的敬意;
然后再补充几点关于HSRP和VRRP的区别:
1.VRRP默认抢占,HSRP默认不抢占;
2.VRRP虚拟IP可以共用原IP,HSRP需要独立占一个IP(应该没记反);
3.VRRP能够有1个master和多个backup,而HSRP只能用1个active和1个standby,GLBP能够有1个AVG和4个AVF。
CCNP交换实验:HSRP VRRP GLBP网关冗余和负载均衡
HSRP VRRP GLBP网关冗余和负载均衡实验
为了保障网络的稳定性,减少因网络设备故障而导致网络瘫痪,在OSI/RM的二层,交换机厂商开发出了STP以及PVST等技术,实现交换机的冗余备份和负载均衡。那在第三层呢,是否有相应的技术解决路由器的冗余备份和负载均衡呢?当然有,那就有HSRP(思科私有协议)和VRRP(IEEE标准)。
不过HSRP和VRRP正常情况下,只有冗余备份的功能,而要实现负载均衡的功能,只有创建多个备份组,两个或多个虚拟网关,让局域内的PC机配置不同的网关,从而实现负载均衡的功能,这样在操作上就显得比较麻烦。
为了解决这个问题,思科公司进一步开发出了GLBP技术(Gateway Load Balance Protocol),GLBP由多个路由器组成一个备份组,将每台路由器的MAC地址(最多四个)加入备份组,成为虚拟网关的MAC地址组。当局域网内的PC机请求网关ARP响应时,虚拟网关的MAC地址组中MAC地址轮流响应,从而实现流量根据二层的网关MAC地址走不同的真实路由器,从而实现负载均衡。
实验拓扑图
1.JPG (24.21 KB)
2010-8-14 18:27
实验一:通过HSRP实现路由器的冗余备份和负载均衡
路由器R1上的配置
2.JPG (33.06 KB)
2010-8-14 18:27
在路由器R1配置备份组standby 1 虚拟网关IP为192.168.1.254,优先级为120,高于默认的优先级100,从而R1在备份组1中成为ACTIVE路由器,并配置占先权和端口跟踪,当E0/0故障时,standby 1 priority优先级自动降低30.
备份组2 standby 2虚拟网关IP为192.168.1.253,优先级使用默认的100(默认优先级100系统不显示),也需要配置占先权,使用能够在备份组2的ACTIVE路由器R2故障时,启用占先权功能,由standby成为ACTIVE,保障网络的运行稳定。
在ISIS路由协议中,配置E0/1接口为被动接口模式,以防止通过E0/1向R2传播路由信息,形成环路。
路由器R2上的配置
3.JPG (30.55 KB)
2010-8-14 18:27
R2路由器则与R1正好相反,备份组1 在R2路由器为 STANDBY角色,备份组2 在路由器R1则为ACTIVE角色。
同样,在路由器R2上的ISIS路由协议中,也需要配置E0/1接口为被动模式。
查看路由器R1上的HSRP配置
4.JPG (76.02 KB)
2010-8-14 18:27
查看路由器R2上的HSRP配置
5.JPG (70.65 KB)
2010-8-14 18:27
在局域网PC上验证使用不同网关上网
6.JPG (80.68 KB)
2010-8-14 18:27
实验二:通过VRRP实现路由器的冗余备份和负载均衡
路由器R1上的配置
11.JPG (19.16 KB)
2010-8-14 18:27
VRRP是IEEE所有厂家支持的路由冗余备份技术,和思科私有HSRP技术配置类似,区别就是HSRP的端口跟踪是在启用HSRP协议的接口下配置,而VRRP则在全局模式下配置端口跟踪track组1,然后在配置VRRP协议的接口调用track 组1,。
路由器R2上的配置
12.JPG (18.9 KB)
2010-8-14 18:27
同HSRP一样,在路由器R2配置VRRP协议,需要和路由器R1配置为互补的参数设置。从而实现网关的冗余。
查看路由器R1上的VRRP配置
13.JPG (54.56 KB)
2010-8-14 18:27
查看路由器R2上的VRRP配置
14.JPG (49.1 KB)
2010-8-14 18:27
故障验证,在路由器R1断开上联口E0/0,查看在两台路由器上VRRP组的角色变化。
15.JPG (71.62 KB)
2010-8-14 18:27
当路由器R1的上联口故障不能正常工作时,通过端口跟踪,优先级自动降低30,由120降为90,此时路由器R2的优先级100高于R1的优先级90,通报抢夺占先权,马上由BACKUP在为MASTER,而路由器R1则由MASTER成为BACKUP.
16.JPG (34.19 KB)
2010-8-14 18:27
当路由器R1的上联口恢复正常工作时,通过端口跟踪,发现端口E0/0工作正常,优先级自动恢复为120,高于路由器R2的优先级100,路由器R1则通过抢夺占先权由BACKUP成为MASTER,而路由器R2由于优先级低于R1则重新变BACKUP
在客户端PC验证通过不同网关使用的正常。
17.JPG (24.64 KB)
2010-8-14 18:27
18.JPG (27.1 KB)
2010-8-14 18:27
实验三:通过GLBP实现路由器的冗余备份和负载均衡
路由器R1的GLBP配置
21.JPG (25.64 KB)
2010-8-14 18:27
路由器R2的GLBP配置
22.JPG (26.22 KB)
2010-8-14 18:27
GLBP协议的配置和HSRP基本相同,只是实现原理有所区别,HSRP是通过配置多个备份组实现负载均衡,而GLBP通过一个备份组,就可以实现负载均衡。
查看路由器R1和R2上的GLBP配置
23.JPG (80.88 KB)
2010-8-14 18:27
24.JPG (71.31 KB)
2010-8-14 18:27
GLBP协议支持三种负载均衡方式,
1、根据不同主机的源MAC地址 2、根据ARP请求轮询 3、根据路由器的权重分配,权重越高的被分配的可能性越大。
25.JPG (39.87 KB)
2010-8-14 18:27
在PC机验证GLBP通过同一网关,不同MAC地址轮流响应ARP请求,从而实现流量负载均衡的功能。
26.JPG (21.26 KB)
2010-8-14 18:27
HSRP/SLB/VRRP/GLBP简单理解
一、HSRP介绍及相关配置
1)HSRP介绍
全称Hot Standby Routing Protocol,原理比较简单,类似于服务器HA群集,
两台或更多的路由器以同样的方式配置成Cluster,创建出单个的虚拟路由器,
然后客户端将网关指向该虚拟路由器。
最后由HSRP决定哪个路由器扮演真正的默认网关。
具体说,HRSP用于在源主机无法动态地学习到网关IP地址的情况下防止默认路由的失败。
它主要用于多接入,多播和广播局域网(例如以太网)。
2)相关技术介绍
局域网中,在主网关失效瘫痪的情况下,如何找到备份网关,主要有以下几种办法:
proxy ARP
IRDP
动态路由
HSRP
Proxy ARP
支持Proxy ARP 的计算机无论与本网段的计算机还是不同网段的计算机进入通讯都发送ARP广播以寻找与目的地址相对应的MAC地址,
这时,知道目的地址的路由器会响应ARP的请求,并将自己的MAC地址广播给源计算机,
然后源计算机就将IP数据包发给该路由器,并由路由器最终将数据包发送到目的。
ARP代理的主要缺点是切换时间长,如果主网关正在传输数据时失效,客户机仍然会继续发包,导致传输中断,
只有再另外发送Proxy ARP请求或重新启动之后才能找到备用网关以进行传输。
IRDP
支持IRDP的客户机会监听主网关发出的“Hello”的多点广播信息包,
如果该计算机不再收到“Hello”信息时,它就会利用备份路由器进行数据传输。
动态路由
如果使用动态路由来实现网关切换,则存在收敛过慢和内存占用的问题。
HRSP
自动切换
3)HRSP原理
需要注意的是,Cluster里的每个成员路由器仍然是标准的路由器,
客户端仍然可以将成员路由器配置成其默认网关。
在Cisco路由器中,最多可以配置256个HSRP组,
因为HSRP能够使用的MAC地址类似于:0000.0c07.ac**。
HRSP每隔3秒发送hello包,包括group ID,HSRP group和优先级(默认为100)。
路由器彼此之间依据优先级,确定优先级最高的路由器是活动路由器。
如果优先级相同,在IP地址高的成为活动路由器。
在HRSP组中,只允许同时存在一个活动路由器,其他路由器都处于备用状态,
备用路由器不转发数据包。
如果备用路由器持续不断地收到活动路由器发来的hello包,
则其会一直处于备用状态。
一旦备用路由器在规定的时间内(Hold Time,默认10秒)没有收到hello包,,
则认为活动路由器失效,
优先级最高的备用路由器就接替活动路由器的角色,开始转发数据包。
4)HRSP preempt技术
HRSP技术能够保证优先级高的路由器失效恢复后总能处于活动状态。
活动路由器失效后,优先级最高的备用路由器处于活动状态,
如果没有使用preempt技术,
则当活动路由器恢复后,只能处于备用状态,
先前的备用服务器代替其角色处于活动状态,直到下一次选举发生。
5)HRSP track技术
如果所监测的端口出现故障,则也可以进行路由器的切换。
如果主路由器上有多条线路被跟踪,
则当一条线路出现故障时,就会切换到备份路由器上,即使其他都线路正常工作,
直到主路由器该线路正常工作,才能重新切换回来。
该功能在实际应用中完全可以由线路备份功能实现。
6)HRSP配置
routerA#conf t
routerA(config)#int e0
routerA(config)#standby ip 172.16.1.254
routerA(config)#standby preempt
routerA(config)#standby track serial 0
routerA(config)#exit
routerA#
二、SLB介绍及相关配置
1)SLB介绍
全称Server Load Balancing,可以看作HSRP的扩展,实现多个服务器之间的复杂均衡。
虚拟服务器代表的是多个真实服务器的群集,
客户端向虚拟服务器发起连接时,通过某种复杂均衡算法,转发到某真实服务器。
负载均衡算法有两种:
Weighted round robin(WRR)和Weighted least connections(WLC),
WRR使用加权轮询算法分配连接,WLC通过一定的权值,将下一个连接分配给活动连接数少的服务器。
2)SLB配置
配置分为两部分,
第一部分是使用slb serverfarm serverfarm_name命令定义SLB选项,包括指定真实服务器地址;
第二部分是使用ip slb vserver virtual_server-name来指定虚拟服务器地址。
router#config t
router(config)#ip slb serverfarm email
router(config-slb-sfarm)#real 192.168.1.1
router(config-slb-sfarm)#inservice
router(config-slb-sfarm)#real 192.168.1.2
router(config-slb-sfarm)#inservice
router(config-slb-sfarm)#exit
router(config)#ip slb vserver vserver_one
router(config-slb-vserver)#vitual 10.1.1.1 tcp 25
router(config-slb-vserver)#serverfarm email
router(config-slb-vserver)#inservice
router(config-slb-vserver)#exit
router(config)#exit
router#
三、VRRP介绍
全称Virtual Router Redundancy Protocol,和HSRP类似,
只是HSRP是Cisco专有的协议,只应用在Cisco设备上。
VRRP符合Internet标准,定义见RFC2338,是不同厂家之间共同遵循的标准。
VRRP负责从VRRP路由器组中选择一个作为Master,
然后客户端使用虚拟路由器地址作为其默认网关。
配置例子见:
四、GLBP介绍及配置
1)GLBP介绍
全称Gateway Load Banancing Protocol,
和HRSP、VRRP不同的是,GLBP不仅提供冗余网关,还在各网关之间提供负载均衡,
而HRSP、VRRP都必须选定一个活动路由器,而备用路由器则处于闲置状态。
和HRSP不同的是,GLBP可以绑定多个MAC地址到虚拟IP,
从而允许客户端选择不同的路由器作为其默认网关,而网关地址仍使用相同的虚拟IP,
从而实现一定的冗余。
2)活动网关选举
使用类似于HRSP的机制选举活动网关,
优先级最高的路由器成为活动落由器,称作Acitve Virtual Gateway,其他非AVG提供冗余。
某路由器被推举为AVG后,和HRSP不同的工作开始了,AVG分配虚拟的MAC地址给其他GLBP组成员。
所有的GLBP组中的路由器都转发包,
但是各路由器只负责转发与自己的虚拟MAC地址的相关的数据包。
3)地址分配
每个GLBP组中最多有4个虚拟MAC地址,非AVG路由器有AVG按序分配虚拟MAC地址,
非AVG也被称作Active Virtual Forwarder(AVF)。
AVF分为两类:Primary Virtual Forwarder和Secondary Virtual Forwarder。
直接由AVG分配虚拟MAC地址的路由器被称作Primary Virtual Forwarder,
后续不知道AVG真实IP地址的组成员,只能使用hellos包来识别其身份,然后被分配虚拟MAC地址,此类被称作Secondary Virtual Forwarder。
4)GLBP配置
如果AVG失效,则推举就会发生,决定哪个AVF替代AVG来分配MAC地址,推举机制依赖于优先级。
最多可以配置1024个GLBP组,不同的用户组可以配置成使用不同的组AVG来作为其网关。
router#conf t
router(config)#int fastethernet 0/0
router(config-if)#ip address 10.1.1.1
router(config-if)#glbp 99 ip 10.1.1.254
router(config-if)#glbp 99 priority 105
router(config-if)#glbp 99 preempt delay 10
router(config-if)#glbp 99 weighting track int s0 10
router(config-if)#exit
router(config)#^Z
展开阅读全文