HSRP VRRP GLBP网关冗余和负载均衡

来源:互联网 发布:淘宝新规处罚规定 编辑:程序博客网 时间:2024/05/16 09:51

一、HSRP/SLB/VRRP/GLBP简单理解

HSRP介绍:

HSRP:热备份路由器协议(HSRP:Hot Standby Router Protocol)


热备份路由器协议(HSRP)的设计目标是支持特定情况下 IP 流量失败转移不会引起混乱、并允许主机使用单路由器,以及即使在实际第一跳路由器使用失败的情形下仍能维护路由器间的连通性。

负责转发数据包的路由器称之为主动路由器(Active Router)。一旦主动路由器出现故障,HSRP 将激活备份路由器(Standby Routers)取代主动路由器。HSRP 协议提供了一种决定使用主动路由器还是备份路由器的机制,并指定一个虚拟的 IP 地址作为网络系统的缺省网关地址。如果主动路由器出现故障,备份路由器(Standby Routers)承接主动路由器的所有任务,并且不会导致主机连通中断现象。


HSRP 运行在 UDP 上,采用端口号1985。路由器转发协议数据包的源地址使用的是实际 IP 地址,而并非虚拟地址,正是基于这一点,HSRP 路由器间能相互识别.


1、HSRP协议概述 
  实现HSRP的条件是系统中有多台路由器,它们组成一个“热备份组”,这个组形成一个虚拟路由器。在任一时刻,一个组内只有一个路由器是活动的,并由它来转发数据包,如果活动路由器发生了故障,将选择一个备份路由器来替代活动路由器,但是在本网络内的主机看来,虚拟路由器没有改变。所以主机仍然保持连接,没有受到故障的影响,这样就较好地解决了路由器切换的问题。


  为了减少网络的数据流量,在设置完活动路由器和备份路由器之后,只有活动路由器和备份路由器定时发送HSRP报文。如果活动路由器失效,备份路由器将接管成为活动路由器。如果备份路由器失效或者变成了活跃路由器,将由另外的路由器被选为备份路由器。


在实际的一个特定的局域网中,可能有多个热备份组并存或重叠。每个热备份组模仿一个虚拟路由器工作,它有一个Well-known-MAC地址和一个IP地址。该IP地址、组内路由器的接口地址、主机在同一个子网内,但是不能一样。当在一个局域网上有多个热备份组存在时,把主机分布到不同的热备份组,可以使负载得到分担。


2、HSRP的工作原理


HSRP协议利用一个优先级方案来决定哪个配置了HSRP协议的路由器成为默认的主动路由器。如果一个路由器的优先级设置的比所有其他路由器的优先级高,则该路由器成为主动路由器。路由器的缺省优先级是100,所以如果只设置一个路由器的优先级高于100,则该路由器将成为主动路由器。 


通过在设置了HSRP协议的路由器之间广播HSRP优先级,HSRP协议选出当前的主动路由器。当在预先设定的一段时间内主动路由器不能发送hello消息时,优先级最高的备用路由器变为主动路由器。路由器之间的包传输对网络上的所有主机来说都是透明的。


配置了HSRP协议的路由器交换以下三种多点广播消息: 
  Hello———hello消息通知其他路由器发送路由器的HSRP优先级和状态信息,HSRP路由器默认为每3秒钟发送一个hello消息; 
  Coup———当一个备用路由器变为一个主动路由器时发送一个coup消息; 
  Resign———当主动路由器要宕机或者当有优先级更高的路由器发送hello消息时,主动路由器发送一个resign消息。在任一时刻,配置了HSRP协议的路由器都将处于以下六种状态之一: 
  Initial———HSRP启动时的状态,HSRP还没有运行,一般是在改变配置或端口刚刚启动时进入该状态。 
  learn———路由器已经得到了虚拟IP地址,但是它既不是活动路由器也不是等待路由器。它一直监听从活动路由器和等待路由器发来的HELLO报文。 
  Listen———路由器正在监听hello消息。 
  Speak———在该状态下,路由器定期发送HELLO报文,并且积极参加活动路由器或等待路由器的竞选。 
  Standby———当主动路由器失效时路由器准备接管包传输功能。 
  Active———路由器执行包传输功能。



