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

hcip----ospf

一:动态路由协议
IGP 协议---RIP OSPF ISIS EIGRP
EGP--EGP ---BGP
三个角度的评判一款动态路由协议的优劣
RIP --request response
1.选路--选路依据不好,可能出现环路
2.收敛速度--计时器
3.占用资源--
RIPV1 RIPV2 RIPNG--ipv6
OSPFV1 OSPFV2 OSPV3
RIP V2和OSPFV2
相同点
RIP V2和OSPFV2都是无类别的动态路由协议---子网划分/子网汇总
RIPV2和OSPFV2都使用组播发送数据----RIP --224.0.0.9
OSPF---224.0.0.5 224.0.0.6
OSPF和RIPV2都支持负载均衡
OSPF 之所以能够适应中大型网络环境----结构化部署
ABR --区域边界路由器
ABR --必须同时属于多个区域,一个接口对应一个区域
AREA id--32位二进制构成的
OSPF
AREA id--32位二进制构成的
单区域 OSPF area 0---骨干区域
多区域 OSPF 网络--
区域划分----区域之间必须存在ABR
区域划分必须遵循星形拓扑结构
二:OSPF的数据包

1、OSPF的数据包类型

hello包 --- 周期性发现,建立,保活邻居关系。

hello时间 --- 默认10S(30S)

Deadtime --- 4倍的hello时间

2、RID --- 1,全网唯一;2,格式统一 --- IP地址----区分标识不同的OSPF设备

1)手工配置

2)自动生成 --- 首先先看自己环回接口的IP地址,选择其中数值最大的作为RID;如果没有环回接口,则取物理接口中IP地址最大的作为RID。

  DBD包 --- 数据库描述报文 --- LSDB ---- 链路状态数据库(存放LSA信息的数据库)

  LSR包 --- 链路状态请求报文 --- 基于DBD包请求本地未知的LSA信息

  LSU包 --- 链路状态更新报文 --- 真正携带LSA信息的数据报

  LSACK包 --- 链路状态确认报文 --- 确认包

  LSA --- 链路状态通告

  OSPF存在每30min一次的周期更新

三:OSPF的状态机
Two-Way --- 标志着邻居关系的建立
想要到达2-way状态的条件是收到 hello包中携带的邻居参数包含自身的RID

(条件匹配)--- 条件匹配成功,则进入下一个状态,匹配失败,则仅停留在邻居关

系,使用hello包进行周期保活。

隐性确认

FULL ---- 标志着邻接关系的建立。只有邻接关系,才可以交换LSA信息,而邻居关系仅

使用hello包进行保活。

Down状态 --- 启动OSPF,发出hello包之后进入下一个状态

Init(初始化)状态 --- 收到hello包中存在本地RID,进入到下一个状态

2-way(双向通信)--- 标志着邻居关系的建立(条件匹配)条件匹配成功,则进入下一个状态,匹配失败,则仅停留在邻居关系,使用hello包进行周期保活。

exstart(预启动)状态 --- 使用未携带数据的DBD包进行主从关系选举,RID大的为主,为主可以优先获取LSA信息。

Exchange(准交换)状态 --- 使用携带数据的DBD包交换目录信息

Loading(加载)状态 --- 使用LSR包基于DBD包请求未知的LSA信息,对方发送LSU包携带LSA信

息,需要LSACK进行确认

FULL状态 --- 标志着邻接关系的建立

四:OSPF的工作过程总结
1. 建立邻居 :启动配置之后, ospf 将向本地所有的运行了 ospf 协议 的端口发送hello包224.0.0.5,
hello包中携带自己的RID用来区分不同路由器的身份(不携带路由信息),同时携带自己已知的 邻
居RID,之后会将这些RID存储在自己的邻居表中。
2. 条件匹配 :邻居表建立完成之后,会进行条件匹配,如匹配成功 则开始进入下一个状态,如果匹
配失败则会停留在邻居关系。--- 之后仅hello 包进行保活。
3. 如果匹配成功 ,则开始建立邻接关系 - 之后会使用未携带数据 DBD 包(并没有携带LSDB 的摘要
信息)进行主从关系的选举。主路由器 会优先进入下一个状态,会优先发送摘要进行比对,比对
之后,会 请求自己本地没有的lsa 信息。对端会发送真正携带 lsa 信息的 LSU 请求自己本地没有的lsa
信息。对端会发送真正携带 lsa 信息的 LSU 包,会利用LSACK 进行确认。本地的链路状态数据库建
立完成,生 成本地链路数据库表。---FUll
4. 完成收敛 ---- 基于本地的链路状态数据库收集的 lsa ,根据自己 的spf 算法计算得出最短路径树。生
成路由表。
5. 收敛完成后 ,会使用 hello 包每 10s 发送一次,用来保活邻居关 系。ospf 会每 30min 进行一次周期
更新。
五:OSPF的配置

