VRRP配置

844 阅读6分钟

1. VRRP基本概述

1.1 虚拟路由冗余协议(Virtual Router Redundancy Protocol,简称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路由器发生故障时,接替其工作,从而保证业务流量的平滑切换。

1.2 VRRP的基本结构

image.png

状态机:

image.png

优先级:

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

2.设备类型

  • master路由器 通过比较VRRP优先级,优先级大的是master路由器; 周期性的发送VRRP报文,维护master路由器和备份路由器的身份; 周期时间默认是1s; 备份网关,通过比较 VRRP 优先级,优先级小的是备份路由器;

  • 备份(backup)路由器: 通过不断的接收master路由器发送的 VRRP 报文来判断master路由器的状态; 如果在一定的时间内,收不到 VRRP 报文,则认为master路由器出现故障,自己升级为master路由器; 这个“一定的时间”,默认是“master路由器发送VRRP的周期”的3倍,所以默认是 3s 。

  • 虚拟网关: 通过VRRP虚拟出来的网关IP地址,这个网关IP地址,是配置在终端设备上的; 终端设备访问其他网段时,直接将数据发送给虚拟网关IP地址, 此时只有master路由器会回应针对虚拟网关IP地址的ARP请求,所以最终终端设备发送的数据 发送到了master路由器设备上

    主机设置的网关 是 不在配置在 真实接口上

  • VRID: 相同在同一个组中 只有在同一个组中 才会 共享 虚拟ip 虚拟路由器的标识。有相同VRID的一组路由器构成一个虚拟路由器VRRP报文格式VRRP只使用到advertisement这一种报文,VRRP使用ip报文作为传输协议报文,协议号为112,使用固定的组播地址224.0.0.18进行发送

  • VRRP状态机: VRRP协议中定义了三种状态机:初始状态(Initialize)、活动状态(Master)、备份状态(Backup)。其中,只有处于活动状态的设备才可以转发那些发那些发送到虚拟IP地址的报文。

  • Initialize: 设备启动时进入此状态,当收到接口Startup的消息,将转入Backup或Master状态(IP地址拥有者的接口优先级为255,直接转为Master)。在此状态时,不会对VRRP报文做任何处理。

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。

3.VRRP实验

3.1 实验拓扑

Snipaste_2022-09-13_14-14-29.png

3.2 配置

1.先配置好pc1、pc2、pc3的IP地址、子网掩码和网关

pc1

Snipaste_2022-09-13_14-14-41.png

pc2

Snipaste_2022-09-13_14-14-52.png

pc3

Snipaste_2022-09-13_14-15-03.png

2.为三台路由设置接口IP和子网掩码

R1

Snipaste_2022-09-13_14-19-21.png

R2

Snipaste_2022-09-13_14-19-49.png

R3

Snipaste_2022-09-13_14-20-29.png

3.为三台路由配置信息

R2 /R3配置文件

R2:
[R2]int g0/0/0 ***进入接口g0/0/0 
[R2-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.1.254 *** 创建VRRP 备份组,配置虚拟IP 
[R2-GigabitEthernet0/0/0]vrrp vrid 1 priority 120 ***配置优先级 
[R2-GigabitEthernet0/0/0]vrrp vrid 1 track interface g0/0/1 *** 设置监听端口 
[R2-GigabitEthernet0/0/0]dis th ***显示接口信息 
interface GigabitEthernet0/0/0 
ip address 192.168.1.10 255.255.255.0 
vrrp vrid 1 virtual-ip 192.168.1.254 
vrrp vrid 1 track interface GigabitEthernet0/0/1

# return

R3[R3]int g0/0/0 ***进入接口g0/0/0 
[R3-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.1.254 *** 创建VRRP 备份组,配置虚拟IP

4.添加路由信息:

R1路由信息

[R1]ip route-static 192.168.1.0 24 10.0.0.1 
[R1]ip route-static 192.168.1.0 24 20.0.0.1 
[R1]ip route-static 192.168.1.0 24 20.0.0.1 preference 70 ***优先级

R2路由信息

[R2]ip route-static 192.168.2.0 24 10.0.0.2
R3路由信息

[R3]ip route-static 192.198.2.0 24 20.0.0.2

最后,用pc2 ping pc1,并用pc2追踪pc3

Snipaste_2022-09-13_14-15-56.png

image.png

可以ping通

去掉R2模拟故障,再尝试一次

Snipaste_2022-09-13_14-31-16.png

Snipaste_2022-09-13_14-28-13.png

image.png

可以ping通

总结:

(1)成为vrrp组的接口IP(真实)必须存在,而且成员间的接口真实IP必须不一样

(2)接口虚拟IP必须一样,因为承担同一个组的流量

(3)主路由器的优先级必须大于备份路由器