3.22 VRRP

136 阅读5分钟

VRRP

1.VRRP(Virtual Router Redundancy Protocol)虚拟路由冗余协议

1.1.VRRP概述

局域网中的用户终端通常采用配置一个默认网关的形式访问外部网络,如果此时默认网关设备发生故障,将中断所有用户终端的网络访问,这很可能会给用户带来不可预计的损失,所以可以通过部署多个网关的方式来解决单点故障问题,那么如何让多个网关能够协同工作但又不会互相冲突就成了最迫切需要解决的问题。

  1. VRRP能够在不改变组网的情况下,将多台路由器虚拟成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关,实现网关的备份。
  2. 协议版本: VRRPv2(常用)和VRRPv3:
  3. VRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。VRRP协议报文:
  4. 只有一种报文:Advertisement报文(通告报文);其目的IP地址是224.0.0.18,协议号是112。
  5. 利用VRRP,一组路由器(同一个LAN中的接口)协同工作,但只有一个处于Master状态,处于该状态的路由器(的接口)承担实际的数据流量转发任务。在一个VRRP组内的多个路由器接口共用一个虚拟IP地址,该地址被作为局域网内所有主机的缺省网关地址。 VRRP决定哪个路由器是Master,Master路由器负责接收发送至用户网关的数据包并进行转发,以及响应PC对于其网关IP地址的ARP请求。 Backup路由器侦听Master路由器的状态,并在Master路由器发生故障时,接替其工作,从而保证业务流量的平滑切换。

QQ截图20240325165246.png

1.2.状态机

QQ截图20240325165723.png 当设备使用vrrp协议时,开机后先看自己的优先级是否为255,如果为255立即成为主,因为255是最大的优先级。

当设备开机后,且发现自己的优先级不是255,先成为备再观察是否有比自己更大的优先级。

成为备后

1.当收到比自己大的优先级报文,那么继续做备; 2.当收到比自己小的优先级报文,那么成为主; 3.一定时间(一般3秒内)未收到报文,那么就成为主; 4.收到优先级为0的报文,代表主要主动退出,做好成为主的准备。

默认0 - 255,可手动配置 1-254。 0 代表主要退; 255代表有设备和虚拟ip冲突; 优先级相同会比较接口地址大的优先; 优先级默认为100。

1.3.设备类型

Master(主)

当路由器处于Master状态时,它将会做下列工作:

  • 定期发送VRRP报文。
  • 以虚拟MAC地址响应对虚拟IP地址的ARP请求。 虚拟路由器 封装的时候 都封装 虚拟路由器的 mac地址
  • 转发目的MAC地址为虚拟MAC地址的IP报文。
  • 如果它是这个虚拟IP地址的拥有者,则接收目的IP地址为这个虚拟IP地址的IP报文。否则,丢弃这个IP报文。
  • 如果收到比自己优先级大的报文则转为Backup状态。
  • 如果收到优先级和自己相同的报文,并且发送端的主机IP地址比自己的主IP地址大,则转为Backup状态。
  • 当接收到接口的Shutdown事件时,转为Initialize。

Backup(备) 当路由器处于Backup状态时,它将会做下列工作:

  • 接收Master发送的VRRP报文,判断Master的状态是否正常。
  • 对虚拟IP地址的ARP请求,不做响应。
  • 丢弃目的MAC地址为虚拟MAC地址的IP报文。
  • 丢弃目的IP地址为虚拟IP地址的IP报文。
  • Backup状态下如果收到比自己优先级小的报文时,丢弃报文,不重置定时器;如果收到优先级和自己相同的报文,则重置定时器,不进一步比较IP地址。
  • 当Backup接收到MASTER_DOWN_TIMER定时器超时的事件时,才会转为Master。
  • 当接收到接口的Shutdown事件时,转为Initialize。

1.4.设备配置

QQ截图20240325170009.png R2配置

sys    #进入系统视图

int g0/0/0    #进入g0/0接口

ip add 192.168.1.10 24    #为接口配置IP地址

vrrp vrid 1 virtual-ip 192.168.1.254    #设置组1,并且配置虚拟网关

int g0/0/1    #进入0/1接口

ip add 20.0.0.1 24    #为接口配置IP地址

ip route-static 192.168.2.0 24 20.0.0.2    #配置静态路由,方便PC1、2与PC3连通

R3配置

sys    #进入系统视图

int g0/0/0    #进入接口模式

ip add 192.168.1.20    #配置IP地址

vrrp vrid 1 virtual-ip 192.168.1.254    #设置组1,并且配置虚拟网关

vrrp vrid 1 priority 120    #配置优先级为120,默认值为100,越大优先级越高

vrrp vrid 1 preempt-mode timer delay 10    #延迟抢占,设置为10秒后再抢占master

vrrp vrid 1track int g0/0/1 reduce 50 #监听该路由器的上行端口g0/0/1,若出故障就减50优先权值
    
int g0/0/1    #进入接口模式

ip add 10.0.0.1 24    #配置IP地址

ip route-static 192.168.2.0 24 10.0.0.2    #配置静态路由,方便PC1、2与PC3连通

R1配置

sys    #进入系统视图

int g0/0/0    #进入接口模式

ip add 10.0.0.2 24    #配置IP地址

int g0/0/0    #进入接口模式

ip add 20.0.0.2 24    #配置IP地址

ip route-static 192.168.1.0 24 10.0.0.1    #配置静态路由,方便PC1、2与PC3连通

ip route-static 192.168.1.0 24 20.0.0.1 preference 70 #配置浮动路由,配置优先级为70,默认为60,越高优先级越低