VRRP概述

article/2025/11/10 18:58:33

可靠性是衡量一个网络的健壮程度的重要指标,一个可靠性差的网络,应对网络故障的能力相对较弱,当发生诸如网络设备故障或链路故障时,网络上所承载的业务受到的冲击往往比较大,严重时更会造成业务中断。
VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)就是一个应对网络冗余稳定的解决方案。VRRP使得多台同属一个广播域的网络设备能够协同工作,实现设备冗余,从而提高网络的可靠性。VRRP在实际网络中已被广泛部署,它目前有两个版本:VRRPv2和VRRPv3,其中VRRPv2仅适用于IPV4网络,而VRRPv3适用于IPV4和IPV6两种网络。

如图所示,在R1及R2的G0/0/0接口上部署VRRP,使得两者能够协同工作,可以实现网关冗余。当VRRP开始工作时, 它将产生一台虚拟路由器(Virtual Router),这台虚拟路由器的ip地址为:192.168.1.254/24(该地址由网络管理员指定),PC将自己的默认网关设置为该虚拟路由器的IP地址如此一来,当PC向外部网络发送数据时,数据将被发送给虚拟路由器。
值得注意的是,虚拟路由器是一台逻辑设备,它只是VRRP虚拟出来的一台路由器,当VRRP开始工作后,R1和R2会进行“选举”,胜出的路由器成为master(主)路由器,其他的路由器则成为Backup(备份)路由器。Master路由器承担虚拟路由器的具体工作,如此一来,当PC需要发送数据包到外部网络时,数据包实际被发送给Master路由器R1,当R1发生故障时,通过VRRP协议的运作,R2能够感知到当前的Master路由器发生了故障,从而将自己的状态自动切换到Master,接下来它将接替原来属于R1的工作,在整个VRRP的切换过程中,用户是完全无感知的,PC的配置也不需要做任何变更。

基本概念

1.VRRP路由器

我们将运行VRRP的路由器称为VRRP路由器。实际上,VRRP是配置在路由器的接口上的,而且也是基于接口工作的。如图所示,R1及R2均在各自的GE0/0/0上配置了VRRP,VRRP一旦被激活,路由器的接口便开始发送和侦听VRRP协议报文。需要协同工作的VRRP路由器(的接口)必须属于同一个广播域,否则VRRP报文无法正常交互。在下图中,路由器的接口连接在同一个二层交换机上,而且交换机连接这两台路由器的接口属于相同的VLAN。因此R1及R2这两个接口属于相同的广播域。

2.VRRP组及VRID

一个VRRP组(VRRP Group)由多台协同工作的路由器(的接口)组成,使用相同的VRID(Virtual Route Identifier,虚拟路由器标识符)进行标识。属于同一个VRRP组的路由器之间交互VRRP协议报文并产生一台虚拟路由器。一个VRRP组中只能出现一台Master路由器。
如上图,R1的G0/0/0接口及R2的G0/0/0接口协同工作,为pc实现冗余网关,因此这两个接口需加入同一个VRRP组,如果R1使用的VRID为1,那么R2在进行VRRP的相关配置时也必须使用相同的VRID。
一个接口可以加入单个VRRP组,也可以加入多个VRRP组。当然,不同的VRRP组需使用不同的VRID进行区分。

3.虚拟路由器、虚拟IP地址及虚拟MAC地址

VRRP为每一组抽象出一台虚拟路由器(Virtual Router),该路由器并非真实存在的物理设备,而是由VRRP虚拟出来的逻辑设备。它拥有自己的IP地址及MAC地址,其中虚拟路由器的ip地址(虚拟ip地址)由网络管理员在配置VRRP时指定,一台虚拟路由器可以有一个或多个IP地址。而虚拟MAC地址的格式时“0000-5e00-0100”,其中xx为VRID,例如当VRID为1时,则虚拟MAC地址为“0000-5e00-0101”。一个VRRP组只会产生一台虚拟路由器。
当Master路由器收到请求虚拟路由器MAC地址的ARP Request时,它在ARP Reply中回应的MAC地址时虚拟MAC地址,而不是其物理接口的MAC地址。
通常情况下,VRRP路由器的接口IP地址不会与虚拟路由器的IP地址重叠,也就是说我们会为虚拟路由器单独规划一个IP地址,而不会使用某台路由器的接口IP地址。当然也存在一个特殊情况,例如在某些网络中ip地址比较紧缺,那么也有可能会将某台路由器的接口ip地址用于虚拟路由器,此时该路由器将无条件成为Master。

