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安装详细教程一…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
论文笔记——相干体技术在裂缝预测中的应用研究
目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...

