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

HSRP(热备份路由选择协议)的概念,原理与配置实验

作者:Insist--

个人主页:insist--个人主页

梦想从未散场,传奇永不落幕,持续更新优质网络知识、Python知识、Linux知识以及各种小技巧,愿你我共同在CSDN进步

目录

一、了解HSRP协议

1. 什么是HSRP协议

2、HSRP协议的作用

二、HSRP组成员

1. 活跃路由器

2. 备份路由器

3. 虚拟路由器

4. 其他

三、HSRP的工作原理

四、基础配置实验

1. 实验需求描述

2. 配置步骤如下:


前言

在之前的文章中,我们讲解过STP协议,配置STP实现双核心负载均衡,虽然可以提高网络的可靠性,但核心交换机宕机后,主机无法自动切换网关,这也就无法保证网络的正常使用了,本篇文章的主角(HSRP)就可以解决这个问题。

一、了解HSRP协议

1. 什么是HSRP协议

HSRP 全称为热备份路由选择协议(Hot Standby Routing Protocol,)是Cisco(思科)私有的一种技术,HSRP确保了当网络边缘设备或接入链路出现故障时,用户通信能迅速并透明地恢复,以此为IP网络提供冗余性。

通过应用HSRP,可使网络的正常运行时间接近100%,从而满足用户对网络可靠性的要求。

2、HSRP协议的作用

HSPR协议的作用就是提高网络的可用性,当网络边缘设备或接入链路出现故障时,HSRP协议可以自动切换到备用路由器,从而确保网络的正常运行。

二、HSRP组成员

HSRP协议中的组成员包括活跃路由器、备份路由器、虚拟路由器和其他路由器,下面来详细的说一下组内的成员:

19f0e120f2514fbd91c6006b3a50066e.jpg

1. 活跃路由器

活跃路由器是负责处理和转发数据包的路由器。组内的另一个路由器被选为备用路由器,活跃路由器通过发送Hello消息来承担和保持它活跃路由器的角色,无论何时,一个组内只有一个活跃路由器。如果活动路由器发生了故障,将选择一个备份路由器来替代活动路由器。

Hello消息:它是一种多点广播消息,用于通知其他路由器发送者的HSRP优先级和状态信息。HSRP路由器默认每3秒发送一个Hello消息。

2. 备份路由器

备份路由器的功能是监视HSRP组内的运行状态当活跃路由器出现故障时,备份路由器会迅速接管活跃路由器的工作。备份路由器也会传输 Hallo 消息,告知组内所有路由器它的角色和状态变化。

3. 虚拟路由器

虚拟路由器的功能是向最终用户提供一台可以连续工作的路由器。虚拟路由器配有它自己的IP地址和MAC地址(但不实际转发数据包)。

4. 其他

HSRP备份组可以包含其他路由器。这些路由器监视Hello消息,但不做应答。这些会路由器转发任何经由它们的数据包,但并不转发经由虚拟路由器的数据包。

三、HSRP的工作原理

简单来说,HSRP的工作原理就是将多台路由器组成一个虚拟路由器。

HSRP组内的每个路由器都必须有指定的优先级( Priority )。默认的优先级是100,在配置过程中优先级是可以手动指定的(范围0~255)。HSRP组中最高优先级的路由器将成为活跃路由器

e91d05eafd784795bd6b7fcc86518d1a.jpg

如上图,路由器A的优先级为200,路由器B的优先级为150。A的优先级大于B的优先级,所以路由器A承担活跃路由器的角色,并且转发所有到达自动生成的HSRP虚拟MAC地址的数据帧

选择活跃路由器和备份路由器时,如果优先级相同,IP地址大的路由器获胜,如下例子:

例如:如果两台路由器的HSRP优先级都是100,一台路由器位于此LAN网段的端口的IP地址是 192.168.100 ,另一台路由器位于此LAN网段的端口的IP地址为 192.168.101 ,则IP地址为 192.168.101(大的) 的路由器会成为此网段的活跃路由器。