4.Master路由器、Backup路由器

Master路由器是接口处于Master状态的路由器,也被称为主路由器。Master路由器在一个VRRP组中承担报文转发任务。在每一个VRRP组中,只有Master路由器才会响应针对虚拟IP地址的arp Request。Master路由器会以一定的时间间隔周期性的发送VRRP报文,以便通知同一个VRRP组中的Backup路由器关于自己的存活情况。
Backup路由器是接口处于Backup状态的路由器,也被称为备份路由器。Backup路由器将会实时侦听Master路由器发送出来的VRRP报文,它随时准备接替Master路由器的工作。

VRRP首先通过优先级(Priority)来从一个组中“选举”出Master路由器。VRRP优先级的值越大则路由器越有可能成为Master路由器。在优先级相等情况下,接口ip地址越大的路由器越有可能成为Master路由器。

5.抢占模式(Preempt Mode)

如果Backup路由器激活了抢占功能,那么当它发现Master路由器的优先级比自己更低时,它将立即切换至Master状态,成为新的Master路由器,而如果Backup路由器没有激活抢占功能,那摩即使它发现Master路由器优先级比自己更低,也只能依然保持Backup状态,直到Master路由器失效。

状态机

vrrp定义了三种状态,RFC3768(Virtual Router Redundancy Protocol)详细的描述了这些状态。

1.Intialize(初始状态)

Initialize状态是VRRP的初始状态。在接口配置VRRP后,如果该接口是Down的(例如接口被关闭,或者没有连接任何线缆),那么该接口的VRRP状态将会停滞在Initialize。
当接口Up之后,如果其VRRP优先级为255(这种情况发生在该接口的实际ip地址是vrrp虚拟ip地址的情况),那么接口的vrrp状态将由Initialize切换到Master,而如果接口的vrrp优先级不为255,则进入Backup状态。

2.Backup(备份状态)

处于备份状态的路由器是VRRP组中的备份路由器,作为一台备份设备,它并不会参与数据转发工作,但是它会实时监控当前Master路由器的状态,并随时准备接替它的工作。Backup路由器会进行如下工作。

  • 对关于VRRP虚拟ip地址的ARP请求不予回应。
  • 丢弃目的MAC地址为VRRP虚拟MAC地址的数据帧。
  • 不接收目的ip地址为vrrp虚拟ip地址的数据包。
  • 当其收到一个VRRP报文时
  1. 若该报文的优先级为0(这可能意味着当前的Master路由器希望主动放弃Master状态),则将Master_Down_Timer设置为Skew_Time。
  2. 若该VRRP报文的优先级不为0,则当抢占模式(Preempt Mode)未激活时,或者当VRRP报文中的优先级大于或等于本地接口优先级时,将Master_Adver_Interval设置为VRRP报文中的Advertisement Interval,并重置Master_Down_Timer,将Master_Down_Timer的时间设置为Master_Down_Interval。

若该VRRP报文的优先级不为0,则当抢占模式激活并且VRRP报文中的优先级小于本接口优先级时,忽略该vrrp报文,立即切换到Master状态。

Master_Adver_Interval:Master路由器所发送的VRRP报文中,Advertisement Interval字段所填充的值,缺省时该值为1s。该时间间隔即Master路由器周期性发送VRRP报文的间隔。

Master_Down_Timer:Backup路由器将持续接受;来自当前Master路由器的vrrp报文,每当报文到达时,Backup路由器上的Master_Dowm_Timer超时,那么Backup路由器将认为Master路由器已经失效。

Master_Down_Interval:一定时间没有收到来自Master路由器的Vrrp报文后,Backup路由器可认为当前Master路由器已经失效。Master_Down_Interval=(3xMaster_Adver_Interval)+Skew_time。

Skew_time:一个偏移时间,Skew_Time=((256-vrrp优先级)xMaster_Adver_Interval)/256。

当Master_Down_Timer超时(这意味着它认为当前的Master路由器已经失效)。

  • 将接口的状态切换到Master。
  • 开始从接口发送自己的VRRP报文。
  • 从接口发送一个免费的ARP Request(Gratuitous ARP Request)广播帧,该arp request携带了vrrp 虚拟ip地址及虚拟MAC地址的绑定信息,用于刷新该接口所直连的广播域内的设备的ARP表,MAC地址表。

3.Master(主状态)

