一、VRRP介绍
- VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)提供了局域网上的设备备份机制
- VRRP是一种容错协议,在提高可靠性的同时,简化了主机的配置。在具有多播或广播能力的局域网(如以太网)中,借助VRRP 能在某台设备出现故障时仍然提供高可靠的缺省链路,有效避免一链路发生故障后网络中断的问题,而无需修改动态路由协议、路由发现协议等配置信息。
- 简单的说它保证当主机的下一跳路由器坏掉时,可以及时由另一台路由器来代替,从而保证通讯的连续性和可靠性。
二、vrrp术语
- vrrp路由器
VRRP路由器是指运行VRRP的路由器,是物理实体;
一台vrrp路由器(的接口)可以同时参与到多个vrrp组中,在不同的组中,一台vrrp路由器可以充当不同的角色。
- vrrp组
一个vrrp组由多个vrrp路由器组成,使用相同的vrid(virtual router id,虚拟路由器id)进行标识,属于同一vrrp组的vrrp路由器互相交换信息,每一个vrrp组中只能有一个master
- 虚拟路由器
对于每一个vrrp组,抽象出来的一个逻辑路由器,该路由器充当网络用户的网关,该路由器并非真实存在,事实上对于用户而言,只需知道虚拟路由器的ip,至于具体的虚拟路由器的角色由谁来承担,数据转发任务由谁来承担,master故障后谁来接替,这是vrrp的工作。
三、VRRP工作原理
3.1、VRRP状态机
vrrp协议的状态共有三种,分别是Initialize,master,backup,
初始状态都是initialize,通过比较优先级产生master和backup,
在规定时间内,backup若没有收到master发来的心跳报文,将切换为master.
3.2、VRRP的VRID
VRID (Virtual Router Identifier) 是一个用于标识一个 VRRP 组的唯一标识符。VRID的取值范围是1-255,需要手动指定。
一个 VRRP 组可以包含多个 VRRP 路由器,但这些路由器共享相同的 VRID,以表示它们属于同一个冗余组。
3.3、vvrp的两组重要的概念
在VRRP协议中,有两组重要的概念:VRRP路由器和虚拟路由器,主路由器和备份路由器。
虚拟路由器是指VRRP协议创建的,是逻辑概念。一组VRRP路由器协同工作,共同构成一台虚拟路由器,该路由器充当网络用户的网关,并非真实存在。此虚拟路由器对外表现为一个具有唯一固定的IP地址和MAC地址的逻辑路由器。
处于同一个VRRP组中的路由器具有两种互斥的角色,通常有一个主路由器(Master Router)和一个或者多个备份路由器(Backup Routers)。主路由器负责转发数据流量,并周期性地发送 VRRP 通告消息来告知备份路由器它的状态。如果主路由器失效,故障切换,备份路由器中的一个(通常具有最高优先级的备份路由器)将接管成为新的主路由器,从而确保网络的连续性和可用性。
3.4、VRRP抢占功能
- 在抢占方式下
当Backup 路由器收到VRRP 通告报文后,会将自己的优先级与通告报文中的优先级进行比较。如果大于通告报文中的优先级,则抢占成为Master 路由器;否则将保持Backup状态
- 在非抢占方式下
只要Master 路由器没有出现故障,备份组中的路由器始终保持Master 或Backup 状态,Backup 路由器即使随后被配置了更高的优先级也不会成为Master 路由器
3.5、总结
- 路由器或者三层设备使用VRRP 功能后,通过配置的优先级确定其角色,优先级最高的成为主路由器Master ,其余为备用路由器Backup。
- 主路由器定期发送VRRP报文(注: 只有Master发送VRRP报文),通告自己工作是否正常。如果主路由器未发送报文,故障切换,备用路由监听到后(Backup 路由器则启动定时器等待通告报文的到来),将启动选举过程,选举新的主路由器。
- 状态切换时,主路由器由一台设备切换为另外一台设备,新的主路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到主路由器已经切换为另外一台设备。
- 通过在冗余网关间共享虚拟MAC和IP地址,保证数据转发时并不是转给某一个具体网关的IP,而是把数据转发给虚拟网关的IP,因此,不论哪一个路由器成为主路由,都不会影响数据通信。
四、vrrp的基本配置
设置PC1、PC2不同网络区域的IP地址和网关以及子网掩码
AR1
····························
sys
undo info-center enable
sysname AR1
配置接口
int g0/0/1
ip add 13.0.0.1 24
int g0/0/0
//创建VRRP虚拟路由器的标识vrid为1,并配置vrid 1的虚拟IP网关地址
vrrp vrid 1 virtual-ip 192.168.10.1
//优先级
vrrp vrid 1 priority 120
//恢复后抢占时间
vrrp vrid 1 preempt-mode timer delay 5
//监听上接口并且如果有问题-30优先级
vrrp vrid 1 track interface GigabitEthernet0/0/1 reduced 30
静态路由
ip route-static 30.0.0.0 24 13.0.0.2
AR2
················
sys
undo info-center enable
sysname AR2
配置接口
int g0/0/1
ip add 23.0.0.1 24
int g0/0/0
//配置AR2的虚拟网关,默认其优先级为100
vrrp vrid 1 virtual-ip 192.168.10.1
静态路由
ip route-static 30.0.0.0 24 23.0.0.2
AR3
···············
sys
undo info-center enable
sysname AR3
int LoopBack 0
ip add 30.0.0.1 24
配置接口
int g0/0/1
ip add 23.0.0.2 24
int g0/0/0
ip add 13.0.0.2 24
静态路由
//浮动,默认一个60,一个70,先走60的,这个是浮动路由
ip route-static 192.168.10.0 24 13.0.0.1
ip route-static 192.168.10.0 255.255.255.0 23.0.0.1 preference 70
如果我们对AR1断开
发现200那个AR2(backup)通了
标签:优先级,ip,VRRP,vrrp,虚拟,原理,第一阶段,路由器 From: https://blog.csdn.net/YCyjs/article/details/139400198