HSRP热备份路由器协议的解析和配置
HSRP的解析


























个人简介
HSRP = hot standby router protocol 热备份路由协议(思科私有协议)
HSRP v1 = version 1
HSRP v2 = version 2

虚拟一个HSRP虚拟IP地址 192.168.1.1

开启HSRP的抢占功能 == 通过其他参数 人为调整谁是主 谁是从 !
![]()
查看HSRP 组查询
默认情况下 谁是主 谁是从?
官方角度︰谁的物理接口的IP地址大 谁是主!
实际角度︰谁先起来 谁是主!
Active路由器
- 响应对虚拟路由器P地址的ARP请求,使用虚拟路由器的MAC地址进行响应
- 负责虚拟路由器的报文转发
- 发送Hello消息
- 知道虚拟路由器的IP地址
Standby路由器
- 监听周期性的Hello消息
- 发送Hello消息
- 若没有从Active路由器收到Hello消息则成为Active路由器
如果出现故障 导致切换 设备恢复后 默认不切换回来的 !
HSRPv1 HSRPv2
HSRPv2 支持lPv6的环境;以及组号0- 4095;组播地址变了
组播地址 === 原来 224.0.0.2 ==== 224.0.0.102 更改了组播地址
HSRP状态
Initia1
初始状态,配置变化时的状态或接口刚刚up时的状态
Listen
路由器知道虚拟IP地址,它正在监听来自其他路由器的Hello消息
Speak
路由器发送周期性的Hello消息,参与activea或standby路由器的选举
Standby
路由器作为下一个active路由器的候选,路由器发送周其期性的Hello消息
Active
路由器当前负债转发,发送到该HSRP组虚拟MAC地址的报文,路由器发送周期性
的Hello信息
HSRP优先级和抢占模式
- 一个HSRP组中具有最高优先级的设备成为Active路由器
- 缺省优先级为100
- 若优先级相同,具有最高接口IP地址的路由器成为Active路由器
- 抢占(Preempt)使得具有更高优先级的设备成为Active。
建议:HSRP的Active路由器应该和STP根桥配置在同一台设备
配置命令
Switch(config)#interface vlan 10
Switch(config-if)# ip address 10.1.1.2 255.255.255.0
Switch(config-if)#standby 10 ip 10.1.1.1
Switch(config-if)#standby 10 priority 110
Switch(config-if)#standby 10 preempt
HSRP验证
Switch(config-if)#standby 10 authentication liu
HSRP计时器配置
- 配置Hello和Hold计时器(可设置为毫秒级别)
- Hold计时器应该至少3倍于Hello计时器
- 配置抢占延迟,使得抢占在交换机完全启动并且网络连通性收敛后进行抢占
Switch(config-if)##standby 10 timers msec 15 (范围15 - 999)msec 600 (范围600 - 3000)
Switch(config-if)#standby 10 preempt delay minimum 1 (范围0 -3600 )
HSRP版本
HSRPv1(默认)
- 组号从0到255
- 虚拟MAC地址为0000.0C07.ACXX (XX为HSRP组号)
- Hello报文发送到组播地址224.0.0.2
HSRPv2
- 组号从0到4095
- 虚拟MAC地址为0000.0C9FFXXX (XXX为HSRP组号)
- Hello报文发送到组播地址224.0.0.102
- HSRPv2和HSRPv1具有不同的报文格式
同一个HSRP组中的所有设备应该配置相同的版本
Switch(config-if)#standby version 2
HSRP接口跟踪
- 配置备份组
- 配置优先级(缺省为100)
- 配置同一个HSRP组中所有设备的抢占
- 配置跟踪接口及其优先级减少值(缺省为10)
配置命令
Switch(config)#interface vlan 10
Switch(config-if)# ip address 10.1.1.2 255.255.255.0
Switch(config-if)#standby 10 ip 10.1.1.1
Switch(config-if)#standby 10 priority 110
Switch(config-if)#atandby 10 preempt
Switch(config-if)#standby 10 track f0/0 20
Switch(config-if)#standby 10 track f0/1
跟踪对象
Switch(config)#track 1 ?
interface Select an interface to track
ip IP protocol
list Group objects in a list
rtr Response Time Reporter (RTR) entry
- Standby命令可以跟踪接口或对象。
- 跟踪对象使用track命令定义。
- Track编号 interface检查线路协议。
- Track编号 ip route检查网络可达性(即是否存在该路由)。
- Track 编号 list定义更复杂的条件。
- Track 编号rtr检省诸如IP SLA的参数等。
HSRP和IP SLA跟踪
配置命令
Switch(config)#ip sla 10
Switch(config-ip-sla)#icmp-echo 12.1.1.1
Switch(config)#ip sla schedule 1 life forever start-time now
Switch(config)#track 90 rtr 10 state
Switch(config)#interface vlan 10
Switch(config-if)# ip address 10.1.1.2 255.255.255.0
Switch(config-if)#standby 10 ip 10.1.1.1
Switch(config-if)#standby 10 priority 110
Switch(config-if)#standby 10 preempt
Switch(config-if)#standby 10 track 90 decrement 30
多个HSRP组
- 为了在接入/汇聚层链路上进行负载分担,在同一台多层交换机上为每个VLAN配置HSRP Active路由器和生成树的根桥。
多个HSRP组的配置
将VLAN10设置为主根桥
Switch(config)#spanning-tree vlan 10 root primary
将VLAN20设置为从根桥
Switch(config)#spanning-tree vlan 20 root secondary
Switch(config)#interface vlan 10
Switch(config-if)# ip address 10.1.1.2 255.255.255.0
Switch(config-if)#standby 10 ip 10.1.1.1
Switch(config-if)#standby 10 priority 110
Switch(config-if)#standby 10 preempt
Switch(config)#interface vlan 20
Switch(config-if)# ip address 10.1.2.2 255.255.255.0
Switch(config-if)#standby 20 ip 10.1.2.1
Switch(config-if)#standby 20 priority 110
Switch(config-if)#standby 20 preempt
查看HSRP

