VRRP协议详解
目录
一、基础概念
1、概念
2、VRRP的基本结构
状态机
二、VRRP主备备份工作过程
1、备份工作过程
2、VRRP的负载分担工作
三、实验
一、基础概念
1、概念
- VRRP能够在不改变组网的情况下,将多台路由器虚拟成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关,实现网关的备份。
- 协议版本:VRRPv2(常用)和VRRPv3:
- VRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。
- VRRP协议报文:
只有一种报文----Advertisement报文:
其目的IP地址是224.0.0.18
目的MAC地址是01-00-5e-00-00-12
协议号是112。
2、VRRP的基本结构

状态机

优先级:
默认0 - 255
0 代表主要退出
255代表 有设备和虚拟ip冲突
可手动配置 1-254
优先级相同会比较接口地址大的优先
优先级默认为100
二、VRRP主备备份工作过程
1、备份工作过程
1、选出Master: 虚拟路由器中的路由器根据优先级选举出Master。选举出主备路由器后,Backup就不在发送报文;Master路由器通过发送免费ARP报文,将自己的虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务;
2、状态维持:Master每间隔1秒发送一个ARRP报文,Backup 始终监听Master,Backup一段时间内收不到Master的报文会成为主路由器。
3、如果Master路由器出现故障,虚拟路由器中的Backup路由器将根据优先级重新选举新的Master;
- 一般来说 在主发生故障的时,Backup在3秒没回成为主(此时间核优先级等设置有关)
3.1 虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的Master路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的免费ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备。
3.2 Backup路由器的优先级高于Master路由器时,由Backup路由器的工作方式(抢占方式和非抢占方式)决定是否重新选举Master。
4、VRRP主备路由器切换过程
4.1 Backup在Master_Down_Interval时间内未收到Master发送的状态通告报文,则立即成为Master。
4.2发现收到RouterB的VRRP报文中的优先级比自己低,RouterA立即抢占成为Master。
2、VRRP的负载分担工作
2.1传统的主备方式流量都经由单个Master转发,Master负担过重

2.2通过配置不同的备份组,使RouterB成为新备份组的Master,这样就可以分担网络中流量了。

三、实验
1、建立以下拓扑图