VRRP:Virtual Router Redundancy Protocol 
虚拟路由器冗余协议


虚拟路由器冗余协议(VRRP)是一种选择协议,它可以把一个虚拟路由器的责任动态分配到局域网上的 VRRP 路由器中的一台。控制虚拟路由器 IP 地址的 VRRP 路由器称为主路由器,它负责转发数据包到这些虚拟 IP 地址。一旦主路由器不可用,这种选择过程就提供了动态的故障转移机制,这就允许虚拟路由器的 IP 地址可以作为终端主机的默认第一跳路由器。使用 VRRP 的好处是有更高的默认路径的可用性而无需在每个终端主机上配置动态路由或路由发现协议。 VRRP 包封装在 IP 包中发送。

VRRP 将局域网的一组路由器(包括一个Master 即活动路由器和若干个Backup 即备份路由器)组织成一个虚拟路由器,称之为一个备份组。 这个虚拟的路由器拥有自己的IP 地址10.100.10.1(这个IP 地址可以和备份组内的某个路由器的接口地址相同),备份组内的路由器也有自己的IP 地址(如Master 的IP 地址为10.100.10.2,Backup 的IP 地址为10.100.10.3)。局域网内的主机仅仅知道这个虚拟路由器的IP 地址10.100.10.1,而并不知道具体的Master 路由器的IP 地址10.100.10.2 以及Backup 路由器的IP 地址10.100.10.3,它们将自己的缺省路由下一跳地址设置为该虚拟路由器的IP 地址10.100.10.1。于是,网络内的主机就通过这个虚拟的路由器来与其它网络进行通信。如果备份组内的Master 路由器坏掉,Backup 路由器将会通过选举策略选出一个新的Master 路由器,继续向网络内的主机提供路由服务。从而实现网络内的主机不间断地与外部网络进行通信。关于VRRP 协议的详细信息,可以参考RFC 2338。 


1、 应用实例

最典型的VRRP应用:RTA、RTB组成一个VRRP路由器组,假设RTB的处理能力高于RTA,则将RTB配置成IP地址所有者,H1、H2、H3的默认网关设定为RTB。则RTB成为主控路由器,负责ICMP重定向、ARP应答和IP报文的转发;一旦RTB失败,RTA立即启动切换,成为主控,从而保证了对客户透明的安全切换。 
在VRRP应用中,RTA在线时RTB只是作为后备,不参与转发工作,闲置了路由器RTA和链路L1。通过合理的网络设计,可以到达备份和负载分担双重效果。让RTA、RTB同时属于互为备份的两个VRRP组:在组1中RTA为IP地址所有者;组2中RTB为IP地址所有者。将H1的默认网关设定为RTA;H2、H3的默认网关设定为RTB。这样,既分担了设备负载和网络流量,又提高了网络可靠性。 

2、工作原理

一个VRRP路由器有唯一的标识:VRID,范围为0—255。该路由器对外表现为唯一的虚拟MAC地址,地址的格式为00-00-5E-00-01-[VRID]。主控路由器负责对ARP请求用该MAC地址做应答。这样,无论如何切换,保证给终端设备的是唯一一致的IP和MAC地址,减少了切换对终端设备的影响。

VRRP控制报文只有一种:VRRP通告(advertisement)。它使用IP多播数据包进行封装,组地址为224.0.0.18,发布范围只限于同一局域网内。这保证了VRID在不同网络中可以重复使用。为了减少网络带宽消耗只有主控路由器才可以周期性的发送VRRP通告报文。备份路由器在连续三个通告间隔内收不到VRRP或收到优先级为0的通告后启动新的一轮VRRP选举。


