VRRP基本概念

网络可靠性

可靠性是衡量一个网络的健壮程度的重要指标,一个可靠性差的网络,应对网络故障的能力相对较弱,当发生诸如网络设备故障或链路故障时,网络上所承载的业务受到的冲击往往比较大,严重时更会造成业务中断。为了提高网络的可靠性,一般的方法是实现网络设备的冗余性,基于网络的冗余性,可以实现链路备份,甚至是提高链路带宽的能力。

问题背景

如下图所示的网络中,多台PC连接在接入层交换机SW上,SW通过单链路上联路由器R1。这些PC属于相同的IP网段,并且均将默认网关地址配置为R1的GE0/0/0接口的IP地址192.168.1.253。

这个网络确实能够满足基本的通信需求,当PC发送数据到外部网络时,它们将数据包发给R1,再由R1将数据包转发出去。然而该网络在可靠性上却存在极大的短板——PC的默认网关没有冗余性,也就是说当SW与R1之间的互联链路发生故障时,或者R1发生故障时,PC就丢失了与默认网关的连通性,它们与外部网络的通信也就断开了,业务自然会受到影响。
在这里插入图片描述

解决方法

可以在网络中增加一台路由器,作为冗余的网关,如下图所示。
在这里插入图片描述

手动变更网关地址

当网络正常时,PC将默认网关设置为192.168.1.253,而当R1发生故障时,则由用户更改PC网卡的配置,将默认网关修改为92.168.1.252。

局限性

  • 解决问题方法是非常低效的,手工的配置变更增加了工作成本,当PC的数量特别多时,这部分工作量将变得非常大。
  • 并且该网络无法通过其自身的能力自动应对故障的发生,反而需要通过人工的方式进行响应,这不满足现代数据网络的需求。
  • 即使可以在PC网卡上配置冗余网关,但是这同样增加了PC端的配置复杂度,也增加了维护工作量。

期望行为

我们需要的解决方案是通过网络设备(网关)自身的能力实现冗余性,从而提升网络的可靠性,当故障发生时,网络要能够自动感知,并且实现自动切换,网络对故障的响应过程对业务无影响,PC端对此无感知。

VRRP

VRRP (Virtual Router Redundancy Protocol,虚拟路由器冗余协议)就是一个应对上述问题的绝佳解决方案。

VRRP使得多台同属一个广播域的网络设备能够协同工作,实现设备冗余,从而提高网络的可靠性。VRRP在实际网络中已被广泛部署,它目前有两个版本:VRRPv2和VRRPv3,其中VRRPv2仅适用于IPv4网络,而VRRPv3适用于IPv4和IPv6两种网络。

示例

如下图所示,在R1及R2的GE0/0/0接口上部署VRRP,使得两者能够协同工作,可以实现网关冗余。
在这里插入图片描述

(1)当VRRP开始工作后,它将产生一台虚拟路由器(Virtual Router ),这台虚拟路由器的IP地址为192.168.1.254(该地址由网络管理员指定),PC将自己的默认网关设置为该虚拟路由器的IP地址,如此一来,当PC向外部网络发送数据时,数据将被发送给虚拟路由器。(虚拟路由器是一台逻辑设备,它只是VRRP虚拟出来的一台路由器)

(2)当VRRP开始工作后,R1及R2会进行“选举”,胜出的路由器成为Master(主)路由器,其他的路由器则成为Backup(备份)路由器。

(3)Master路由器承担虚拟路由器的具体工作,如此一来当PC需要发送数据包到外部网络时,数据包实际被发给Master路由器R1,

(4)当R1发生故障时,通过VRRP协议的运作,R2能够感知到当前的Master路由器发生了故障,从而将自己的状态自动地切换Master,接下来它将接替原来属于R1的工作。

(5)在整个VRRP的切换过程中,用户是完全无感知的,PC的配置也不需要做任何变更。

VRRP相关概念

VRRP路由器

我们将运行VRRP的路由器称为VRRP路由器,不仅路由器能够支持VRRP,许多交换机、防火墙产品同样支持,路由器在此仅作为一个代表性的设备。实际上,VRRP是配置在路由器的接口上的,而且也是基于接口来工作的。

