VRRP报文格式和状态机

VRRP报文格式

VRRP协议的正常几作依赖于VRRP报文的正确收发。VRRP只定义了一种报文格式,即通告(Advertisement )报文,它被封装在IP报文,IP头部的协议号字段值为112,报文的目的IP地址是组播地址224.0.0.18。如下图所示,展示了VRRP报文格式:
在这里插入图片描述

字段的含义如下。

  • 版本(Version ):对于VRRPv2来说,该字段的值恒为2。
  • 类型(Type):VRRP只定义了通告报文这种报文类型,该字段的值恒为1。
  • 虚拟路由器ID (VRID):虚拟路由器的标识符,取值范围是1~255,属于同一个VRRP组的路由器需使用相同的VRID。
  • 优先级(Priority): 取值范围是0~255, 该值越大,则VRRP优先级越高,路由器也就越有可能成为Master。(缺省的VRRP优先级为100,HW)
  • IP地址个数(Count IP Address): VRRP组中虚拟IP地址的个数。这个字段的值指示了该报文后续的“IP 地址”字段的个数。
  • 认证类型(Authentication Type): VRRP报文的认证类型,有以下三种情况:
  1. 当该字段为0时,表示无认证(Non Authentication);
  2. 当该字段为1时,表示明文认证方式(Simple Text Password);
  3. 当该字段为2时,表示MD5认证方式(IP Authentication Header)。
  • 通告间隔(Advertisement Interval):VRRP报文的发送时间间隔(单位为秒),,缺省情况下,VRRP 的报文发送时间间隔为1s。
  • 校验和(Checksum):用于报文校验。
  • IP地址(IP Address): VRRP虚拟IP地址。
  • 认证数据(Authentication Data): VRRP认证数据,当VRRP明文认证或MD5认证被激活时,该字段则填充相应的数据。

VRRP状态机

VRRP定义了三种状态,RFC3768 (Virtual Router Redundancy Protocol)详细地描述了这些状态。

Initialize (初始状态)

  • Initialize状态是VRRP的初始状态。在接口配置VRRP后,如果该接口是Down的(比如接口被关闭,或者没有连接任何线缆),那么该接口的VRRP状态将会停滞在Initalize。
  • 当接口Up之后,如果其VRRP优先级为255 (这种情况发生在该接口的实际IP地址是VRRP虚拟IP地址的情况),那么接口的VRRP状态将由Initialize切换到Master,而如果接口的VRRP优先级不为255,则进入Backup状态。

Backup (备份状态)

处于Backup状态的路由器是VRRP组中的备份路由器,作为一台备份设备,它并不会参与数据转发工作,但是它会实时监控当前Master路由器的状态,并随时准备接替它的工作。Backup 路由器会进行如下工作:

  • 对关于VRRP虚拟IP地址的ARP请求不予回应。
  • 丢弃目的MAC地址为VRRP虚拟MAC地址的数据帧。
  • 不接收目的IP地址为VRRP虚拟IP地址的数据包。
  • 实时侦听Master路由器发送的VRRP报文,以便了解其工作状态。
  • 当其收到一个VRRP报文时,有一下三种情况:
  1. 若该VRRP报文的优先级为0(意味着当前Master路由器希望主动放弃Master状态),则将Master_Down_Timer设置为Skew_Time。
  2. 若该VRRP报文的优先级不为0,则当抢占模式(Preempt Mode)未激活时,或者当VRRP报文中的优先级大于或等于本接口优先级时,将Master_Adver_Interval设置为VRRP报文中的Advertisement Interval字段值;并重置Master_Down_Timer,将Master_Down_Timer的时间设置为Master_Down_Interval。
  3. 若该VRRP报文的优先级不为0,则当抢占模式激活并且VRRP报文中的优先级小于本接口优先级时,忽略该VRRP报文,立即切换到Master状态。
  • 当Master_Down_Timer超时(这意味着它认为当前的Master路由器已经失效),会有如下动作。
  1. 将接口的状态切换到Master
  2. 开始从接口发送自己的VRRP报文
  3. 从接口发送一个免费ARP Request (Gratuitous ARP Request)广播帧,该ARP Request携带了VRRP虚拟IP地址及虚拟MAC地址的绑定信息,用于刷新该接口所直连的广播域内的设备的ARP表、MAC地址表。

VRPP相关定时器

1 Master_Adver_Interval:Master路由器所发送VRRP报文中Advertisement Interval字段所填充的值,缺省时该值为1s。该时间间隔即Master路由器周期性发送VRRP报文的间隔。
2 Master_Down_Timer:Backup路由器将持续接收来自当前Master路由器的VRRP报文,每当报文到达时,Backup路由器上的Master_Down_Timer会被重置。如果一定时间内没有收到来自Master路由器的VRRP报文并导致Master_Down_Timer超时,那么Backup路由器将认为Master路由器己经失效。
3 Master_Down_Interval:一定时间没有收到来自Master路由器的VRRP报文后,Backup路由器可认为当前Master路由器已经失效。Master_Down_Interval = (3 * Master_Adver_Interval) +Skew_Time
4 Skew_Time:一个偏移时间,Skew_Time = ( ( 256 - VRRP优先级) * Master_Adver_Interval) / 256

Master(主状态)

处于Master状态的路由器是当前VRRP组的主路由器,它承担数据转发任务,Master路由器会进行如下工作:

  • 当收到关于虚拟IP地址的ARP请求时,以虚拟MAC地址进行回应。
  • 接收并转发目的MAC地址为虚拟MAC地址的报文。
  • 周期性地发送VRRP报文,时间间隔缺省为1s。
  • 当其收到一个VRRP报文时:
  1. 若该VRRP报文的优先级为0,则继续发送自己的报文。
  2. 若该VRRP报文的优先级不为0,并且比本接口的VRRP优先级值更小,则忽略该VRRP报文。
  3. 若该VRRP报文的优先级不为0,并且比本接口的VRRP优先级更大,或者VRRP优先级相等但是VRRP报文的源IP地址比本接口IP大,则将接口的状态切换到Backup。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值