2、配置主路由器
[AR1]int g0/0/1
[AR1-GigabitEthernet0/0/1]ip add 192.168.1.10 24
[AR1-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254
# 设置1组 配置虚拟网关
[AR1-GigabitEthernet0/0/1]vrrp vrid 1 priority 120
#配置优先级为120
[AR1-GigabitEthernet0/0/1]vrrp vrid 1 preempt-mode timer delay 5
#延迟抢占 延迟 5s
[AR1-GigabitEthernet0/0/1]vrrp vrid 1 track interface GigabitEthernet0/0/0 reduced 30
#监听上行端口

3、设置备用路由器--优先级默认为100
[AR2]int g0/0/1
[AR2-GigabitEthernet0/0/1]ip add 192.168.1.20 24
[AR2-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254

4、分别查看主备路由器的配置

5、主机1 长ping 主机2 ,然后删除以下标出的线

会丢失几个包,很正常,主路由器挂掉后,备路由器会成为主路由器继续传输文件,所以又恢复正常了。此时查看备用路由器,发现它从Backup变成了Master

6、删除以下标出的线.,再次查看AR1的路由配置


上行端口端口,优先级从120变成100,之前备用路由器优先级为100,大于90.所以AR1失去主路由器的身份,变成备路由器
相关文章:
VRRP协议详解
目录 一、基础概念 1、概念 2、VRRP的基本结构 状态机 二、VRRP主备备份工作过程 1、备份工作过程 2、VRRP的负载分担工作 三、实验 一、基础概念 1、概念 VRRP能够在不改变组网的情况下,将多台路由器虚拟成一个虚拟路由器,通过配置虚拟路由器的I…...
Linux 常用命令----mktemp 命令
文章目录 基本用法实例演示高级用法注意事项 mktemp 命令用于创建一个临时文件或目录,这在需要处理临时数据或进行安全性测试时非常有用。使用 mktemp 可以保证文件名的唯一性,避免因文件名冲突而导致的问题。 基本用法 创建临时文件: 命令 mktemp 默认…...
基于ssm服装定制系统源码和论文
idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 环境: jdk8 tomcat8.5 开发技术 ssm 基于ssm服装定制系统源码和论文751 1.1项目研究的背景 困扰管理层的许多问题当中,服装定制将是广大用户们不可忽视的一块。但是管理好服装定制又面临很多麻…...
【AI】如何准备mac开发vue项目的环境
为了在Mac上开发Vue项目,你需要准备一些工具和环境。以下是主要的步骤: 安装Node.js和npm: Vue.js是一个基于JavaScript的框架,因此你需要Node.js环境。访问Node.js官网下载并安装Node.js,这也会自动安装npm࿰…...
BERT大模型:英语NLP的里程碑
BERT的诞生与重要性 BERT(Bidirectional Encoder Representations from Transformers)大模型标志着自然语言处理(NLP)领域的一个重要转折点。作为首个利用掩蔽语言模型(MLM)在英语语言上进行预训练的模型&…...
JVM的类的生命周期
目录 前言 1. 加载(Loading): 2. 验证(Verification): 3. 准备(Preparation): 4. 解析(Resolution): 5. 初始化(Ini…...
uni-app获取response header响应头(h5/app/小程序三端)
h5、app获取方式:getResponseHeader(key) 示例:参考:HTML5 API Reference // 创建xhr实例: // #ifdef APP-VUE let xhr new plus.net.XMLHttpRequest(); // #endif // #ifdef H5 let xhr new window.XMLHttpRequest(); // #en…...
本地部署语音转文字(whisper,SpeechRecognition)
本地部署语音转文字 1.whisper1.首先安装Chocolatey2.安装3.使用 2.SpeechRecognition1.环境2.中文包3.格式转化4.运行 3.效果 1.whisper 1.首先安装Chocolatey https://github.com/openai/whisper 以管理员身份运行PowerShell Set-ExecutionPolicy Bypass -Scope Process -…...
js new 原理
mdn new new 调用函数时,该函数将被用作构造函数 类只能用 new 运算符实例化 不使用 new 调用一个类将抛出 TypeError。 过程 new Foo(…) 执行时: 创建一个空的简单 JavaScript 对象。 为方便起见,我们称之为 newInstance。 如果构造函数…...
智能优化算法应用:基于黏菌算法3D无线传感器网络(WSN)覆盖优化 - 附代码
智能优化算法应用:基于黏菌算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于黏菌算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.黏菌算法4.实验参数设定5.算法结果6.参考文献7.MA…...
LeetCode每日一题——2132.用邮票贴满网格图
参考资料: 2132. 用邮票贴满网格图 - 力扣(LeetCode) 题目描述 给你一个 m x n 的二进制矩阵 grid ,每个格子要么为 0 (空)要么为 1 (被占据)。 给你邮票的尺寸为 stampHeight x…...
PyQt6 表单布局Form Layout (QFormLayout)
锋哥原创的PyQt6视频教程: 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计43条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版…...
Python: any()函数
在Python中,any函数是一个内置函数,它接受一个可迭代对象作为参数,并返回一个布尔值。当可迭代对象中至少一个元素为真(非零、非空、非None等)时,any函数返回True;否则,返回False。 …...
一些AG10K FPGA 调试的建议-Douglas
PLL AGM FPGA 在配置成功时,PLL 已经完成锁定,lock 信号已经变高;如果原设计中用 lock 信号输出实现系统 reset 的复位功能,就不能正确完成上电复位;同时,为了保证 PLL 相移的稳定,我们需要在 P…...
【模型量化】神经网络量化基础及代码学习总结
1 量化的介绍 量化是减少神经网络计算时间和能耗的最有效的方法之一。在神经网络量化中,权重和激活张量存储在比训练时通常使用的16-bit或32-bit更低的比特精度。当从32-bit降低到8-bit,存储张量的内存开销减少了4倍,矩阵乘法的计算成本则二…...
次模和K次模是多项式可解吗?
次模是多项式可解吗 **是的,**次模函数的最优化问题通常是多项式时间可解的。这是因为次模性质导致了问题的结构,使得可以利用高效的算法进行求解。 具体来说,针对次模函数的最优化问题,例如极大化或极小化这样的目标函数…...
网络安全——SQL注入实验
一、实验目的要求: 二、实验设备与环境: 三、实验原理: 四、实验步骤: 五、实验现象、结果记录及整理: 六、分析讨论与思考题解答: 七、实验截图: 一、实验目的要求: 1、…...
【cocotb】【达坦科技DatenLord】Cocotb Workshop分享
https://www.bilibili.com/video/BV19e4y1k7EE/?spm_id_from333.337.search-card.all.click&vd_sourcefd0f4be6d0a5aaa0a79d89604df3154a 方便RFM实现 cocotb_test 替代makefile , 类似python 函数执行...
Kafka系列之:统计kafka集群Topic的分区数和副本数,批量增加topic副本数
Kafka系列之:统计kafka集群Topic的分区数和副本数,批量增加topic副本数 一、创建KafkaAdminClient二、获取kafka集群topic元信息三、获取每个topic的名称、分区数、副本数四、生成增加topic副本的json文件五、执行增加topic副本的命令六、确认topic增加副本是否成功一、创建K…...
开具实习证明:在线实习项目介绍
大数据在线实习项目,是在线上为学生提供实习经验的项目。我们希望能够帮助想要在毕业后从事数据科学类工作的学生更加顺利地适应从教室到职场的转换;也帮助那些在工作中需要处理数据、实现数据价值的其他职能的从业者高效快速地掌握每天都能用起来的数据…...
3个步骤轻松下载B站视频:BilibiliDown全平台解决方案
3个步骤轻松下载B站视频:BilibiliDown全平台解决方案 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi…...
Driver Store Explorer:彻底清理Windows驱动存储,让你的系统运行如新的专业工具
Driver Store Explorer:彻底清理Windows驱动存储,让你的系统运行如新的专业工具 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 你是否发现Windows系统盘空间越来…...
OpenMC多群截面计算深度解析:传输修正合并的3种解决方案与性能优化实战
OpenMC多群截面计算深度解析:传输修正合并的3种解决方案与性能优化实战 【免费下载链接】openmc OpenMC Monte Carlo Code 项目地址: https://gitcode.com/gh_mirrors/op/openmc 你是否在使用OpenMC进行多群蒙特卡洛计算时,遇到模拟结果与参考值偏…...
AI开发者必备:开源资源导航站ai-hub的设计哲学与高效使用指南
1. 项目概述:一个面向AI开发者的开源资源集散地最近在GitHub上闲逛,发现了一个挺有意思的仓库,叫xielong/ai-hub。光看名字,你可能会觉得这又是一个“AI工具箱”或者“模型集合”,但点进去仔细研究后,我发现…...
MPU6050中断驱动数据采集与采样率优化实战
1. MPU6050中断机制与嵌入式开发实战 刚接触MPU6050时,我最头疼的就是数据采集的实时性问题。用轮询方式读取传感器数据不仅占用CPU资源,还经常错过关键的运动状态变化。后来发现中断机制才是解决问题的钥匙,就像有个贴心助手会在数据准备好…...
AI智能体安全防护实战:基于AgentGuard构建可控Agent安全护栏
1. 项目概述:当AI智能体需要“安全护栏”最近在折腾AI智能体(Agent)的开发,一个绕不开的痛点就是“安全性”。我们费尽心思调教出一个能自主规划、调用工具、执行任务的智能体,结果它可能在用户一个刁钻的提问下&#…...
给娃规划信奥路?先看懂CSP-J/S初赛分数线背后的“地域密码”(2019-2024年数据解读)
解码CSP-J/S初赛分数线:家长必知的地域竞争策略(2019-2024实战指南) 当孩子第一次接触信息学奥赛时,大多数家长都会面临相似的困惑:为什么同样的分数在A省能轻松晋级,在B省却可能止步初赛?过去…...
【AI面试临阵磨枪-56】大模型服务部署:Docker、K8s、GPU 调度、推理加速
一、 面试题目在生产环境中部署大模型服务时,你是如何结合 Docker 和 K8s 实现高效治理的?特别是在 GPU 调度(如共享、切分) 和 推理加速(如 vLLM, TensorRT-LLM) 方面有哪些实战经验?二、 知识…...
开发者技能图谱工具SkillBrain:构建结构化知识体系与个人技术成长导航
1. 项目概述:一个面向开发者的技能图谱与知识管理工具在技术领域摸爬滚打十几年,我见过太多开发者(包括我自己)都面临一个共同的困境:知识碎片化。今天学个新框架,明天看个新工具,笔记散落在各个…...
AI智能体技能库开发实战:从模块化设计到复杂工作流编排
1. 项目概述:一个面向AI智能体的技能库最近在折腾AI智能体(Agent)的开发,发现一个挺有意思的现象:很多团队或个人在构建自己的智能体时,都会遇到“技能复用”这个老大难问题。今天要聊的这个项目——lovart…...