总结
- 单个默认网关或Proxy ARP无法为园区网络提供冗余。
- HSRP为终端设备提供路由器冗余。
- 在接口上使用standby命令配置HSRP。
- 配置抢占、计时器和接口跟踪可以优化HSRP并减少切换时间。
- 使用debug命令检查HSRP状态变化。
拓扑图

- R1是运营商电信
- R2是运营商联通
配置命令
IP地址的配置
R1(config)#int e0/0
R1(config-if)#ip add 13.1.1.1 255.255.255.0
R1(config-if)#no sh
R2(config)#int e0/0
R2(config-if)#ip add 24.1.1.2 255.255.255.0
R2(config-if)#no sh
R3(config)#int e0/0
R3(config-if)#ip add 13.1.1.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#int e0/1
R3(config-if)#ip add 192.168.1.100 255.255.255.0
R3(config-if)#no sh
R4(config)#int e0/0
R4(config-if)#ip add 24.1.1.4 255.255.255.0
R4(config-if)#no sh
R4(config-if)#int e0/1
R4(config-if)#ip add 192.168.1.200 255.255.255.0
R4(config-if)#no sh
配置PC1
-
PC1(config)#int e0/0 PC1(config-if)#ip add 192.168.1.10 255.255.255.0 PC1(config-if)#no sh PC1(config)#no ip routing PC1(config)#ip default-gateway 192.168.1.1
配置HSRP
R3(config)#int e0/1
配置HSRP 组号要一样(范围0-255)
R3(config-if)#standby 1 ip 192.168.1.1(虚拟一个HSRP的虚拟IP地址)
开启HSRP的抢占功能
R3(config-if)#standby 1 preempt R4(config)#int e0/1
R4(config-if)#standby 1 ip 192.168.1.1
R4(config-if)#standby 1 preempt
查看HSRP状态信息
R3主(活跃路由)

R4从(备用路由)
检验一下
- 假设我们在上网的时候突然路由器的接口短路了
- 我们就用R3的接口e0/1断开来测试一下
R3(config)#int e0/1
R3(config-if)#sh
查看状态
- 我们发现就丢了两个数据包

