OSPF路由计算

1.区域内路由计算

(1)LSA的基本概念

LS Age:当LSA被始发时,该字段为0,随着LSA在网络中被泛洪,该时间逐渐累加,当到达MaxAge(缺省值为3600s)时,LSA不再用于路由计算。
LS Sequence Number:该字段用于判断LSA的新旧或是否存在重复的实例。序列号范围是0x80000001-0x7FFFFFFF,路由器始发一个LSA,序列号为0x80000001,之后每次更新序列号加1,当LSA达到最大序列号时,重新产生该LSA,并且把序列号设置为0x80000001。

2.常见LSA的类型

区域内路由计算

 在许多场合中,我们习惯使用类型值来称呼对应的LSA,例如1类LSA等同于Router LSA,2类LSA等同于Network LSA,以此类推。
区域内:设备所属的OSPF Area id相同,那么这些设备是属于区域内的关系;
区域间:设备所属的OSPF Area id不同,那么这些设备是属于区域间的关系;
区域外:有设备属于OSPF区域,但是另外一些设备不属于OSPF协议的范围,区域外;

(1)Router LSA(1类LSA)每台OSPF路由器都会产生。它描述了该路由器直连接口的信息。
Router LSA只能在所属的区域内泛洪。

(2)Router LSA使用Link来承载路由器直连接口的信息。
每条Link均包含“链路类型”、“链路ID”、“链路数据”以及“度量值”这几个关键信息。
路由器可能会采用一个或者多个Link来描述某个接口。

(3)Network LSA(2类LSA) :由DR产生,描述本网段的链路状态,在所属的区域内传播。
Network LSA 记录了该网段内所有与DR建立了邻接关系的OSPF路由器,同时携带了该网段的网络掩码。

(4)SPF算法

思考:为什么路由器的OSPF路由表中的路由没有全部出现在全局路由表中?

ospf区域内可以做到100%没有环路,区域内的路由不是邻居告诉你的。而是设备本身通过收集自身和邻居的LSA,放进LSDB,通过SPF算法,得出最短路径树,下发最优路由到路由表,RIB下载相应路由到FIB。
LSA区域内使用就是router lsa和network lsa,不但可以算出路由,并且还清楚知道本区域拓扑是如何连接!

2.区域间路由计算

(1)区域划分

1类 2类被限制在区域内,区域间不能直接传递,将OSPF区域划分成多个区域,那么1、2类LSA对设备就会减小。
ABR:不同OSPF区域之间连接的路由器(必须其中有一个区域是骨干区域area 0)

(2)区域间路由信息传递

(3)Network Summary LSA详解

(4)域内路由环路的产生

防环:

注意:OSPF要求ABR设备至少有一个接口属于骨干区域。
骨干区域:指的是OSPF area 0 ; 除了OSPF Area 0之外都是非骨干区域;
非骨干区域:不是OSPF Area 0的OSPF区域;
区域间防止环路机制1:非骨干区域不能之间互相通信,必须经过骨干区域中转,否则无法进行交互!

(5)虚连接的作用以及配置

OSPF要求骨干区域必须是连续的,但是并不要求物理上连续,可以使用虚连接使骨干区域在逻辑上连续。
虚连接可以在任意两个ABR上建立,但是要求这两个ABR都有端口连接到一个相同的非骨干区域。
注意:
虚连接的创建使OSPF协议可以通过非骨干区域通信,违背了OSPF区域间的防环规则,在某些场景下会导致路由环路的产生,因此不建议部署OSPF虚连接。

(6)外部路由计算

在OSPF进程下,通过如下命令引入外部路由。设备支持引入BGP、ISIS、OSPF、直连以及静态路由。
import-route { limit limit-number | { bgp [ permit-ibgp ] | direct | unr | rip [ process-id-rip ] | static | isis [ process-id-isis ] | ospf [ process-id-ospf ] } [ cost cost | type type | tag tag | route-policy route-policy-name ] * }
HCIP:处在OSPF区域AREA 0中设备一定不是ASBR;ABR ASBR;
OSPF 5类LSA本质还是路由,并且具有特点:不属于任何OSPF区域;

(7)AS-external LSA

Forwarding Address:当FA为0.0.0.0时,则到达该外部网段的流量会被发往引入这条外部路由的ASBR。而如果FA不为0.0.0.0,则流量会被发往这个转发地址。FA这一概念的引入,使得OSPF在某些特殊的场景中得以规避次优路径问题。
External Route Tag(外部路由标记):这是一个只有外部路由才能够携带的标记,常被用于部署路由策略。

(8)ASBR-Summary LSA

为什么需要4类LSA,因为5类传递时候通告adv保持不变,其他非骨干没法感知到ASBR位置的,需要设备所在的ABR产生一条4类LSA告诉本区域的设备如和到达ASBR位置!

示例:

(9)区分OSPF外部路由的2种度量值类型1