在VRRP路由器组中,按优先级选举主控路由器,VRRP协议中优先级范围是0—255。若VRRP路由器的IP地址和虚拟路由器的接口IP地址相同,则称该虚拟路由器作VRRP组中的IP地址所有者;IP地址所有者自动具有最高优先级:255。优先级0一般用在IP地址所有者主动放弃主控者角色时使用。可配置的优先级范围为1—254。优先级的配置原则可以依据链路的速度和成本、路由器性能和可靠性以及其它管理策略设定。主控路由器的选举中,高优先级的虚拟路由器获胜,因此,如果在VRRP组中有IP地址所有者,则它总是作为主控路由的角色出现。对于相同优先级的候选路由器,按照IP地址大小顺序选举。VRRP还提供了优先级抢占策略,如果配置了该策略,高优先级的备份路由器便会剥夺当前低优先级的主控路由器而成为新的主控路由器。

为了保证VRRP协议的安全性,提供了两种安全认证措施:明文认证和IP头认证。明文认证方式要求:在加入一个VRRP路由器组时,必须同时提供相同的VRID和明文密码。适合于避免在局域网内的配置错误,但不能防止通过网络监听方式获得密码。IP头认证的方式提供了更高的安全性,能够防止报文重放和修改等攻击。



GLBP介绍及配置 


  1)GLBP介绍 
  全称Gateway Load Banancing Protocol,和HRSP、VRRP不同的是,GLBP不仅提供冗余网关,还在各网关之间提供负载均衡, 而HRSP、VRRP都必须选定一个活动路由器,而备用路由器则处于闲置状态。 和HRSP不同的是,GLBP可以绑定多个MAC地址到虚拟IP, 从而允许客户端选择不同的路由器作为其默认网关,而网关地址仍使用相同的虚拟IP, 从而实现一定的冗余。 

   优先级最高的路由器成为活动路由器,称作Acitve Virtual Gateway,其他非AVG提供冗余。某路由器被推举为AVG后,和HRSP不同的工作开始了,AVG分配虚拟的MAC地址给其他GLBP组成员。所有的GLBP组中的路由器都转发包,但是各路由器只负责转发与自己的虚拟MAC地址的相关的数据包。


2)地址分配 
  每个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。


3)GLBP配置 
  如果AVG失效,则推举就会发生,决定哪个AVF替代AVG来分配MAC地址,推举机制依赖于优先级。 
  最多可以配置1024个GLBP组,不同的用户组可以配置成使用不同的组AVG来作为其网关。 


二、HSRP、VRRP和GLBP的区别


然后再补充几点关于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。 