查看HSRP状态信息
R3

R4

当R3的接口回复时
R3(config)#int e0/1
R3(config-if)#no sh
查看R3的HSRP状态信息
- 会经过四种HSRP状态
- 监听状态
- 协商状态
- 选举状态



修改HSRP的优先级
R3(config)#int e0/1
R3(config-if)#standby 1 priority 120
查看状态信息

修改HSRP的时间
R3(config)#int e0/1
R3(config-if)#standby 1 timers msec 15(时间范围 15-999)毫秒 msec 50(时间范围50-3000)毫秒
R4(config)#int e0/1
R4(config-if)#standby 1 timers 1 2(Hello时间范围1 -254)2( Hold时间2 -255)秒
查看HSRP的状态信息
- 这样改收敛速度会变快


相关文章:
HSRP热备份路由器协议的解析和配置
HSRP的解析 个人简介 HSRP hot standby router protocol 热备份路由协议(思科私有协议) HSRP v1 version 1 HSRP v2 version 2 虚拟一个HSRP虚拟IP地址 192.168.1.1 开启HSRP的抢占功能 通过其他参数 人为调整谁是主 谁是从 ! 查…...
kotlin实现ArrayDeque
Deque双端队列,一直在使用,却从未了解过源码。 内部逻辑其实很简单 可扩容数组循环队列,循环栈扩容倍数1.5,sizesize(size shr 1)只从两端存取元素 fun main() {val deque MyArrayDeque()repeat(16) {deque.addLast(it)}while …...
java时间格式化
1,CST时间格式化,这个一般是返回值的类型为 Date 类型,如果不做处理,返给前端的就是时间戳,当然也可以更改返回值类型为 String,这样就不用处理了。方法如下: /*** 格式化时间* param date Thu…...
ArduPilot开源飞控之AP_Baro_SITL
ArduPilot开源飞控之AP_Baro_SITL 1. 源由2. back-end抽象类3. 方法实现3.1 AP_Baro_SITL3.2 _timer3.3 temperature_adjustment3.4 wind_pressure_correction3.5 update 4. 参考资料 1. 源由 鉴于ArduPilot开源飞控之AP_Baro中涉及Sensor Driver有以下总线类型: …...
基于Java的病人跟踪治疗管理系统设计与实现(源码+lw+部署文档+讲解等)
文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…...
RCD吸收电路的工作原理及参数计算方法详解
在电子电力技术和自动化控制领域内,RCD吸收电路非常重要,它的作用是吸收瞬间过电压和过电路免受电压波动的影响,因此被广泛应用在各种设备及系统中,今天凡亿将带领小伙伴们来了解下RCD吸收电路的工作原理及计算方法。 1、RCD吸收电…...
leetcode做题笔记169. 多数元素
给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入:nums [3,2,3] 输出:3 示例 …...
FATFS f_printf 如何支持写入浮点数据。
参考原子和网上的移植最新的fatfs系统后,挂载打开文件始终返回13错误代码,在自己的项目中移植最新的fatfs0.15版本解决问题,使用f_printf能成功进行浮点数据写入了 参考的文章如下: https://zhuanlan.zhihu.com/p/444427537 问题描述 在使用fatfs的f_printf向文件.csv中写入…...
postman忘记密码提交没响应
现象:通过客户端进到账户页面一直无响应,可copy the url 到浏览器进入页面,使用浏览器提交几次还是没响应。 实测有用方法: 1、通过手机进入官网 https://www.getpostman.com ,找到忘记密码入口。 2、多提交几次后&…...
初学vue,想自己找个中长期小型项目练练手,应该做什么?
前言 可以试着做一两个完整的后台管理项目后再去做其他的,下面推荐一些github上的vue后台管理的项目,可以自己选择性的练一下手 Vue2 1、iview-admin Star: 16.4k 基于 iview组件库开发的一款后台管理系统框架,提供了一系列的强大组件和基…...
【牛客面试必刷TOP101】Day11.BM63 跳台阶和 BM67 不同路径的数目(一)
作者简介:大家好,我是未央; 博客首页:未央.303 系列专栏:牛客面试必刷TOP101 每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!!&…...
[NOIP 2022] 建造军营 题解
题目 P1 边双缩点 观察样例二,可以发现边双内的边可选可不选。由此考虑边双缩点,Tarjan 找桥即可,缩点后变成一棵树。 P2 设计状态 用最终合法答案形态截这颗树,设计 f u f_u fu 表示 u u u 子树内非空,且子树…...
射频识别技术(RFID)在智能制造模具管理中的应用
背景介绍 模具是工业生产的核心装备,被誉为“工业之母”,广泛应用于机械、汽车、轻工、电子、化工、冶金、建材等各个行业,是制造加工企业的重要资产,然而,传统的人工纸质记录方式已无法满足模具管理的需求࿰…...
奖品定制经营商城小程序的作用是什么
奖品是激励人员团体很好的方式,也是荣誉象征,奖牌、奖杯、高端礼盒等,同时市场中团体非常多,其需求也是很多,尤其定制方面,就更是不用说。 对奖品定制企业来说,除了线下门店获客经营外…...
深度学习常用脚本总结
👨💻个人简介: 深度学习图像领域工作者 🎉工作总结链接:https://blog.csdn.net/qq_28949847/article/details/128552785 链接中主要是个人工作的总结,每个链接都是一些常用demo,…...
hive数据表创建
目录 分隔符 分区表 二级分区 分桶表 外部表 分隔符 CREATE TABLE emp( userid bigint, emp_name array<string>, emp_date map<string,date>, other_info struct<deptname:string, gender:string>) ROW FORMAT DELIMITED FIELDS TERMINATED BY \t COL…...
查看本机Arp缓存,以及清除arp缓存
查看Arp缓存目录 Windows 系统使用 winR,输入cmd 在命令窗口输入 arp -a 删除Arp缓存目录 在命令窗口输入 arp -d * 查看主机路由表...
Unity MRTK Hololens2眼动交互
/** ** UnityVersion : 2021.3.6f1* Description : 眼部交互基类* Author: * CreateTime : 2023-10-11 09:43:20* Version : V1.0.0* * */using System.Collections.Generic; using Microsoft.MixedReality.Toolkit.Input; using UnityEngine;namespace MRTKExtend.EyeTrackin…...
接口自动化测试 —— 协议、请求流程
一、架构 CRM客户关系管理系统 SAAS Software As A Service 软件即服务 PAAS Platform AS A Service 平台即服务 快速交付→ 快:自己去干、有结果、事事有回音、持续改进 单体架构——》垂直架构——》面向服务架构——》微服务架构(分布式…...
JDK安装详细教程
JDK安装详细教程 国内大多数使用的是1.8的版本,对于初学者来说这个版本很友善,不过由于我安装过了1.8,所以我这里演示JDK21 的安装,过程并无区别,只在下载时注意选择1.8版本。1.8就是JDK8. 文章目录 JDK安装详细教程一…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
协议转换利器,profinet转ethercat网关的两大派系,各有千秋
随着工业以太网的发展,其高效、便捷、协议开放、易于冗余等诸多优点,被越来越多的工业现场所采用。西门子SIMATIC S7-1200/1500系列PLC集成有Profinet接口,具有实时性、开放性,使用TCP/IP和IT标准,符合基于工业以太网的…...
人工智能 - 在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型
在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型。这些平台各有侧重,适用场景差异显著。下面我将从核心功能定位、典型应用场景、真实体验痛点、选型决策关键点进行拆解,并提供具体场景下的推荐方案。 一、核心功能定位速览 平台核心定位技术栈亮…...
yaml读取写入常见错误 (‘cannot represent an object‘, 117)
错误一:yaml.representer.RepresenterError: (‘cannot represent an object’, 117) 出现这个问题一直没找到原因,后面把yaml.safe_dump直接替换成yaml.dump,确实能保存,但出现乱码: 放弃yaml.dump,又切…...