1、启动OSPF进程

[r1]ospf 1 router-id 1.1.1.1

2、创建区域

[r1-ospf-1]area 0

[r1-ospf-1-area-0.0.0.0]

3、宣告

宣告的目的 --- 1,激活接口;2,发布路由

  [r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 --- 反掩码 --- 由连续的0和连续的1组成,0代表不

可变,1代表可变

  [r1]display ospf peer --- 查看邻居表

  [r1]display ospf peer brief --- 查看邻居关系简表

  [r1]display ospf lsdb --- 查看链路状态数据库

  [r1]display ospf lsdb router 2.2.2.2 --- 查看具体LSA信息

COST = 参考带宽/真实带宽 --- 华为设备默认的参考带宽为100Mbps

 [r1-ospf-1]bandwidth-reference 1000 --- 注意:如果一台设备的参考带宽修改了,则所有设备的参

考带宽必须改成相同的。

开销值计算,如果出现小数,如果是小于1的小数,则直接按照1来看;如果是大于1的

小数,则直接取整数部分。

4、条件匹配

指定路由器 --- DR --- 和MA网络中其他设备建立邻接关系。

备份指定路由 --- BDR --- 和MA网络中其他设备建立邻接关系。

六:OSPF的结构突变

1,突然新增一个网段 --- 触发更新,直接发送LSU包,需要ACK确认

2,突然断开一个网段 --- 触发更新,直接发送LSU包,需要ACK确认

3,无法沟通 ---- 死亡时间

相关文章:

hcip----ospf

一:动态路由协议 IGP 协议---RIP OSPF ISIS EIGRP EGP--EGP ---BGP 三个角度的评判一款动态路由协议的优劣 RIP --request response 1.选路--选路依据不好,可能出现环路 2.收敛速度--计时器 3.占用资源-- RIPV1 RIPV2 RIPNG--ipv6 OSPFV1 OSPFV…...

vue中如何写过滤器

全局注册 (可以在main.js中进行全局注册 vue.fifler(test’&#xff0c;function(v){return v0? ‘终止’&#xff1a;v1?进行中:异常 })在组件页面使用 <view>{{state|test}}</view> <script> export default {data(){return {state: 1// state 1 进行中…...

c语言-文件的读写操作(下)

文章目录 前言一、文件的随机读写1.1 fseek()1.2 ftell()1.3 rewind() 总结 前言 本篇文章介绍c语言中文件的随机读写 一、文件的随机读写 1.1 fseek() fseek()函数的作用是根据文件指针的位置和偏移量定位文件指针 int fseek ( FILE * stream, long int offset, int origi…...

android学习笔记----SQLite数据库

用SQLite语句执行&#xff1a; 首先看到界面&#xff1a; 代码如下&#xff1a; MainActivity.java import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.widget.EditTe…...

开发知识点-Flutter移动应用开发

支持 安卓 IOS Android 鸿蒙 第一章dart基础章节介绍 移动电商——Flutter-广告Banner组件制作 移动电商——Flutter实战课程介绍 Flutter实例——路由跳转的动画效果...

视频尺寸魔方:分层遮掩3D扩散模型在视频尺寸延展的应用

▐ 摘要 视频延展(Video Outpainting)是对视频的边界进行扩展的任务。与图像延展不同&#xff0c;视频延展需要考虑到填充区域的时序一致性&#xff0c;这使得问题更具挑战性。在本文中&#xff0c;我们介绍了一个新颖的基于扩散模型的视频尺寸延展方法——分层遮掩3D扩散模型(…...

openssl3.2/test/certs - 061 - other@good.org not permitted by CA1

文章目录 openssl3.2/test/certs - 061 - othergood.org not permitted by CA1概述笔记END openssl3.2/test/certs - 061 - othergood.org not permitted by CA1 概述 openssl3.2 - 官方demo学习 - test - certs 笔记 /*! * \file D:\my_dev\my_local_git_prj\study\openSS…...

如何实现无公网ip远程访问本地websocket服务端【内网穿透】

文章目录 1. Java 服务端demo环境2. 在pom文件引入第三包封装的netty框架maven坐标3. 创建服务端,以接口模式调用,方便外部调用4. 启动服务,出现以下信息表示启动成功,暴露端口默认99995. 创建隧道映射内网端口6. 查看状态->在线隧道,复制所创建隧道的公网地址加端口号7. 以…...

pip清华源怎么换回来

怎么临时使用清华源 pip install scrapy -i https://pypi.Python.org/simple/怎么永久换源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple修改清华源后怎么换回来 删掉/home/XXX/.config/pip/pip.conf...

[Go]认识Beego框架

对比Gin的简洁&#xff0c;自己之前基于Gin撸了一个架子&#xff0c;确实比beego目录看着舒服多了&#xff0c;不过最近接触到beego的项目&#xff0c;beego的bee工具使用还是很方便&#xff0c;来简单梳理下细节&#xff1b; Beego是一个开源的Go语言Web应用框架&#xff0c;…...

JWT登录

JWT JSON Web Token&#xff08;JSON Web令牌&#xff09; 是一个开放标准(rfc7519)&#xff0c;它定义了一种紧凑的、自包含的方式&#xff0c;用于在各方之间以JSON对象安全地传输信息。此信息可以验证和信任&#xff0c;因为它是数字签名的。jwt可以使用秘密〈使用HNAC算法…...

MySQL和Redis的事务有什么异同?

MySQL和Redis是两种不同类型的数据库管理系统&#xff0c;它们在事务处理方面有一些重要的异同点。 MySQL事务&#xff1a; ACID属性&#xff1a; MySQL是一个关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;支持ACID属性&#xff0c;即原子性&#xff08;Ato…...

【C#】基础巩固

最近写代码的时候各种灵感勃发&#xff0c;有了灵感&#xff0c;就该实现了&#xff0c;可是&#xff0c;实现起来有些不流畅&#xff0c;总是有这样&#xff0c;那样的卡壳&#xff0c;总结下来发现了几个问题。 1、C#基础内容不是特别牢靠&#xff0c;理解的不到位&#xff…...

基于Skywalking开发分布式监控(一)

接手为微服务系统搞链路监控项目一年多&#xff0c;也和skywalking打了一年多的交道&#xff0c;也应该有个总结&#xff0c;主要谈一下搭建监控系统遇到的难点和解决方案。 说明&#xff1a; 本文的代码均由本地演示代码替代&#xff0c;非实际代码 为啥选skywalking&#xf…...

高防服务器什么意思

高防服务器什么意思&#xff0c;为什么要用高防服务器&#xff0c;小编为您整理发布高防服务器什么意思的解读。 高防服务器是指具备较高防御能力的服务器&#xff0c;能够抵御DDoS/CC等网络攻击。 高防服务器通常用于保护游戏、APP、金融、电商等业务&#xff0c;这些领域因为…...

C/C++ - Auto Reference

目录 auto Reference auto 当使用auto​​关键字声明变量时&#xff0c;C编译器会根据变量的初始化表达式推断出变量的类型。 自动类型推断&#xff1a;auto​​关键字用于自动推断变量的类型&#xff0c;使得变量的类型可以根据初始化表达式进行推导。 初始化表达式&#x…...

springboot项目快速引入knife4j

引入依赖 <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.3</version> </dependency>knife4j配置文件 basePackage改为自己存放接口的包名 /*** Kn…...

SpringBlade微服务开发平台

采用前后端分离的模式&#xff0c;前端开源两个框架&#xff1a;Sword (基于 React、Ant Design)、Saber (基于 Vue、Element-UI)后端采用SpringCloud全家桶&#xff0c;并同时对其基础组件做了高度的封装&#xff0c;单独开源出一个框架&#xff1a;BladeToolBladeTool已推送至…...

【运维】Ubuntu18.04系统docker方式安装ElasticSearch和kibana

前言 最近需要搭建一套测试环境&#xff0c;用到了ElasticSearch( 简称es)搜索引擎&#xff0c;安装过程有些曲折&#xff0c;记录下来作为经验。 正文 环境 Ubuntu18.04 操作系统Docker Server Version: 20.10.7ElasticSearch Version: 8.5.3Kibana Version: 8.5.3 说明 E…...

五种单例模式

在整个程序中&#xff0c;保持只有一个实例对象&#xff0c;就是单例模式。 单例模式可以减少构建&#xff0c;GC的次数&#xff0c;提升性能&#xff0c;还能减少堆内存的开销。 1. 懒汉式 在需要使用对象的时候&#xff0c;才进行创建 通过private构造方法&#xff0c;确保…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建

华为云FlexusDeepSeek征文&#xff5c;DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色&#xff0c;华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型&#xff0c;能助力我们轻松驾驭 DeepSeek-V3/R1&#xff0c;本文中将分享如何…...

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

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

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...

iview框架主题色的应用

1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题&#xff0c;无需引入&#xff0c;直接可…...

前端中slice和splic的区别

1. slice slice 用于从数组中提取一部分元素&#xff0c;返回一个新的数组。 特点&#xff1a; 不修改原数组&#xff1a;slice 不会改变原数组&#xff0c;而是返回一个新的数组。提取数组的部分&#xff1a;slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...