区分OSPF外部路由的2种度量值类型2

3.OSPF特性区域及其他特性

(1)传输区域和末端区域

(2)Stub区域

(3)Stub区域的路由表及3类LSA

(4)Totally Stub区域

(5)Stub区域和Totally Stub区域存在的问题

(6)NSSA区域和Totally NSSA区域

NSSA区域能够引入外部路由,同时又不会学习来自OSPF网络其它区域的外部路由。
7类LSA是为了支持NSSA区域而新增的一种LSA类型,用于描述NSSA区域引入的外部路由信息。NSSA区域的ASBR将外部路由引入该区域后,使用7类LSA描述这些路由。
7类LSA的扩散范围仅限于始发NSSA区域,7类LSA不会被注入到普通区域。
NSSA区域的ABR会将7类LSA转化为5类LSA,并将该LSA注入到骨干区域,从而在整个OSPF域内泛洪。

NSSA区域的ABR会阻挡其他区域引入的外部路由引入本区域,即NSSA区域内不会存在4类及5类LSA,为了让NSSA区域内的路由器能够通过骨干区域到达AS外部,NSSA区域的ABR会自动向该区域注入一条缺省路由,该路由采用7类LSA描述。

(7)NSSA区域与Totally NSSA区域的LSDB

场景1:
(将Area 2配置为NSSA区域):当R5将外部路由192.168.3.0/24引入NSSA区域时,R5作为ASBR生成7类LSA在Area 2内泛洪;R3生成使用7类LSA描述的缺省路由注入Area 2,Area 2内的路由器依然会收到R3注入的3类LSA,并计算出到达其他区域的区域间路由。
场景2:
(将Area2配置为Totally NSSA区域):Totally NSSA区域和NSSA区域类似,只是Totally NSSA区域的ABR会阻挡3类LSA进入该区域,因此在场景2中,R3不会将区域间路由注入Area 2,故而在R5的LSDB中,仅会看到一条描述缺省路由的3类LSA。

(8)OSPF LSA回顾

(9)路由器对LSA的处理原则

(10)在ABR执行路由汇总

(11)在ASBR执行路由汇总

R1、R3、R5分别对引入的外部路由执行路由汇总。

(12)Slient-Interface

(13)OSPF报文认证

区域视图下,配置OSPF区域的认证模式。
执行命令authentication-mode simple  [ plain plain-text | [ cipher ] cipher-text ],配置OSPF区域的认证模式。
plain表示明文口令类型。
cipher表示密文口令类型。对于MD5/HMAC-MD5认证模式,当此参数缺省时,默认为cipher类型。
配置接口认证方式。
执行命令ospf authentication-mode simple  [ plain plain-text | [ cipher ] cipher-text ],配置OSPF接口的认证模式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/578648.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

传统过程自动化工厂的智能扩展

一 通过NOA概念,公开、安全地迈向未来 随着数字化转型在过程自动化工业中的不断深入,许多公司都面临着同一挑战——如何平衡创新和传统。放眼望去,过程自动化工业和信息技术似乎在以不同的速度发展。虽然过程自动化工厂通过使用传统的自动化…

基于springboot实现企业oa管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现企业oa管理系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了企业OA管理系统的开发全过程。通过分析企业OA管理系统管理的不足,创建了一个计算机管理企业OA管理系统的方案…

C语言数据结构之栈

目录 1.栈的概念及结构2.栈的实现3.栈的代码实现4.相关例题 •͈ᴗ•͈ 个人主页:御翮 •͈ᴗ•͈ 个人专栏:C语言数据结构 •͈ᴗ•͈ 欢迎大家关注和订阅!!! 1.栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插…

AI大模型系列:自然语言处理,从规则到统计的演变

自然语言处理,从规则到统计的演变 自然语言处理(Natural Language Processing,NLP)是人工智能的一个重要分支,主要研究如何让计算机理解、解释和生成人类语言。从自然语言处理的字面上来看,最重要的是“语言…

Unity | 集成 Protobuf(proto 转 cs 插件及序列化与反序列化)

1. 添加 dll 1. 下载 protobuf 源码 根据需要下载 protobuf 指定版本的源码,这里以 v3.21.12(protobuf-csharp-3.21.12.zip)为例: 下载地址:「https://github.com/protocolbuffers/protobuf/releases」 2. 下载 Vis…

防火墙技术基础篇:认识安全策略、安全区域、域间转发及报文转发流程

防火墙技术基础篇:认识安全策略、安全区域、域间转发及报文转发流程 一、安全策略匹配机制 简单通俗的讲,防火墙设备最基本的用途就是定义数据如何转发,靠什么定义呢?最基本的就是安全策略,当流量来到防火墙之后首先…

组播技术原理概述

组播与广播和单播的对比 l 组播、广播和单播工作模式的对比 单播:数据报文从一台主机,点对点的发给另外一台主机 广播:数据报文从一台主机,发给广播域内的全部主机 组播:数据报文从一台主机,发给…

