首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

图解网络:什么是虚拟路由器冗余协议 VRRP?

你好,这里是网络技术联盟站。

VRRP 是一种比较常用容错协议,可以提高网络的可靠性,今天瑞哥和大家详细的介绍一下 VRRP 协议。

让我们直接开始!

什么是 VRRP?

  • 英文全称:Virtual Router Redundancy Protocol
  • 中文名称:虚拟路由器冗余协议
  • 协议:IETF – RFC 3768
  • 组播地址:224.0.0.18
  • 网络层协议
  • 协议号:112

VRRP 术语

  • VRRP 路由器:运行 VRRP 的路由器,可能属于一个或多个虚拟路由器。
  • 虚拟 IP 地址:IP 地址被分配为来自本地子网的虚拟 IP 地址。
  • 虚拟 MAC 地址:以十六进制的最后 8 个字节作为 VRRP 组号,自动生成一个虚拟 MAC 地址。
  • 主路由器:主路由器是根据优先级选出的,如果 VRRP 组的某个组成员的优先级高于其他组成员,则它将被选为主路由器。
  • 备份路由器: VRRP 组成员中只有一个成为主路由器,其他成员将成为备份路由器,如果主路由器发生故障,则其中一个备用路由器将成为主路由器。

VRRP 工作原理

VRRP 使用虚拟路由器来控制将哪些物理路由器分配给接入网络,一个 VRRP 组由一个路由器和一个或多个共享虚拟 IP 地址的备份路由器组成,如果主路由器出现故障,VRRP 会自动分配其中一台备用路由器,而不会影响网络流量。当故障路由器再次运行时,它将再次成为主路由器。VRRP 无需用户干预或对网络上的任何设备进行额外配置即可提供这种冗余。

VRRP 主路由器向备份路由器发送 VRRP 通告消息,当 VRRP 主路由器发送通告消息失败时,优先级最高的备份路由器接替成为主路由器。

如下图所示,有两台虚拟设备,上面的是主路由器,下面的是备份路由器,现在流量正常情况下都是走主路由器:

当主路由器发生故障 down 机的时候:

这个时候原来的备份路由迅速成为主路由器,并且流量也切换到备份路由器了,这就是 VRRP 的强大之处!

VRRP 三种状态

VRRP 一共有如下三种状态:

Initialize 初始状态

  • Initialize 状态代表 VRRP 不可用,处于 Initialize 状态的设备无法处理 VRRP 通告报文。
  • 当 VRRP 进程启动时或者设备处于主备状态并检测到故障时,进入初始化状态。

Master 活动状态

  • 路由器获取到虚拟地址。
  • 承担流量转发。

Backup 备份状态

  • 路由器正在启动或准备好获取虚拟地址,以防主设备出现故障。
  • 不会承担流量转发。

VRRP 选举机制

如图,再难的技术,只要图一画,就非常清晰明了了!

主要就是要注意下根据优先级选择主路由器:优先级高的路由器被选择为主路由器。

如果两台路由器的优先级相同,则比较接口 IP 地址,具有较大接口 IP 地址的路由器将被选为主路由器。

其他路由器作为备份路由器,随时监控 Master 路由器的状态。

如果组内的备份路由器在 Master_Down_Interval 时间内没有收到 Master 路由器的报文,则切换到主路由器,在有多个备份路由器的 VRRP 组中,可能会在短时间内产生多个 Master 路由器,然后将接收到的 VRRP 报文中的优先级与本地优先级进行比较,选择优先级最高的路由器作为 Master 路由器。

案例

如图,路由器 R1、R2、R3 构成一个虚拟路由器 VRRP,VRRP 的虚拟 IP 地址为 192.168.1.1,由于 R1 的优先级为 100,高于 R2 的 80 和 R3 的 60,所以 R1 为 Master 路由器,即主路由器,IP 地址为为 192.168.1.11,R2 和 R3 作为备用路由器,其 IP 地址分别为 192.168.1.12 和 192.168.1.13。

