VRRP(虚拟路由冗余协议)

news2025/1/17 8:49:40

一.VRRP简介

1.VRRP是什么

Virtual route Redundancy Protocol,也叫虚拟路由器冗余协议。

利用VRRP,一组路由器协同工作,单只有一个处于Master状态,处于该状态的路由器(的接口)承担实际的数据流量转发任务,在一个VRRP组内的多个路由器接口共用一个虚拟IP地址,该地址被称为局域网内所有主机的缺省网关地址。

VRRP决定哪个路由器是Master

Master路由器负责接收发送至网关的数据包并进行转发,以及响应pc对于对于其网关IP地址的ARP请求。

Backup路由器侦听Master路由器的状态,并在Master路由器发生故障时,接替其工作,从而保证业务流量的平滑切换。

2.VRRP的作用

提供了局域网上的设备备份机制,VRRP是一种容错协议,它们保证当主机的下一跳路由器换掉时,可以及时有另一台路由器来代替,从而保证通讯的连续性和可靠性。

解释:依靠优先级分出Master和Backup

解释:当Master路由器正常时,pc端访问网关直接从Master路由器进入到网关路由器。

解释:当Master路由器线路(包括上行线路,路由器本身,下行线路)出现异常时,优先级降低,以前Backup路由器将会抢占Master路由器,pc端将从新的Master路由器完成数据转发。

3.VRRP工作原理

①虚拟路由器中的路由器根据优先级选举出Master。Master路由器通过发送免费ARP报文,将自己的虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务;

② Master路由器周期性发送VRRP报文,以公布其配置信息(优先级等)和工作状况;

③如果Master路由器出现故障,虚拟路由器中的Backup路由器将根据优先级重新选举新的Master;

④虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的Master路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的免费ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备。

⑤ Backup路由器的优先级高于Master路由器时,由Backup路由器的工作方式(抢占方式和非抢占方式)决定是否重新选举Master。

4.VRRP名词解释

①VRRP路由器

运行VRRP的路由器,一台VRRP路由器(的接口)可以同时参与到多个VRRP组中,在不同的组中,一台VRRP路由器可以充当不同的角色。

②VRRP组

运行VRRP的路由器,一台VRRP路由器(的接口)可以同时参与到多个VRRP组中,在不同的组中,一台VRRP路由器可以充当不同的角色。

③虚拟路由器

对于每一个VRRP组,抽象出来的一个逻辑路由器,该路由器充当网络用户的网关,该路由器并非真实存在,事实上对于用户而言,只需要知道虚拟路由器的IP,至于具体的虚拟路由器的角色由谁来承担,数据转发任务由谁来承担,Master故障谁来接替,这是VRRP的工作。

④虚拟ip地址、虚拟MAC地址

虚拟IP地址就是虚拟路由器的IP地址,该地址实际上就是用户的网关地址。

就是虚拟路由器根据VRID(虚拟路由器id)生成的MAC地址,一个虚拟路由器拥有一个虚拟MAC地址,格式为:00-00-5E-00-01-{VRID}

⑤Master、Backup路由器

Master路由器:在VRRP组中实际转发数据包的路由器,在每一个VRRP组中,仅有Master响应对虚拟IP地址的ARP请求,Master路由器同时以一定的时间间隔发送VRRP消息,以便通知Backup路由器自己的存活情况。

Backup路由器:处于监听状态的路由器,一旦Master路由器出现故障,Baskup路由器就开始接替工作。

选举比较:先比较接口VRRP优先级(比大)大的成为Master路由器,如果相等,则比较IP地址(比大)。

5.总结

①VRRP组通过vrid来识别的,一个VRRP组可以有多个VRRP路由器,其中包含一个Master,一个或者多个Backup。

②VRRP会虚拟出一个虚拟路由器,包含虚拟IP和虚拟MAC地址,虚拟IP要和Master、Backup在同一网段离。

③一般是通过虚拟IP地址,用作在VRRP路由器局域网下所有主机的默认网关IP地址

④Master实际转发数据和响应局域网主机的ARP请求,定时发送VRRP报文给Backup

⑤Vack用于监听Master发来的VRRP报文,如果超过一定时限,就会抢占Master

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1318269.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day39算法训练|动态规划part02

62.不同路径 代码随想录 按照动规五部曲来分析: 1确定dp数组(dp table)以及下标的含义 dp[i][j] :表示从(0 ,0)出发,到(i, j) 有dp[i][j]条不同的路径。 2确定递推公式 想要求…

[c++]—vector类___提升版(带你了解vector底层的运用)

我写我 不论主谓宾 可以反复错 🌈vector的介绍 1.vector是表示可变大小数组的序列容器2.就像数组一样,vector也采用的连续存储空间来存储元素,也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组&…

并发下ArrayList是一个线程不安全的容器

ArrayList 是一个非线程安全的容器,这意味着如果多个线程同时访问同一个 ArrayList 实例并且至少有一个线程会修改它,就可能导致不确定的结果,如数据损坏、异常或不一致的状态。为了在多线程环境中使用 ArrayList,你需要采取额外的…

