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

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状态变化。

拓扑图

  1. R1是运营商电信
  2. 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

  1. 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从(备用路由)

检验一下

  1. 假设我们在上网的时候突然路由器的接口短路了
  2. 我们就用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状态
  1. 监听状态
  2. 协商状态
  3. 选举状态

修改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的状态信息

  1. 这样改收敛速度会变快

相关文章:

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)在智能制造模具管理中的应用

背景介绍 模具是工业生产的核心装备,被誉为“工业之母”,广泛应用于机械、汽车、轻工、电子、化工、冶金、建材等各个行业,是制造加工企业的重要资产,然而,传统的人工纸质记录方式已无法满足模具管理的需求&#xff0…...

奖品定制经营商城小程序的作用是什么

奖品是激励人员团体很好的方式,也是荣誉象征,奖牌、奖杯、高端礼盒等,同时市场中团体非常多,其需求也是很多,尤其定制方面,就更是不用说。 对奖品定制企业来说,除了线下门店获客经营外&#xf…...

深度学习常用脚本总结

👨‍💻个人简介: 深度学习图像领域工作者 🎉工作总结链接:https://blog.csdn.net/qq_28949847/article/details/128552785 链接中主要是个人工作的总结,每个链接都是一些常用demo&#xff0c…...

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&#xff0c;输入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 平台即服务 快速交付→ 快&#xff1a;自己去干、有结果、事事有回音、持续改进 单体架构——》垂直架构——》面向服务架构——》微服务架构&#xff08;分布式&#xf…...

JDK安装详细教程

JDK安装详细教程 国内大多数使用的是1.8的版本&#xff0c;对于初学者来说这个版本很友善&#xff0c;不过由于我安装过了1.8&#xff0c;所以我这里演示JDK21 的安装&#xff0c;过程并无区别&#xff0c;只在下载时注意选择1.8版本。1.8就是JDK8. 文章目录 JDK安装详细教程一…...

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周&#xff0c;有很多同学在写期末Java web作业时&#xff0c;运行tomcat出现乱码问题&#xff0c;经过多次解决与研究&#xff0c;我做了如下整理&#xff1a; 原因&#xff1a; IDEA本身编码与tomcat的编码与Windows编码不同导致&#xff0c;Windows 系统控制台…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

ES6从入门到精通:前言

ES6简介 ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript语言的重大更新&#xff0c;引入了许多新特性&#xff0c;包括语法糖、新数据类型、模块化支持等&#xff0c;显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

React---day11

14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store&#xff1a; 我们在使用异步的时候理应是要使用中间件的&#xff0c;但是configureStore 已经自动集成了 redux-thunk&#xff0c;注意action里面要返回函数 import { configureS…...