局域网内主机 PC1、PC2、PC3 的默认网关设置为 VRRP 虚拟 IP 地址 192.168.1.1,正常情况下,R1 作为主路由器,负责将局域网内的报文转发到外网,当路由器 A 关闭或出现故障时,路由器 B 或路由器 C(根据优先级)作为 Backup 路由器将成为主路由器,将局域网的报文转发到外部网络,从而维持局域网与外部网络的通信,提高网络可靠性。

现在有几种情况:

R1 故障,R2、R3 优先级不同

如图,由于 R1 故障,其链路已经置灰,这个时候由于 R2 的优先级为 80,高于 R3 的 60,所以 R2 为主路由器,R3 还是备份路由器。

R1 故障,R2、R3 优先级相同

如图,R2 和 R3 的优先级都为 80,这个时候比较的是 IP 地址的大小,由于 R3 的 Ip 地址为 192.168.1.13 高于 Ip 地址为 192.168.1.12 的 R2,因此 R3 为主路由器,R2 为备份路由器。

注意: VRRP 在以下任何一种情况下都会拒绝数据包:

  1. 路由器和传入数据包的身份验证方案不同。
  2. 路由器和传入数据包的 MD5 摘要不同。
  3. 路由器和传入数据包上的验证字符不同。

VRRP 其他小点

VRRP 抢占

VRRP 抢占在默认情况下处于启用状态,这会启用更高优先级的虚拟路由器备份,该备份可以从被选为虚拟路由器主控的虚拟路由器备份中接管,如果禁用抢占,则被选为虚拟路由器主控的虚拟路由器备份保持主控状态,直到原来的虚拟路由器主控恢复并再次成为主控。

VRRP 版本

VRRP 有两个版本:版本 2、版本 3.

其中版本 2 被广泛使用。

  • VRRPv2:支持 IPv4
  • VRRPv3:支持 IPv4 和 IPv6

VRRP 认证

VRRP 提供了许多身份验证来确保运行 VRRP 的基础设施免受恶意攻击,一般身份验证有两种:

默认情况下不开启认证。

如图抓包展示,未开启认证。

VRRP 优点

  • VRRP 在网络网关处提供故障转移/冗余。
  • 没有单点故障,因为备用设备配置为在主设备发生故障时接管。
  • 故障转移发生得很快(通常在几秒钟内)。
  • VRRP 用于主动-被动(主-备份)配置,也可以配置为具有负载平衡的 Active-Active 配置。
  • VRRP 是 IETF 开放标准协议,因此,多个供应商/多种类型的设备可以成为 VRRP 组的一部分。
  • 主网关设备可以有多个备用设备。

总结

虚拟路由器冗余协议 (VRRP) 为一组路由器提供一个虚拟 IP 地址,VRRP 可以与不同厂商的路由器一起使用,并且 VRRP 支持消息摘要 5 (MD5) 身份验证。

VRRP 是一种开放标准的 IEEE 协议,它使一组路由器能够形成单个虚拟路由器,使用 VRRP,几个路由器被组合在一起,看起来就像网络的一个默认网关。在网络中提供冗余,消除了静态默认路由环境固有的单点故障。

VRRP 是一种网络层协议,协议号为 112,组中的路由器数量充当虚拟逻辑路由器,充当所有本地主机的默认网关,如果任何路由器出现故障,其他组成员可以承担转发流量的责任。

本文瑞哥主要介绍了:

  • 什么是 VRRP?
  • VRRP 术语
  • VRRP 工作原理
  • VRRP 三种状态
  • Initialize 初始状态
  • Master 活动状态
  • Backup 备份状态
  • VRRP 选举机制
  • 案例
  • VRRP 其他小点
  • VRRP 抢占
  • VRRP 版本
  • VRRP 认证
  • VRRP 优点
  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/632d91d62eaa767dd84c34718
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券