【个人版】SpringBoot下Spring-Security核心概念解读【二】

Spring-Security HttpSecurity Spring-Security全局导读: 1、Security核心类设计 2、HttpSecurity结构和执行流程解读 3、Spring-Security个人落地篇 背景: Spring-Security框架的核心架构上一篇已经概述,展示其执行流程及逻辑,但…

设计可编辑表格组件

前言 什么是可编辑表格呢?简单来说就是在一个表格里面进行表单操作,执行增删改查。这在一些后台管理系统中是尤为常见的。 今天我们根据vue2 element-ui来设计一个表单表格组件。(不涉及完整代码,想要使用完整功能可以看底部连…

推荐EasyImages简单图床源码

开源好用EasyImages简单图床源码分享,虽然它是开源程序,但功能一点也不弱,不仅支持多文件上传、文字/图片水印、支持API和鉴黄、还能自定义代码,最重要的是它不强制使用数据库运行,这就给我们的部署和维护带来极大方便…

21--集合小案例

案例--图书管理系统 1.创建实体类Book package com.work.pojo; /** *Author: 憨憨浩浩 *CreateTime: 2023-12-16 17:27 *Description: Book实体类 */ public class Book {private int id; // 编号private String name; // 图书名称private String author;…

Stable-Diffusion|文生图 完蛋我被美女包围了人物Lora(四)

前面几篇: Stable-Diffusion|window10安装GPU版本的 Stable-Diffusion-WebUI遇到的一些问题(一) 【Stable-Diffusion|入门怎么下载与使用civitai网站的模型(二)】 Stable-Diffusion|文生图 拍立得纪实风格的Lora 图例&…

【JavaEE】多线程案例 - 定时器

作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文于《JavaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&…

漏洞复现-海康威视 NCG 联网网关 login.php 目录遍历漏漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

新增数据,某个字段的值总是保存不上问题解决

在系统中新增一条数据,某个字段的数据总是保存不上,但是没有报任何异常和错误,其他字段也都是正常的,通过抓包分析请求参数发现那个字段的值也没有传给后端,检查了前后端代码也没有排查到问题。百思不得其解&#xff0…

【5G PHY】5G小区类型、小区组和小区节点的概念介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

深入理解——快速排序

目录 💡基本思想 💡基本框架 💡分割方法 ⭐Hoare版本 ⭐挖坑法 ⭐前后指针法 💡优化方法 ⭐三数取中法 ⭐小区间内使用插入排序 💡非递归实现快速排序 💡性能分析 💡基本思想 任取待排…

Java已死!

许多开发者仍然认为 Java 与当今时代息息相关,看完本文,你会发现 Java 的影响力已经大幅减弱。实际上,Java 是一种濒临灭绝的编程语言。尽管 Java 一直是世界上使用最广泛、最受欢迎的编程语言之一,但它很快就会面临消亡的危险。 …

【OpenHarmony 北向应用开发】ArkTS语言入门(构建应用页面)

ArkTS语言入门 在学习ArkTS语言之前,我们首先需要一个能够编译并运行该语言的工具 DevEco Studio。 了解ArkTS ArkTS是OpenHarmony优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript(简称TS)生态基础上做了进一步扩展,继…

01--二分查找

一. 初识算法 1.1 什么是算法? 在数学和计算机科学领域,算法是一系列有限的严谨指令,通常用于解决一类特定问题或执行计算 不正式的说,算法就是任何定义优良的计算过程:接收一些值作为输入,在有限的时间…

【动态读取配置文件】ParameterTool读取带环境的配置信息

不同环境Flink配置信息是不同的,为了区分不同环境的配置文件,使用ParameterTool工具读取带有环境的配置文件信息 区分环境的配置文件 三个配置文件: flink.properties:决定那个配置文件生效 flink-dev.properties:测…

【计算机网络】—— 详解码元,传输速率的计算|网络奇缘系列|计算机网络

🌈个人主页: Aileen_0v0🔥系列专栏: 一见倾心,再见倾城 --- 计算机网络~💫个人格言:"没有罗马,那就自己创造罗马~" 目录 码元 速率和波特 思考1 思考2 思考3 带宽(Bandwidth) 📝总结 码元…

MapReduce序列化实例代码

1 )需求:统计每个学号该月的超市消费、食堂消费、总消费 2 )输入数据格式 序号 学号 超市消费 食堂消费 18 202200153105 8.78 12 3 )期望输出格式 key (学号) value ( bean 对象&#xf…

用Rust刷LeetCode之58 最后一个单词的长度

58. 最后一个单词的长度[1] 难度: 简单 原描述: 思路 使用标准库: package mainimport ( "fmt" "strings")func lengthOfLastWord(s string) int { s strings.TrimSpace(s) // 删除 首尾 的空格 arr : strings.Split(s, " ") // 字符串转为切片…