处于Master装态的路由器是当前vrrp组的主路由器,它承载数据转发任务。Master路由器会进行如下工作。

  • 当收到关于虚拟ip地址的arp请求时,以虚拟mac地址回应。
  • 转发目的mac地址为虚拟mac地址的报文。
  • 周期性的发送vrrp报文,时间间隔缺省为1s。
  • 当其收到一个vrrp报文时。
  1. 若该VRRP的优先级为0,则继续发送自己的报文。
  2. 若该VRRP的优先级不为0,并且比本接口的VRRP优先值更大,或者VRRP优先级相等但是VRRP报文的源IP地址比本接口IP地址更大,则将接口的状态切换到Backup。
  3. 若VRRP报文的优先级不为0,并且比本接口的VRRP优先级值更小,则忽略该VRRP报文。 

Master路由器的“选举”

       在一个VRRP组中,正常情况下只能存在一台Master路由器。Vrrp根据优先级和ip地址来据欸的那个哪一台路由器充当Master。优先级的范围时0~255,优先级的值越大,则路由器越有可能成为Master,其中0及255是两个特殊的优先级,不能被直接配置。当路由器的接口ip地址与vrrp虚拟ip地址相同时,它的优先级将自动变成最大值255,此时该路由器被称为ip地址拥有者(IP Address Owner)。0时另一个特殊的优先级,它出现在Master路由器主动放弃Master角色时,例如当接口的VRRP配置被手工删掉时,该Master路由器会立即放松一个优先级值为0的VRRP报文,用来通知网络中的Backup路由器。
       当一个激活了vrrp的接口up之后,如果接口的vrrp优先级为255,那么其vrrp状态将直接从Intialize切换到Master,而如果接口的VRRP优先级不为255,则首先切换到Backup状态,然后再视竞争结果决定是否能够切换到Master状态。
如果同一个广播域的同一个vrrp组内出现了两台Master,那么它们将比较自己与对方的优先级,优先级值大的设备胜出,继续保持Master状态,而竞争失败的路由器则切换到Backup状态。如果这两台路由器的优先级相等,那摩接口ip地址更大的路由器将会保持Master状态,而另一台设备则切换到Backup状态。
       处于Master状态的路由器会周期性的发送VRRP报文,并在报文中描述自己的优先级、ip地址等信息。同一个广播域中、同一个VRRP组的Backup路由器会侦听这些报文。如果此时网络中出现了一台Backup路由器(其优先级高于当前Master路由器),激活了浆站功能,那摩它会忽略收到的VRRP报文,并且切换到Master状态,同时发送自己的VRRP报文并在报文中描述其优先级等信息,而此前的Master路由器在收到了该VRRP报文之后,则切换到Backup状态。

vrrp相关基础实验:VRRP相关实验_一张白纸白又白的博客-CSDN博客


http://chatgpt.dhexx.cn/article/vBmWxoDL.shtml

相关文章

VRRP协议是什么?详解它的工作原理

作者:Insist-- 个人主页:insist--个人主页 作者会持续更新网络知识和python基础知识,期待你的关注 前言 本文将讲解VRRP是什么,以及它的工作原理,优点以及基本概念。 目录 一、VRRP协议是什么? 二、VRR…

VRRP详解