如果在HSRP组内,除了活跃路由器和备份路由器之外还有其他路由器,它们就会监听活跃路由器和备份路由器的状态(就是它们发出的HSRP Hello包),这是为了实现更强的容错能力。

四、基础配置实验

1. 实验需求描述

某公司为了增加网络的稳定性,决定在公司内网部署HSRP。如下图是这个公司内部网络拓扑及具体网络规划(交换机之间的链路均为中继链路)。网络中的其他基本配置( VLAN、链路、IP地址等)已经配置完成。现需要为PC所在的VLAN2配置HSRP实现备份冗余。

网络拓扑及具体网络规划如下图:

07931e7e83f84a268aeb8413e114dd18.jpg

2. 配置步骤如下:

步骤一:配置为HSRP成员

将图中的SW1、SW2的VLAN 2接口配置为HSRP成员,HSRP组号为10,配置命令如下。

SW1 ( config ) # interface vlan 2SW1 ( config-if ) # ip address 192.168.1.1 255.255.255.0SW1 ( config-if ) # standby 10 ip 192.168.1.254SW2的配置和SW1的相同

如果需要从HSRP组中取消一个端口,可以在上述命令前加关键字no。

例如,将SW1的VLAN2接口从HSRP组10中移除,命令如下:

SW1 ( config-if ) # no standby 10 ip 192.168.1.254

步骤二:配置优先级

我们可以指定端口在组内的优先级。优先级数值高的将成为活跃路由器,图中SW1的VLAN2接口优先级为200,SW2的VLAN2接口优先级为150,配置优先级的命令如下:

SW1 ( config-if ) # standby 10 priority 200SW2 ( config-if ) # standby 10 priority 150

步骤三:配置占先权

当活跃路由器失效或从网络中移出时,备份路由器将自动承担起活跃路由器的角色。即使有更高优先级的原活跃路由器又重新开始在网络上工作,这台新的活跃路由器仍然会继续作为活跃路由器。

要想使原先的活跃路由器能够从优先级较低的新活跃路由器那里重新取回转发权,为SW1、2配置占先权命令如下:

SW1 ( config-if ) # standby 10 preempt  SW2配置相同

步骤四:配置Hello时间

默认计时器值在大多数网络中都很稳定,一般情况下不需要修改。如果Hello包需要经过有时会拥塞的网络,就需要配置Hello时间,将图中SW1、SW2的Hello间隔时间和保持时间分别配置为2s和8s,命令如下:

SW1 ( config-if ) # standby 10 timers 2 8 SW2配置相同

步骤五:配置端口跟踪

一些情况下,通往外部网络的端口状态直接影响着哪台路由器需要变成活跃路由器,很可能会导致网络故障,所以配置HSRP的端口跟踪功能使活跃路由器的优先级能够基于路由器端口的可用性而进行自动调整。

当活跃路由器上的一个被跟踪端口变为不可用时,活跃路由器的HSRP优先级将被降低。

在图中的SW1上配置端口跟踪,跟踪端口为F0 / 1,优先级降低100,配置命令如下:

SW1 ( config-1f ) # standby 10 track fastEthernet 0 / 1 100

相关文章:

HSRP(热备份路由选择协议)的概念,原理与配置实验

作者:Insist-- 个人主页:insist--个人主页 梦想从未散场,传奇永不落幕,持续更新优质网络知识、Python知识、Linux知识以及各种小技巧,愿你我共同在CSDN进步 目录 一、了解HSRP协议 1. 什么是HSRP协议 2、HSRP协议的…...

数据可视化大屏模板 | 保姆级使用教程

近来很多朋友私信咨询怎么下载使用数据可视化大屏模板,在这里就给大家做一个相对简单的教程总结。有需要的朋友记得先收藏保存,以便不时之需。 数据可视化大屏制作软件:奥威BI系统 数据可视化报表模板板块:模板秀 主要操作&…...

qml怎么显示网页