如上图所示,R1及R2均在各自的GE0/0/0上配置了VRRP。VRRP一旦被激活,路由器的接口便开始发送及侦听VRRP协议报文。需要协同工作的VRRP路由器(的接口)必须属于同一个广播域,否则VRRP报文无法正常交互。一旦交换机上的VLAN配置错误导致R1及R2属于不同VLAN(不同的广播域),那么VRRP的工作也将出现问题。

VRRP组及VRID

  • 一个VRRP组(VRRP Group)由多台协同工作的路由器(的接口)组成,使用相同的VRID (Virtual Router Identifier,虚拟路由器标识符)进行标识。
  • 属于同一个VRRP组的路由器之间交互VRRP协议报文并产生一台虚拟路由器。
  • 一个VRRP组中只能出现一台Master路由器。

如上图所示中,R1的GE0/0/0接口及R2的GE0/0/0接口协同工作,为PC实现冗余网关,因此这两个接口需加入同一个VRRP组,如果R1使用的VRID为1,那么R2在进行VRRP的相关配置时也必须使用相同的VRID。

  • 一个接口可以加入单个VRRP组,也可以加入多个VRRP组。当然,不同的VRRP组需使用不同的VRID进行区分。

虚拟路由器、虚拟IP地址及虚拟MAC地址

  • VRRP为每一个组抽象出一台虚拟路由器(Virtual Router ),该路由器并非真实存在的物理设备,而是由VRRP虚拟出来的逻辑设备。
  • 它拥有自己的IP地址以及MAC地址,其中虚拟路由器的IP地址(虚拟IP地址)由网络管理员在配置VRRP时指定,一台虚拟路由器可以有一个或多个IP地址。而虚拟MAC地址的格式是“0000-5e00-01xx",其中xx为VRID,例如当VRID为1时,则虚拟MAC地址为“0000-Se00-0101"。一个VRRP组只会产生一台虚拟路由器。
  • 当Master路由器收到请求虚拟路由器MAC地址的ARP Request时,它在ARP Reply中回应的MAC地址是虚拟MAC地址,而不是其物理接口的MAC地址。

如上图所示的网络中,R1的GE0/0/0接口的IP地址为192.168.1.253,R2的GE0/0/0接口的IP地址为192.168.1.252,而VRRP所产生的虚拟路由器的IP地址为192.168.1.254。实际上192.168.1.254不属于本网络中的任何一个物理接口,它专用于VRRP虛拟路由器,该地址将作为PC的默认网关地址。

对于PC而言,R1及R2的存在并不重要,重要的是虛拟路由器,当PC访问外部网络时,数据包被发往192.168.1.254, 而实际上接收及转发这些数据包的路由器就是Master路由器R1。

  • 通常情况下,VRRP 路由器的接口IP地址不会与虚拟路由器的IP地址重叠,也就是说我们会为虚拟路由器单独规划一个IP地址,而不会使用某台路由器的接口IP地址。其实也存在一个特殊的情况,例如在某些网络中IP地址资源比较紧缺,那么也有可能会将某台路由器的接口IP地址用于虚拟路由器,此时该路由器将无条件成为Master。

Master路由器、Backup 路由器

  • Master路由器是接口处于Master状态的路由器,也被称为主路由器。
  • Master路由器在一个VRRP组中承担报文转发任务。
  • 在每一个VRRP组中,只有Master路由器才会响应针对虚拟IP地址的ARP Request。
  • Master路由器会以一定的时间间隔周期性地发送VRRP报文,以便通知同一个VRRP组中的Backup路由器关于自己的存活情况。
  • Backup路由器是接口处于Backup状态的路由器,也被称为备份路由器。
  • Backup路由器将会实时侦听Master路由器发送出来的VRRP报文,它随时准备接替Master路由器的工作。

VRRP首先通过优先级(Priority)来从个组中‘选举”出Master路由器。VRRP优先级的值越大则路由器越有可能成为Master路由器。在优先级相等的情况下,接口IP地址越大的路由器越有可能成为Master路由器。

抢占模式(Preempt Mode )

如果Backup路由器激活了抢占功能,那么当它发现Master路由器的优先级比自己更低时,它将立即切换至Master状态,成为新的Master路由器,而如果Backup路由器没有激活抢占功能,那么即使它发现Master路由器的优先级比自己更低,也只能依然保持Backup状态,直到Master路由器失效。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值