1.VRRP概述
VRRP( Virtual Router Redundancy Protocol,虚拟路由器冗余协议)既能够实现网关的备份,又能解决多个网关之间互相冲突的问题,从而提高网络可靠性。
通过把几台路由设备联合组成一台虚拟的"路由设备",使用一定的机制保证当主机的下一跳路由设备出现故障时,及时将业务切换到备份路由设备,从而保持通讯的连续性和可靠性。
VRRP基本概念
1)
VRRP路由器:运行VRRP协议的路由器,如R1和R2。VRRP是配置在路由器的接口上的,而且也是基于接口来工作的。
VRID:一个VRRP组(VRRP Group)由多台协同工作的路由器(的接口)组成,使用相同的VRID(Virtual Router Identifier,虚拟路由器标识符)进行标识。属于同一个VRRP组的路由器之间交互VRRP协议报文并产生一台虚拟"路由器"。一个VRRP组中只能出现一台Master路由器。
2)
虚拟路由器:VRRP为每一个组抽象出一台虚拟"路由器"(Virtual Router),该路由器并非真实存在的物理设备,而是由VRRP虚拟出来的逻辑设备。一个VRRP组只会产生一台虚拟路由器。
虚拟IP地址及虚拟MAC地址:虚拟路由器拥有自己的IP地址以及MAC地址,其中IP地址由网络管理员在配置VRRP时指定,一台虚拟路由器可以有一个或多个IP地址,通常情况下用户使用该地址作为网关地址。而虚拟MAC地址的格式是"0000-5e00-01xx",其中xx为VRID。
3)
Master路由器:"Master路由器"在一个VRRP组中承担报文转发任务。在每一个VRRP组中,只有Master路由器才会响应针对虚拟IP地址的ARP Request。Master路由器会以一定的时间间隔周期性地发送VRRP报文,以便通知同一个VRRP组中的Backup路由器关于自己的存活情况。
Backup路由器:也被称为备份路由器。Backup路由器将会实时侦听Master路由器发送出来的VRRP报文,它随时准备接替Master路由器的工作。
Priority:优先级值是选举Master路由器和Backup路由器的依据,优先级取值范围0-255,值越大越优先,值相等则比较接口IP地址大小,大者优先。
VRRP报文格式
VRRP只有一种报文,即Advertisement报文,基于组播方式发送,因此只能在同一个广播域传递。 Advertisement报文的目的组播地址为224.0.0.18。
VRRP定时器
在VRRP协议工作过程中,VRRP定义了两个定时器:
①ADVER_INTERVAL定时器:Master发送VRRP通告报文时间周期,缺省值为1秒。
②MASTER_DOWN定时器:Backup设备监听该定时器超时后,会变为Master状态。
MASTER_DOWN定时器计算公式如下:
MASTER_DOWN =(3* ADVER_INTERVAL)+ Skew_time(偏移时间)
其中,Skew_Time=(256--Priority)/256
2.VRRP技术原理
VRRP状态机
VRRP协议状态机有三种状态:Initialize(初始状态)、Master(活动状态)、Backup(备份状态)。
VRRP状态协议
(1)Master状态
①定期(ADVER_INTERVAL)发送VRRP报文。
②以虚拟MAC地址响应对虚拟IP地址的ARP请求。
③转发目的MAC地址为虚拟MAC地址的IP报文。
④默认允许ping通虚拟IP地址。
⑤当多台设备同时为Master时,若设备收到与自己优先级相同的报文时,会进一步比较IP地址的大小。如果收到报文的源IP地址比自己大,则切换到Backup状态,否则保持Master状态。
(2)Backup状态
①接收Master设备发送的VRRP报文,判断Master设备的状态是否正常。
②对虚拟IP地址的ARP请求,不做响应。
③丢弃目的MAC地址为虚拟MAC地址的IP报文。
④丢弃目的IP地址为虚拟IP地址的IP报文。
⑤如果收到优先级和自己相同或者比自己优先级大的报文时,重置MASTER_DOWN定时器,不进一步比较IP地址的大小。
VRRP主备选举
1)VRRP优先级不相等时主备选举过程
①R1的接口VRRP优先级为200,R2的接口VRRP优先级为100,两台设备完成初始化后首先切换至Backup状态。
②R1与R2根据各自MASTER_DOWN定时器超时时间由Backup切换到Master状态,所以R1比R2更快切换至Master状态。
③R1和R2通过相互发送VRRP报文进行Master选举,优先级高的被选举为Master设备,因此R1被选为Master路由器 。
④R1被选举为Master路由器后,立即发送免费ARP报文将虚拟MAC地址通告给与它连接的设备和主机。
2)VRRP优先级相等时主备选举过程
R1与R2的GE0/0/0接口VRRP优先级都是200,两台设备完成初始化后首先切换至Backup状态。
由于优先级相同,R1与R2的MASTER_DOWN定时器超时后,同时由Backup状态切换至Master状态。
R1与R2交换VRRP报文,优先级一样,通过比较接口IP地址选举Master路由器,由于R2的接口IP地址大于R1的接口IP地址,因此R2被选举为Master路由器。
R2被选举为Master路由器后,立即发送免费ARP报文将虚拟MAC地址通告给与它连接的设备和主机
3)配置为IP拥有者时主备选举
当路由器接口被配置为VRRP的IP地址拥有者时(接口IP地址与Virtual IP相同),路由器无需等待任何定时器超时,可以直接切换至Master状态。
过程:
①R1与R2的GE0/0/0接口VRRP优先级都采用默认配置(默认为100),但是R1的GE0/0/0接口IP地址与Virtual IP地址相同。
②R1的GE0/0/0接口直接切换至Master状态,R1成为Master路由器。
VRRP主备回切
1)
正常情况下,由Master设备负责转发用户报文,如图所示,所有用户流量通过R1到达Internet。
当R1出现故障时,网络会重新进行VRRP主备选举,如图所示,此时R2会成为新的Master设备负责转发用户报文。
2)当R1从故障恢复后,网络将重新进行VRRP主备选举,由于R1的优先级大于R2,所以R1又重新成为新的Master设备负责转发用户报文。
VRRP抢占模式(Preempt Mode) :
抢占模式(默认激活):如果Backup路由器激活了抢占功能,那么当它发现Master路由器的优先级比自己更低时,它将立即切换至Master状态,成为新的Master路由器
非抢占模式:如果Backup路由器没有激活抢占功能,那么即使它发现Master路由器的优先级比自己更低,也只能依然保持Backup状态,直到Master路由器失效。
3.VRRP典型应用
VRRP负载分担
通过创建多个虚拟路由器,每个物理路由器在不同的VRRP组中扮演不同的角色,不同虚拟路由器的Virtual IP作为不同的内网网关地址可以实现流量转发负载分担。
VRRP监视上行端口
VRRP可监视(Track)上行端口状态,当设备感知上行端口或者链路发生故障时,可主动降低VRRP优先级,从而保证上行链路正常的Backup设备能够通过选举切换为Master状态,指导报文转发。
VRRP与BFD联动
通过配置VRRP与BFD联动,当Backup设备通过BFD感知故障发生之后,不再等待Master_Down_Timer计时器超时而会在BFD检测周期结束后立即切换VRRP状态,此时可以实现毫秒级的主备切换。
VRRP与MSTP结合
实现负载分担,保证网络冗余