QML显示网页需要使用Qt WebEngine模块,它提供了一个WebEngineView组件,可以用来在QML中显示和交互网页。 首先,确保你已经安装了Qt WebEngine模块。如果你使用的是Qt的在线安装程序,你可以通过Qt Maintenance Tool来添加这个模块。 以下是如何在QML中使用WebEngineView来…...

leetcode分类刷题:二叉树(一、简单的层序遍历)

二叉树的深度优先遍历题目是让我有点晕,先把简单的层序遍历总结下吧:配合队列进行的层序遍历在逻辑思维上自然直观,不容易出错 102. 二叉树的层序遍历 本题是二叉树的层序遍历模板:每次循环将一层节点出队,再将一层节点…...

STM32 CAN使用记录:FDCAN基础通讯

文章目录 目的关键配置与代码轮询方式中断方式收发测试 示例链接总结 目的 CAN是非常常用的一种数据总线,被广泛用在各种车辆系统中。这篇文章将对STM32中FDCAN的使用做个示例。 CAN的一些基础介绍与使用可以参考下面文章: 《CAN基础概念》https://blo…...

GB/T 11945-2019 蒸压灰砂实心砖和实心砌块检测

蒸压灰砂砖是以砂、石灰为主要原料,经坯料制备,压制成型、蒸压养护而成的实心砖,简称灰砂砖,具有良好的耐久性能和强度。 GB/T 11945-2019蒸压灰砂实心砖和实心砌块检测: 测试要求 测试标准 抗压强度 GB/T 2542 GB…...

echarts静态饼图