文章目录 一、 什么是VRRP?二、为什么需要VRRP?三、VRRP工作原理1、VRRP的三种状态2、VRRP的选举机制3、VRRP工作原理 四、VRRP的应用场景1、与接口状态联动2、与路由状态联动 一、 什么是VRRP? 虚拟路由冗余协议VRRP(Virtual Router Redundancy Protocol&#x…

秒懂VRRP协议原理及配置

目录 一、VRRP的定义 二、VRRP的作用 三、VRRP的好处 四、工作原理 五、专业术语 六、实例演示 七、总结 一、VRRP的定义 虚拟路由冗余协议(Virtual Router Redundancy Protocol,简称VRRP)是由IETF提出的解决局域网中配置静态网关出现单点失效现象的路由协议…

决策树算法及其应用案例

决策树算法主要分为三类: ID3、C4.5、CART算法 以ID3算法为例: 对上表某图书销量进行预测. 思考:建立测试模型,各个变量数据权重?数据的转化? 重点在于:计算各个信息熵(数据预处理),可参考百度百科内容 决策树算法模块: 关注点…

决策树算法(matlab)

本文转载自: 点击打开链接 决策树是一种特别简单的机器学习分类算法。决策树想法来源于人类的决策过程。举个最简单的例子,人类发现下雨的时候,往往会有刮东风,然后天色变暗。对应于决策树模型,预测天气模型中的刮东风…

决策树算法梳理(从原理到示例)

决策树是最经典的机器学习模型之一。它的预测结果容易理解,易于向业务部门解释,预测速度快,可以处理类别型数据和连续型数据。本文的主要内容如下: 信息熵及信息增益的概念,以及决策树的节点分裂的原则;决…

机器学习-决策树算法

概念: 是一种树形结构,本质是一颗由多个判断节点组成的树其中每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果。 通过分析可知: 决策树是非参数学习算法决策树可…

机器学习:决策树算法

文章目录 一、什么是决策树?二、决策树算法基本步骤三、算法实例1.数据集描述2.计算数据集香农熵3.数据集划分4.选择最好的数据集划分方式5.递归构建决策树6.创建树7.构造注解树8.使用决策树执行分类9.决策树的保存 三、运行结果 一、什么是决策树? 决策…

决策树算法:ID3

决策树是最经常使用的数据挖掘算法,其核心是一个贪心算法,它采用自顶向下的递归方法构建决策树,下面是一个典型的决策树:   目前常用的决策树算法有ID3算法、改进的C4.5,C5.0算法和CART算法 ID3算法的核心是在决策树…

什么是决策树算法

1.1、什么是决策树 咱们直接切入正题。所谓决策树,顾名思义,是一种树,一种依托于策略抉择而建立起来的树。 机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象…

【机器学习】决策树算法解读

【机器学习】决策树算法解读 文章目录 【机器学习】决策树算法解读1. 介绍1.1 优缺点1.2 结构1.3 学习过程1.4 决策树与条件概率分布 2. 决策树学习过程2.1 训练策略2.2 特征选择2.2.1 信息增益和条件熵 2.3 决策树的生成2.3.1 ID32.3.2 C4.52.3.3 CART2.3.4 小结 2.4 决策树的…

详解决策树算法

决策树 1.1 决策树定义 何为决策树,顾名思义,就像树枝状的决策算法,通过各个节点的“决策”,实现对任务的精准分类或回归,决策树常用来处理分类问题,即使你以前没接触过决策树,你也可以通过下…

决策树算法及其实现

决策树算法及其实现 1 什么是决策树 决策树(Decision Tree)是一种基本的分类与回归方法,本文主要讨论分类决策树。决策树模型呈树形结构,在分类问题中,表示基于特征对数据进行分类的过程。它可以认为是if-then规则的…

决策树算法 (CART分类树)

决策树算法 (ID3,C4.5) CART回归树 决策树的后剪枝 在决策树算法原理(ID3,C4.5)中,提到C4.5的不足,比如模型是用较为复杂的熵来度量,使用了相对较为复杂的多叉树,只能处理分类不能处理回归。对这些问题&a…

决策树算法总结

决策树算法常用于解决分类问题,该方法的优势在于其数据形式非常容易理解。 概述 决策树(decision tree)是一类常见的机器学习方法.以二分类任务为例,我们希望从给定训练数据集学得一个模型用以对新示例进行分类&…

决策树算法原理简介

1,决策树概念简介 不同的算法模型适合于不同类型的数据。 首先,在了解树模型之前,自然想到树模型和线性模型有什么区别呢?其中最重要的是,树形模型是一个一个特征进行处理,之前线性模型是所有特征给予权重相加得到一个…

机器学习——决策树算法

文章目录 一、决策树介绍二、利用信息增益选择最优划分属性三、ID3代码实现1.jupyter下python实现2. 使用sklearn实现ID3 四、C4.5算法实现五、CART算法实现六、总结参考文献 一、决策树介绍 决策树是一种基于树结构来进行决策的分类算法,我们希望从给定的训练数据集…

机器学习算法:决策树算法

1.基本定义 决策树(Decision Tree)是一种基本的分类和回归算法。该算法模型呈树形结构,主要由结点和有向边组成。结点又分为两种类型:内部结点和叶子结点。内部结点表示在一个属性或特征上的测试,每一个结点分枝代表一个测试输出,…

决策树算法应用及结果解读

作者:林骥 来源:林骥 引言 本文是我写的人工智能系列的第 8 篇文章,文末有前面 7 篇文章的链接,推荐你阅读、分享和交流。 1. 决策树算法简介 决策树是一种应用非常广泛的算法,比如语音识别、人脸识别、医疗诊断、模式…

机器学习算法(3)之决策树算法

前言:首先,在了解树模型之前,自然想到树模型和线性模型有什么区别呢?其中最重要的是,树形模型是一个一个特征进行处理,之前线性模型是所有特征给予权重相加得到一个新的值。决策树与逻辑回归的分类区别也在…