虚拟路由器冗余协议(VRRP)

虚拟路由器冗余协议(VRRP

5.1 VRRP协议原理

VRRP协议(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)与HSRP类似,能够提高网络的稳定性和可靠性,其由IETF标准RFC2338定义。由于VRRP与HSRP原理类似,只是术语和功能上有细微的差别,所以本节简要介绍VRRP的原理。

1、VRRP的工作原理

如图5.1所示,VRRP协议将LAN网段上的两台或者多台路由器可以作为一台“虚拟”路由器使用,通过同一个虚拟IP地址和虚拟MAC地址而对外提供服务。如果其中一台出现故障,另一台就能接替它,继续完成路由功能。

虚拟路由器冗余协议(VRRP)

图5.1 VRRP创建了一个有自己MAC地址和IP地址的虚拟路由器

VRRP协议组中包括一台主路由器、备份路由器和一台虚拟路由器组成。VRRP协议中活跃路由器称为主路由器,其转发发送到虚拟路由器的数据包。而其他VRRP组中非主路由器的路由器都处于备份状态。虚拟路由器是向最终用户代表一台可以连续工作的路由器。

VRRP与HSRP相同根据优先级大小选择主路由器,同一个VRRP组中优先级最大的路由器成为主路由器,状态为Master。组中其他路由器都处于备份状态,并检测主路由器的状态。主路由器每隔一段时间会发送一个VRRP通告,通告其工作正常。如果VRRP组中的备份路由器长时间没有收到主路由器的通告,就将自己改为Master状态。VRRP组内可能有多台备份路由器同时认为自己是主路由器,这时每台主路由器都会比较收到的VRRP通告中的优先级与本地的优先级的大小。如果本地优先级小于VRRP通告的优先级,则自身路由器状态为备份状态,否则为Master状态不变。最终一个VRRP组中优先级最大的路由器成为新的主路由器。

2、虚拟MAC地址

VRRP组中虚拟路由器的MAC地址格式为0000.5e00.01xx,其中xx为VRRP组号。

例如:VRRP组47,则虚拟路由器的MAC地址是0000.5e00.012f。

3、VRRP通告

VRRP协议中只定义了一种报文即VRRP通告,其使用IP协议协议号为112,目的地址为组播地址224.0.0.18。

4、VRRP的状态

VRRP协议共定义了三种状态:Master(主状态)、Backup(备份状态)、Initialize(初始状态)。

n 初始状态:所有路由器都从初始状态开始,即进程启动后进入此状态。

n 备份状态:接收主路由器发送的VRRP组播通告,由此判断主路由器的状态;丢弃发送到虚拟路由器的MAC地址和IP地址的数据包;不响应对虚拟IP地址的ARP请求。

n 主状态:定期发送VRRP组播通告;响应对虚拟IP地址的ARP请求,并且发送免费ARP报文使网络内主机知道虚拟IP地址和虚拟MAC地址的对应关系;转发目的地址是虚拟MAC地址的IP数据包。

VRRP三种状态间的转换关系,如图5.2所示。

虚拟路由器冗余协议(VRRP)

图5.2 VRRP三种状态之间的转换关系

在初始状态如果接收到startup消息,并且优先级为255(优先级范围0~255)时,则路由器状态转为主状态;如果优先级小于255时,则路由器状态转为备份状态。

在备份状态如果接口收到shutdown消息,则路由器状态转为初始状态;如果Master_Down_Interval时间超时,则路由器转为主状态。

在主状态如果接口收到shutdown消息,则路由器状态转为初始状态;如果接收到的VRRP组播通告中的优先级大于本地优先级,则路由器状态转为备份状态。

虚拟路由器冗余协议(VRRP) 名称解释:

1、Master_Down_Interval相当于HSRP中的保持时间,即备份路由器一段时间没有收到主路由器的VRRP通告,则认为主路由器异常,自身成为主路由器。

2、VRRP优先级与HSRP优先级相同,范围是0~255,可以配置的范围是1~254,默认为100。如果,VRRP配置的虚拟IP地址和路由器的实际物理接口地址相同时这个VRRP路由器称为IP地址拥有者,这时此路由器的VRRP优先级为255。

5、VRRP计时器

VRRP通告的发送时间默认为1s,而Master_Down_Interval时间是3倍的主路由器VRRP通告发送时间再加上一个偏移时间,具体的计算公式详见RFC2338。

虚拟路由器冗余协议(VRRP)