圖解網絡:什麼是虛擬路由器冗餘協議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 主路由器發送通告消息失敗時,優先級最高的備份路由器接替成為主路由器。
VRRP正常工作場景
如下圖所示,有兩台虛擬設備,上面的是主路由器,下面的是備份路由器,現在流量正常情況下都是走主路由器:
VRRP正常工作流量流向
當主路由器發生故障down機的時候:
VRRP主備切換工作場景
這個時候原來的備份路由迅速成為主路由器,並且流量也切換到備份路由器了,這就是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、R3优先级不同
如图,由于R1故障,其链路已经置灰,这个时候由于R2的优先级为80,高于R3的60,所以R2为主路由器,R3还是备份路由器。
R1故障,R2、R3优先级相同
R1故障,R2、R3优先级相同
如图,R2和R3的优先级都为80,这个时候比较的是IP地址的大小,由于R3的Ip地址为192.168.1.13高于Ip地址为192.168.1.12的R2,因此R3为主路由器,R2为备份路由器。
注意:
VRRP 在以下任何一种情况下都会拒绝数据包:
- 路由器和传入数据包的身份验证方案不同。
- 路由器和传入数据包的 MD5 摘要不同。
- 路由器和传入数据包上的验证字符不同。
VRRP其他小点
VRRP抢占
VRRP 抢占在默认情况下处于启用状态,这会启用更高优先级的虚拟路由器备份,该备份可以从被选为虚拟路由器主控的虚拟路由器备份中接管,如果禁用抢占,则被选为虚拟路由器主控的虚拟路由器备份保持主控状态,直到原来的虚拟路由器主控恢复并再次成为主控。
VRRP 版本
VRRP有两个版本:版本2、版本3.
其中版本2被广泛使用。
- VRRPv2:支持 IPv4
- VRRPv3:支持 IPv4 和 IPv6
VRRP抓包——版本信息
VRRP认证
VRRP 提供了许多身份验证来确保运行 VRRP 的基础设施免受恶意攻击,一般身份验证有两种:
VRRP认证
默认情况下不开启认证。
VRRP认证抓包
如图抓包展示,未开启认证。
VRRP优点
VRRP 在网络网关处提供故障转移/冗余。
没有单点故障,因为备用设备配置为在主设备发生故障时接管。
故障转移发生得很快(通常在几秒钟内)。
VRRP 用于主动-被动(主-备份)配置,也可以配置为具有负载平衡的 Active-Active 配置。
VRRP 是 IETF 开放标准协议,因此,多个供应商/多种类型的设备可以成为 VRRP 组的一部分。
主网关设备可以有多个备用设备。
总结
VRRP 是一种开放标准的 IEEE 协议,它使一组路由器能够形成单个虚拟路由器,使用 VRRP,几个路由器被组合在一起,看起来就像网络的一个默认网关。在网络中提供冗余,消除了静态默认路由环境固有的单点故障。
VRRP是一种网络层协议,协议号为 112,组中的路由器数量充当虚拟逻辑路由器,充当所有本地主机的默认网关,如果任何路由器出现故障,其他组成员可以承担转发流量的责任。
本文瑞哥主要介绍了:
- 什么是VRRP?
- VRRP术语
- VRRP工作原理
- VRRP三种状态 Initialize 初始状态Master 活动状态Backup 备份状态
- VRRP选举机制 案例
- VRRP其他小点 VRRP抢占VRRP 版本VRRP认证
- VRRP优点