4.HSRP将报文承载在UDP报文上,而VRRP承载在TCP报文上(HSRP 使用UDP 1985端口,向组播地址224.0.0.2 发送hello消息。

5.VRRP的安全:VRRP协议包括三种主要的认证方式:

无认证;

简单的明文密码;

使用MD5 HMAC ip认证的强认证;强认证方法使用IP认证头(AH)协议.AH是与用在IPSEC中相同的协议,AH为认证VRRP分组中的内容和分组头提供了一个方法. MD5 HMAC 的使用表明使用一个共享的密钥用于产生hash值.路由器发送一个VRRP分组产生MD5 hash值,并将它置于要发送的通告中,在接收时,接受方使用相同的密钥和MD5值,重新计算分组内容和分组头的hash值,如果结果相同,这个消息就是真正来自于一个可信赖的主机,如果不相同,它必须丢弃,这可以防止攻击者通过访问LAN而发出能影响选择过程的通告消息或者其他一些方法中断网络.另外,VRRP包括一个保护VRRP分组不会被另外一个远程网络添加内容的机制(设置TTL值=255,并在接受时检查),这限制了可以进行本地攻击的大部分缺陷.而另一方面,HSRP在它的消息中使用的TTL值是1.

6.VRRP的崩溃间隔时间:3*通告间隔+时滞时间(skew-time)

7.hsrp为私有,vrrp不支持接口跟踪机制



三、HSRP VRRP GLBP网关冗余和负载均衡实验

为了保障网络的稳定性,减少因网络设备故障而导致网络瘫痪,在OSI/RM的二层,交换机厂商开发出了STP以及PVST等技术,实现交换机的冗余备份和负载均衡。那在第三层呢,是否有相应的技术解决路由器的冗余备份和负载均衡呢?当然有,那就有HSRP(思科私有协议)和VRRP(IEEE标准)。
不过HSRP和VRRP正常情况下,只有冗余备份的功能,而要实现负载均衡的功能,只有创建多个备份组,两个或多个虚拟网关,让局域内的PC机配置不同的网关,从而实现负载均衡的功能,这样在操作上就显得比较麻烦。
为了解决这个问题,思科公司进一步开发出了GLBP技术(GatewayLoad Balance Protocol),GLBP由多个路由器组成一个备份组,将每台路由器的MAC地址(最多四个)加入备份组,成为虚拟网关的MAC地址组。当局域网内的PC机请求网关ARP响应时,虚拟网关的MAC地址组中MAC地址轮流响应,从而实现流量根据二层的网关MAC地址走不同的真实路由器,从而实现负载均衡。

实验拓扑图


171639856.png


1、实验一:通过HSRP实现路由器的冗余备份和负载均衡
路由器R1上的配置

171639899.png


在路由器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上的配置

171639779.png


R2路由器则与R1正好相反,备份组1 在R2路由器为 STANDBY角色,备份组2 在路由器R1则为ACTIVE角色。同样,在路由器R2上的ISIS路由协议中,也需要配置E0/1接口为被动模式。

查看路由器R1上的HSRP配置

171639352.png


查看路由器R2上的HSRP配置

171640901.png



在局域网PC上验证使用不同网关上网

171640672.png



2、实验二:通过VRRP实现路由器的冗余备份和负载均衡

路由器R1上的配置

171640537.png


VRRP是IEEE所有厂家支持的路由冗余备份技术,和思科私有HSRP技术配置类似,区别就是HSRP的端口跟踪是在启用HSRP协议的接口下配置,而VRRP则在全局模式下配置端口跟踪track组1,然后在配置VRRP协议的接口调用track 组1。
路由器R2上的配置

171640746.png


同HSRP一样,在路由器R2配置VRRP协议,需要和路由器R1配置为互补的参数设置。从而实现网关的冗余。

查看路由器R1上的VRRP配置

171640424.png


查看路由器R2上的VRRP配置


171641956.png


故障验证,在路由器R1断开上联口E0/0,查看在两台路由器上VRRP组的角色变化。


171641515.png


当路由器R1的上联口故障不能正常工作时,通过端口跟踪,优先级自动降低30,由120降为90,此时路由器R2的优先级100高于R1的优先级90,通报抢夺占先权,马上由BACKUP在为MASTER,而路由器R1则由MASTER成为BACKUP.

171642853.png


当路由器R1的上联口恢复正常工作时,通过端口跟踪,发现端口E0/0工作正常,优先级自动恢复为120,高于路由器R2的优先级100,路由器R1则通过抢夺占先权由BACKUP成为MASTER,而路由器R2由于优先级低于R1则重新变BACKUP

在客户端PC验证通过不同网关使用的正常。

171642147.png

171642241.png


3、实验三:通过GLBP实现路由器的冗余备份和负载均衡

路由器R1的GLBP配置

171642437.png


路由器R2的GLBP配置

171643738.png


GLBP协议的配置和HSRP基本相同,只是实现原理有所区别,HSRP是通过配置多个备份组实现负载均衡,而GLBP通过一个备份组,就可以实现负载均衡。

查看路由器R1和R2上的GLBP配置

171643778.png


171644281.png

GLBP协议支持三种负载均衡方式,
1、根据不同主机的源MAC地址

2、根据ARP请求轮询 

3、根据路由器的权重分配,权重越高的被分配的可能性越大。

171644639.png


在PC机验证GLBP通过同一网关,不同MAC地址轮流响应ARP请求,从而实现流量负载均衡的功能。


171644696.png

171638358.png

0 0