当前位置: 首页 > news >正文

VRRP基础

1.VRRP概述

VRRP( Virtual Router Redundancy Protocol,虚拟路由器冗余协议)既能够实现网关的备份,又能解决多个网关之间互相冲突的问题,从而提高网络可靠性。
通过把几台路由设备联合组成一台虚拟的“路由设备”,使用一定的机制保证当主机的下一跳路由设备出现故障时,及时将业务切换到备份路由设备,从而保持通讯的连续性和可靠性。

VRRP基本概念

1)
VRRP路由器:运行VRRP协议的路由器,如R1和R2。VRRP是配置在路由器的接口上的,而且也是基于接口来工作的。
VRID:一个VRRP组(VRRP Group)由多台协同工作的路由器(的接口)组成,使用相同的VRID(Virtual Router Identifier,虚拟路由器标识符)进行标识。属于同一个VRRP组的路由器之间交互VRRP协议报文并产生一台虚拟“路由器”。一个VRRP组中只能出现一台Master路由器。
在这里插入图片描述
2)
虚拟路由器:VRRP为每一个组抽象出一台虚拟“路由器”(Virtual Router),该路由器并非真实存在的物理设备,而是由VRRP虚拟出来的逻辑设备。一个VRRP组只会产生一台虚拟路由器。
虚拟IP地址及虚拟MAC地址:虚拟路由器拥有自己的IP地址以及MAC地址,其中IP地址由网络管理员在配置VRRP时指定,一台虚拟路由器可以有一个或多个IP地址,通常情况下用户使用该地址作为网关地址。而虚拟MAC地址的格式是“0000-5e00-01xx”,其中xx为VRID。
在这里插入图片描述
3)
Master路由器:“Master路由器”在一个VRRP组中承担报文转发任务。在每一个VRRP组中,只有Master路由器才会响应针对虚拟IP地址的ARP Request。Master路由器会以一定的时间间隔周期性地发送VRRP报文,以便通知同一个VRRP组中的Backup路由器关于自己的存活情况。
Backup路由器:也被称为备份路由器。Backup路由器将会实时侦听Master路由器发送出来的VRRP报文,它随时准备接替Master路由器的工作。
Priority:优先级值是选举Master路由器和Backup路由器的依据,优先级取值范围0-255,值越大越优先,值相等则比较接口IP地址大小,大者优先。在这里插入图片描述

VRRP报文格式

VRRP只有一种报文,即Advertisement报文,基于组播方式发送,因此只能在同一个广播域传递。 Advertisement报文的目的组播地址为224.0.0.18。
在这里插入图片描述

VRRP定时器

在VRRP协议工作过程中,VRRP定义了两个定时器:
①ADVER_INTERVAL定时器:Master发送VRRP通告报文时间周期,缺省值为1秒。
②MASTER_DOWN定时器:Backup设备监听该定时器超时后,会变为Master状态。
MASTER_DOWN定时器计算公式如下:
MASTER_DOWN =(3* ADVER_INTERVAL)+ Skew_time(偏移时间)
其中,Skew_Time=(256–Priority)/256

2.VRRP技术原理

VRRP状态机

VRRP协议状态机有三种状态:Initialize(初始状态)、Master(活动状态)、Backup(备份状态)。
在这里插入图片描述

VRRP状态协议

(1)Master状态
①定期(ADVER_INTERVAL)发送VRRP报文。
②以虚拟MAC地址响应对虚拟IP地址的ARP请求。
③转发目的MAC地址为虚拟MAC地址的IP报文。
④默认允许ping通虚拟IP地址。
⑤当多台设备同时为Master时,若设备收到与自己优先级相同的报文时,会进一步比较IP地址的大小。如果收到报文的源IP地址比自己大,则切换到Backup状态,否则保持Master状态。
(2)Backup状态
①接收Master设备发送的VRRP报文,判断Master设备的状态是否正常。
②对虚拟IP地址的ARP请求,不做响应。
③丢弃目的MAC地址为虚拟MAC地址的IP报文。
④丢弃目的IP地址为虚拟IP地址的IP报文。
⑤如果收到优先级和自己相同或者比自己优先级大的报文时,重置MASTER_DOWN定时器,不进一步比较IP地址的大小。

VRRP主备选举

1)VRRP优先级不相等时主备选举过程
①R1的接口VRRP优先级为200,R2的接口VRRP优先级为100,两台设备完成初始化后首先切换至Backup状态。
②R1与R2根据各自MASTER_DOWN定时器超时时间由Backup切换到Master状态,所以R1比R2更快切换至Master状态。
③R1和R2通过相互发送VRRP报文进行Master选举,优先级高的被选举为Master设备,因此R1被选为Master路由器 。
④R1被选举为Master路由器后,立即发送免费ARP报文将虚拟MAC地址通告给与它连接的设备和主机。在这里插入图片描述
2)VRRP优先级相等时主备选举过程
R1与R2的GE0/0/0接口VRRP优先级都是200,两台设备完成初始化后首先切换至Backup状态。
由于优先级相同,R1与R2的MASTER_DOWN定时器超时后,同时由Backup状态切换至Master状态。
R1与R2交换VRRP报文,优先级一样,通过比较接口IP地址选举Master路由器,由于R2的接口IP地址大于R1的接口IP地址,因此R2被选举为Master路由器。
R2被选举为Master路由器后,立即发送免费ARP报文将虚拟MAC地址通告给与它连接的设备和主机在这里插入图片描述