<div class"cake"><div id"cakeChart"></div></div> import * as echarts from "echarts";mounted() {this.$nextTick(() > {this.getCakeEcharts()})},methods: {// 饼状图getCakeEcharts() {let cakeChart echart…...

Linux中的apt与yum

Linux中的apt与yum apt和yum区别 apt和yum执行流程 apt和yum区别 apt 和 yum 是两种不同的包管理工具&#xff0c;用于在 Linux 操作系统中安装、升级和删除软件包。它们主要用于不同的 Linux 发行版。 命令适用系统aptUbuntu、DebianyumCentOS、Redhat 也就是说&#xff0…...

DQN算法概述及基于Pytorch的DQN迷宫实战代码

一. DQN算法概述 1.1 算法定义 Q-Learing是在一个表格中存储动作对应的奖励值&#xff0c;即状态-价值函数Q(s,a)&#xff0c;这种算法存在很大的局限性。在现实中很多情况下&#xff0c;强化学习任务所面临的状态空间是连续的&#xff0c;存在无穷多个状态&#xff0c;这种情…...

Pytorch学习整理笔记(一)

文章目录 数据处理DatasetTensorboard使用Transformstorchvision数据集使用DataLoader使用nn.Module的使用神经网络 数据处理Dataset 主要是对Dataset的使用&#xff1a; 继承 Dataset实现init方法&#xff0c;主要是进行一些全局变量的定义&#xff0c;在对其初始化时需要赋…...

paddlespeech asr脚本demo

概述 paddlespeech是百度飞桨平台的开源工具包&#xff0c;主要用于语音和音频的分析处理&#xff0c;其中包含多个可选模型&#xff0c;提供语音识别、语音合成、说话人验证、关键词识别、音频分类和语音翻译等功能。 本文介绍利用ps中的asr功能实现批量处理音频文件的demo。…...

算法分析与设计编程题 递归与分治策略

棋盘覆盖 题目描述 解题代码 // para: 棋盘&#xff0c;行偏移&#xff0c;列偏移&#xff0c;特殊行&#xff0c;特殊列 void dividedCovering(vector<vector<int>>& chessBoard, int dr, int dc, int sr, int sc, int size) {if (size 1) return;size / 2…...

Java的XWPFTemplate工具类导出word.docx的使用

依赖 <!-- word导出 --><dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.7.3</version></dependency><!-- 上面需要的依赖--><dependency><groupId>org.ap…...

Science adv | 转录因子SPIC连接胚胎干细胞中的细胞代谢与表观调控

代谢是生化反应网络的结果&#xff0c;这些反应吸收营养物质并对其进行处理&#xff0c;以满足细胞的需求&#xff0c;包括能量产生和生物合成。反应的中间体被用作各种表观基因组修饰酶的底物和辅助因子&#xff0c;因此代谢与表观遗传密切相关。代谢结合表观遗传涉及疾病&…...

机器学习实战-系列教程7:SVM分类实战2线性SVM(鸢尾花数据集/软间隔/线性SVM/非线性SVM/scikit-learn框架)项目实战、代码解读

&#x1f308;&#x1f308;&#x1f308;机器学习 实战系列 总目录 本篇文章的代码运行界面均在Pycharm中进行 本篇文章配套的代码资源已经上传 SVM分类实战1之简单SVM分类 SVM分类实战2线性SVM SVM分类实战3非线性SVM 3、不同软间隔C值 3.1 数据标准化的影响 如图左边是没…...

DOM渲染与优化 - CSS、JS、DOM解析和渲染阻塞问题

文章目录 DOM渲染面试题DOM的渲染过程DOM渲染的时机与渲染进程的概述浏览器的渲染流程1. 解析HTML生成DOM树&#xff1a;遇到<img>标签加载图片2. 解析CSS生成CSSOM(CSS Object Model): 遇见背景图片链接不加载3. 将DOM树和CSSOM树合并生成渲染树&#xff1a;加载可视节点…...

基于小程序的理发店预约系统

一、项目背景及简介 现在很多的地方都在使用计算机开发的各种管理系统来提高工作的效率&#xff0c;给人们带来很多的方便。计算机技术从很大的程度上解放了人们的双手&#xff0c;并扩大了人们的活动范围&#xff0c;是人们足不出户就可以通过电脑进行各种事情的管理。信息系…...

MD5 算法流程

先通过下面的命令对 md5算法有个感性的认识&#xff1a; $ md5sum /tmp/1.txt 1dc792fcaf345a07b10248a387cc2718 /tmp/1.txt$ md5sum // 从键盘输入&#xff0c;ctrl-d 结束输入 hello, world! 910c8bc73110b0cd1bc5d2bcae782511 -从上面可以看到&#xff0c;一个文件或一…...

TCP/IP协议详解

TCP/IP&#xff08;Transmission Control Protocol/Internet Protocol&#xff0c;传输控制协议/互联网协议&#xff09;是互联网的基本协议&#xff0c;也是国际互联网络的基础。 TCP/IP 不是指一个协议&#xff0c;也不是 TCP 和 IP 这两个协议的合称&#xff0c;而是一个协…...

SSM SpringBoot vue快递柜管理系统

SSM SpringBoot vue快递柜管理系统 系统功能 登录 注册 个人中心 快递员管理 用户信息管理 用户寄件管理 配送信息管理 寄存信息管理 开发环境和技术 开发语言&#xff1a;Java 使用框架: SSM(Spring SpringMVC Mybaits)或SpringBoot 前端: vue 数据库&#xff1a;Mys…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作&#xff1a;ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等&#xff08;ArcGIS出图图例8大技巧&#xff09;&#xff0c;那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

Python Ovito统计金刚石结构数量

大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

OD 算法题 B卷【正整数到Excel编号之间的转换】

文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的&#xff1a;a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...

Unity中的transform.up

2025年6月8日&#xff0c;周日下午 在Unity中&#xff0c;transform.up是Transform组件的一个属性&#xff0c;表示游戏对象在世界空间中的“上”方向&#xff08;Y轴正方向&#xff09;&#xff0c;且会随对象旋转动态变化。以下是关键点解析&#xff1a; 基本定义 transfor…...

Vue3中的computer和watch

computed的写法 在页面中 <div>{{ calcNumber }}</div>script中 写法1 常用 import { computed, ref } from vue; let price ref(100);const priceAdd () > { //函数方法 price 1price.value ; }//计算属性 let calcNumber computed(() > {return ${p…...