JS----前端将列表数据转树型数据

前端将列表数据转树型数据 场景:后端返回列表数据,由前端根据业务需求完成树型数据转换, 常用于侧边导航菜单,下拉树型数据项等 export function listToTree(data: []) {var map: any {},tree: any []data.forEach((item: any…

ansible-playbook获取当前执行任务的ip及hostname

目录 概述注意实践代码 概述 注意 此问题,配置上一个文件即可解决 实践 代码 --- - name: Get IP Addresshosts: allgather_facts: notasks:- name: Get IP Addressansible.builtin.setup:register: host_ip- name: Print IP Addressansible.builtin.debug:msg:…

网络程序 -- TCP版服务器

一 多进程版TCP服务器 1.1 核心功能 对于之前编写的 字符串回响程序 来说,如果只有一个客户端进行连接并通信,是没有问题的,但如果有多个客户端发起连接请求,并尝试进行通信,服务器是无法应对的 原因在于 服务器是一个…

数据结构 - 队列 [动画+代码注释超详解],萌新轻松上手!!!

一. 队列的概念 队列是一种特殊的线性表,用于存储元素,并且按照先进先出(First In First Out)的顺序进行管理,这意味着最先加入队列的元素将会是最先从队列中被移除的元素 队列的原型:只允许在一端进行插入数据的操作&#xff0c…

【嵌入式AI开发】轻量级卷积神经网络MobileNetV2详解

前言:MobileNetV2网络先升维后降维,在降维时使用线性激活函数,带残差的Inverted bottleck模块,防止ReLU信息丢失。在图像分类、目标检测、语义分割等任务上实现了网络轻量化、速度和准确度的权衡。 回顾MobileNetV1的理论和MobileNetV2项目实战可查阅如下链接: 【嵌入式AI…

使用SDRPI运行openwifi和设置网口

目录 一 制作启动盘 二 使用串口的方式启动openwifi 三 无线连接 四 网口设置,有线连接 五 使用SSH登录 一 制作启动盘 在github上下载img文件,由于github上下载速度比较慢,我会上传网盘链接 githun下载img文件地址: https://git…

OS对软件的管理,进程,PCB、子进程

进程 可执行程序加载到内存中,操作系统为内个程序都形成一个PCB对象(结构体对象),PCB里存放着这个程序的所有的属性。进程可执行程序PCB ,CPU执行程序也是先通过该程序的PCB找到相应的程序代码,然后一条一…

SpringCloud之Hystrix

Hystrix理解 熔断器本身是一种开关装置,用于在电路上保护线路过载。当线路中有电器发生短路时,熔断器能够及时切断故障电路,防止发生过载、发热甚至起火等严重后果。这种保护机制被借鉴到分布式系统的设计中,形成了类似Hystrix中…

基于SpringBoot+Vue校园二手交易系统的设计与实现

系统介绍 自从新冠疫情爆发以来,各个线下实体越来越难做,线下购物的人也越来越少,随之带来的是一些不必要的浪费,尤其是即将毕业的大学生,各种用品不方便携带走导致被遗弃,造成大量的浪费。本系统目的就是让…

安装好fedora_kde系统后的操作

文章目录 1 前言2 办公软件2.1 输入法2.1.1 安装 fcitx52.1.2 安装 fcitx5-rime2.1.3 安装 東風破2.1.4 使用 東風破 安装 郭斌勇 大神的 新世纪五笔 项目2.1.5 配置 fcitx5-rime2.1.6 重新部署 3 感谢阅读~ 1 前言 本文用的是 fedora 40 kde plasma 6。 因为有很多的软件都同时…

2024全国大学生高新技术竞赛——算法智星挑战赛(A~J)

好多都是之前的原题&#xff0c;甚至有上次第二届全国大学生信息技术认证挑战赛的原题&#xff0c;刚打完又来一遍&#xff0c;没绷住。 A. 手机 原题之一&#xff0c;具体出处忘了 最无脑的方法直接用map记录每个按下的值就行了&#xff0c;代码仅供参考。 #include <bit…

MATLAB矩阵

MATLAB 矩阵 矩阵是数字的二维数组。 在MATLAB中&#xff0c;您可以通过在每行中以逗号或空格分隔的数字输入元素并使用分号标记每行的结尾来创建矩阵。 例如&#xff0c;让我们创建一个45矩阵一- 示例 a [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8] MATLAB将执行上述语…

pycharm使用ssh连接服务器

1、具体流程 打开pycharm – File – Setting 输入服务器的IP地址&#xff0c;端口号、登录账号名 输入登陆账号的密码 下一步 一些初级设置 2、一些需要注意的小问题 2.1 更改代码地址 2.2 本地代码上传到服务器 首先在需要上传文件右键 2.3 在服务器的环境中上新安装库&am…