3)配置为IP拥有者时主备选举
当路由器接口被配置为VRRP的IP地址拥有者时(接口IP地址与Virtual IP相同),路由器无需等待任何定时器超时,可以直接切换至Master状态。
过程:
①R1与R2的GE0/0/0接口VRRP优先级都采用默认配置(默认为100),但是R1的GE0/0/0接口IP地址与Virtual IP地址相同。
②R1的GE0/0/0接口直接切换至Master状态,R1成为Master路由器。
在这里插入图片描述

VRRP主备回切

1)
正常情况下,由Master设备负责转发用户报文,如图所示,所有用户流量通过R1到达Internet。
在这里插入图片描述
当R1出现故障时,网络会重新进行VRRP主备选举,如图所示,此时R2会成为新的Master设备负责转发用户报文。
在这里插入图片描述
2)当R1从故障恢复后,网络将重新进行VRRP主备选举,由于R1的优先级大于R2,所以R1又重新成为新的Master设备负责转发用户报文。
在这里插入图片描述

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

3.VRRP典型应用

VRRP负载分担

通过创建多个虚拟路由器,每个物理路由器在不同的VRRP组中扮演不同的角色,不同虚拟路由器的Virtual IP作为不同的内网网关地址可以实现流量转发负载分担。
在这里插入图片描述

VRRP监视上行端口

VRRP可监视(Track)上行端口状态,当设备感知上行端口或者链路发生故障时,可主动降低VRRP优先级,从而保证上行链路正常的Backup设备能够通过选举切换为Master状态,指导报文转发。
在这里插入图片描述

VRRP与BFD联动

通过配置VRRP与BFD联动,当Backup设备通过BFD感知故障发生之后,不再等待Master_Down_Timer计时器超时而会在BFD检测周期结束后立即切换VRRP状态,此时可以实现毫秒级的主备切换。在这里插入图片描述

VRRP与MSTP结合

实现负载分担,保证网络冗余
在这里插入图片描述

相关文章:

VRRP基础

1.VRRP概述 VRRP( Virtual Router Redundancy Protocol,虚拟路由器冗余协议)既能够实现网关的备份,又能解决多个网关之间互相冲突的问题,从而提高网络可靠性。 通过把几台路由设备联合组成一台虚拟的“路由设备”&…...

虚实融合 智兴百业 | 赵捷副市长莅临拓世科技集团筹备展台指导,本月19号!拓世科技集团与您相约世界VR产业大会

新时代科技革命中,虚拟现实技术、5G和“元宇宙”概念崛起,助力全球范围内的数字经济和产业转型。我国也正迈向高质量发展攻坚阶段,在中部腹地的江西,政府结合全球技术趋势和自身发展需求,选择虚拟现实为新的经济增长点…...

2000-2023年省市县人工智能企业数量数据

2000-2023年省市县人工智能企业数量数据 1、时间:2000-2023年7月 2、指标:所属年度、所属省份、所属城市、所属区县、人工智能企业数量(省人工智能企业数量、地级市人工智能企业数量、区县人工智能企业数量) 3、来源&#xff1…...

CSP模拟58联测20 牵着她的手

题目大意 考虑所有 n n n行 m m m列的矩阵,矩阵中每个元素的值都在 1 1 1到 k k k之间。对于这样的矩阵 A A A,按照下面规则构造序列 x 1 , x 2 , ⋯ , x n m x_1,x_2,\cdots,x_{nm} x1​,x2​,⋯,xnm​: 对于 1 ≤ i ≤ n 1\leq i\leq n …...

电脑版便签软件下载用哪个?

在面对每天繁忙的工作日程,电脑是许多上班族不可或缺的工作助手,而一款得心应手的电脑便签软件,更是可以帮助大家记录、提醒、督促各项任务按时完成的得力助手。那么,究竟在众多的电脑便签软。件中,哪一位能够真正成为…...

别再卷组件库了,Vue 拖拽库都断代了!

前言 最近在测试 Tailwind CSS 和 Uno CSS 这两种原子化 CSS 工具是否能够有效减少打包后的文件体积时,先开始分析这些工具的优缺点,然后再直接上数据,最后做了一款经典的 TodoList 来进行测试,文章都写好了就差最后的数据了。 …...

利用服务器打造创新的在线社区

在这个数字化时代,服务器是实现创意项目的关键工具之一。虽然有许多用途,但其中最引人注目的是将服务器用于构建创新的在线社区。 为什么选择在线社区? 在线社区是连接人们、促进互动和分享知识的强大工具。它们可以围绕共同的兴趣、目标或…...

CSS动画实现节流

目录 介绍: 实现代码: 介绍: 节流指的避免过于频繁的执行一个函数,例如:一个保存按钮,为了避免重复提交或者服务器考虑,往往需要对点击行为做一定的限制,不然会频繁的请求接口,之前基本上是通过js去控制节…...

Apache Log4j Server (CVE-2017-5645) 反序列化命令执行漏洞

文章目录 Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645)1.1 漏洞描述1.2 漏洞复现1.2.1 环境启动1.2.2 漏洞验证1.2.3 漏洞利用 1.3 加固建议 Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645) 1.1 漏洞描述…...

视口 css

视口是浏览器上显示网页的一块区域,大小并不局限于浏览器可视区域范围。PC端和移动端视口差别很大。PC端中视口宽度始终与浏览器窗口宽度一致,移动端视口与浏览器窗口宽度完全独立。 PC端 PC端视口大小等于浏览器窗口可视区域大小,无论浏览…...

Puppeteer记录操作过程及优秀的开源插件(五)

Puppeteer记录操作过程及优秀的开源插件(五) Puppeteer记录操作过程及优秀的开源插件(五)一、简介二、自动生成测试代码三、优秀的开源插件四、参考案例 一、简介 本节我们将介绍通过浏览器工具记录用户的实际操作,并…...

联邦学习+梯度+梯度剪枝

联邦学习需要参与者在每一次的本地训练后,上传所更新的模型参数并与其他参与者共享,而参数更新中仍有可能包含所有者的敏感信息 解决方案: 加密方法(安全多方计算、同态加密)通过将明文编码为密文的方式,…...

提高研发效率还得看Apipost

随着数字化转型的加速,API(应用程序接口)已经成为企业间沟通和数据交换的关键。而在API开发和管理过程中,API文档、调试、Mock和测试的协作显得尤为重要。Apipost正是这样一款一体化协作平台,旨在解决这些问题&#xf…...

Elasticsearch使用——结合MybatisPlus使用ES es和MySQL数据一致性 结合RabbitMQ实现解耦

前言 本篇博客是一篇elasticsearch的使用案例,包括结合MybatisPlus使用ES,如何保证MySQL和es的数据一致性,另外使用了RabbitMQ进行解耦,自定义了发消息的方法。 其他相关的Elasticsearch的文章列表如下: Elasticsear…...

什么是CSGO大行动,2023年CSGO大行动时间预测

什么是CSGO大行动,2023年CSGO大行动时间预测 什么是CSGO大行动,2023年CSGO大行动时间预测 那天群里在提大行动,不明所以的新同学在问,什么是大行动,是不是官方红锁大行动要来了?当然不是,别自己…...

Pycharm中终端不显示虚拟环境名解决方法

文章目录 一、问题说明:二、解决方法:三、重启Pycharm 一、问题说明: Pycharm中打开项目配置完需要的虚拟环境后,在Terminal(终端)中无法切换及显示当前需要运行代码的虚拟环境。 比如以下一种情况&#…...

某翻译网站webpack 全扣js逆向法

持续创作文章,只是为了更好的思考 如下内容,如果有写的不清楚,不对的地方,也请大家提醒我一下,谢谢! 本次的目标是某道翻译网站,相信各位爷应该明白,这次逆向的整体做法还是把webpac…...

【C++】C++11 ——— 可变参数模板

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C学习 🎯长路漫漫浩浩,万事皆有期待 上一篇博客:【C】STL…...

ros2 UR10仿真包运行

前言 一个月前安装了一下这个包,但是有报错。现在换了一个强劲的电脑,内存64G ,显存39G ,终于跑起来了,没有报错。网页控制器可以控制RVIZ中的机器人旋转。 vituralBOX中3D加速要勾选,这样才能发挥独立显…...

flutter开发实战-安卓apk安装、卸载、启动实现

flutter开发实战-安卓apk安装、卸载、启动实现 在之前的文章中,实现了应用更新apk下载等操作,具体文档看下 这里记录一下使用shell来操作apk的安装、卸载、启动的操作。用到了库shell,Shell用于在Dart中或在代表其他用户执行系统管理任务的…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

音视频——I2S 协议详解

I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议&#xff0c;专门用于在数字音频设备之间传输数字音频数据。它由飞利浦&#xff08;Philips&#xff09;公司开发&#xff0c;以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

FFmpeg:Windows系统小白安装及其使用

一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】&#xff0c;注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录&#xff08;即exe所在文件夹&#xff09;加入系统变量…...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)

macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 &#x1f37a; 最新版brew安装慢到怀疑人生&#xff1f;别怕&#xff0c;教你轻松起飞&#xff01; 最近Homebrew更新至最新版&#xff0c;每次执行 brew 命令时都会自动从官方地址 https://formulae.…...

Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案

在大数据时代&#xff0c;海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构&#xff0c;在处理大规模数据抓取任务时展现出强大的能力。然而&#xff0c;随着业务规模的不断扩大和数据抓取需求的日益复杂&#xff0c;传统…...

区块链技术概述

区块链技术是一种去中心化、分布式账本技术&#xff0c;通过密码学、共识机制和智能合约等核心组件&#xff0c;实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点&#xff1a;数据存储在网络中的多个节点&#xff08;计算机&#xff09;&#xff0c;而非…...