• OSPF路由器需要同时维护域内路由、域间路由、外部路由信息数据库。当网络规模不断扩大时,LSDB规模也不断增长。如果某区域不需要为其他区域提供流量中转服务,那么该区域内的路由器就没有必要维护本区域外的链路状态数据库。
  • OSPF通过划分区域可以减少网络中LSA的数量,而可能对于那些位于自治系统边界的非骨干区域的低端路由器来说仍然无法承受,所以可以通过OSPF的特殊区域特性进一步减少LSA数量和路由表规模。

Stub区域和Totally Stub区域

传输区域和末端区域

  • 如图所示,全网可分为四部分Area 0Area 1Area 2、外部网络。
  • 四部分之间相互访问的主要流量如图中红线所示。
  • 对于OSPF各区域,可分为两种类型:
  • 传输区域:除了承载本区域发起的流量和访问本区域的流量外,还承载了源IP和目的IP都不属于本区域的流量,即“穿越型流量”,如Area 0
  • 末端区域:只承载本区域发起的流量和访问本区域的流量,如Area 1
  • 对于末端区域,需要考虑下几个问题:
  • 保存到达其他区域明细路由的必要性:访问其他区域通过单一出口,“汇总”路由相对明细路由更为简洁。
  • 设备性能:网络建设与维护必须要考虑成本因素。末端区域中可选择部署性能相对较低的路由器。
  • OSPF路由器计算区域内、区域间、外部路由都需要依靠收集网络中的大量LSA,大量LSA会占用LSDB存储空间,所以解决问题的关键是在不影响正常路由的情况下,减少LSA的数量

Stub区域

  • Stub区域的ABR不向Stub区域内传播它接收到的自治系统外部路由(对应四类、五类LSA)Stub区域中路由器的LSDB、路由表规模都会大大减小。
  • 为保证Stub区域能够到达自治系统外部,Stub区域的ABR生成一条缺省路由(对应三类LSA),并发布给Stub区域中的其他路由器。
  • Stub区域是一种可选的配置属性,但并不建议将每个区域都配置为Stub区域。
    通常来说,
    Stub区域位于自治系统的末梢,是那些只有一个ABR的非骨干区域
  • 配置Stub区域时需要注意下列几点:
  • 骨干区域不能被配置为Stub区域
  • 如果要将一个区域配置成Stub区域,则该区域中的所有路由器必须都要配置成Stub路由器。
  • Stub区域内不能存在ASBR,自治系统外部路由不能在本区域内传播。
  • 虚连接不能穿越Stub区域建立

Stub区域的OSPF路由表

  • 配置Stub区域后,所有自治系统外部路由均由一条三类的默认路由代替。
  • 除路由条目的减少外,当外部网络发生变化后,Stub区域内的路由器是不会直接受到影响的。

Totally Stub区域

  • Totally Stub区域既不允许自治系统外部路由(四类、五类LSA)在本区域内传播,也不允许区域间路由(三类LSA)在本区域内传播。
  • Totally Stub区域内的路由器对其他区域及自制系统外部的访问需求是通过本区域ABR所产生的三类LSA缺省路由实现的。
  • Stub区域配置的区别在于,在ABR上需要追加no-summary参数。

Totally Stub区域的OSPF路由表

  • Totally Stub区域访问其他区域及自制系统外部是通过默认路由实现的。
  • 自制系统外部、其他OSPF区域的网络发生变化,Totally Stub区域内的路由器是不直接受影响的。
  • StubTotally Stub解决了末端区域维护过大LSDB带来的问题,但对于某些特定场景,StubTotally Stub并不是最佳解决方案。

NSSA区域和Totally NSSA区域

Stub区域、Totally Stub区域存在的问题

  • RTDRTA同时连接到某一外部网络,RTA引入外部路由到OSPF域,RTD所在的Area 1为减小LSDB规模被设置为StubTotally Stub区域。
  • RTD访问外部网络的路径是“RTD->RTB->RTA->外部网络”,显然相对于RTD直接访问外部网络而言,这是一条次优路径
  • OSPF规定Stub区域是不能引入外部路由的,这样可以避免大量外部路由对Stub区域设备资源的消耗。
  • 对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,StubTotally Stub区域就不能满足需求了。

NSSA区域与Totally NSSA区域

  • OSPF NSSA区域(Not-So-Stubby Area)是在原始OSPF协议标准中新增的一类特殊区域类型。
  • NSSA区域和Stub区域有许多相似的地方。
  • 两者的差别在于,NSSA区域能够将自治域外部路由引入并传播到整个OSPF自治域中,同时又不会学习来自OSPF网络其它区域的外部路由。
  •  NSSA LSA(七类LSA :
  • 七类LSA是为了支持NSSA区域而新增的一种LSA类型,用于描述NSSA区域引入的外部路由信息。
  • 七类LSA由NSSA区域的ASBR产生,其扩散范围仅限于ASBR所在的NSSA区域。
  • 缺省路由也可以通过七类LSA来产生,用于指导流量流向其它自治域。
  • 七类LSA转换为五类LSA
  • NSSA区域的ABR收到七类LSA时,会有选择地将其转换为五类LSA,以便将外部路由信息通告到OSPF网络的其它区域。
  • NSSA区域有多个ABR时,进行7类LSA与5类LSA转换的是Router ID最大的ABR。
  • Totally NSSANSSA区别:
  • Totally NSSA不允许三类LSA在本区域内泛洪。
  • Totally NSSANSSA区域的配置区别在于ABR上需要追加no-summary参数。

NSSA区域与Totally NSSA区域的LSDB

  • 配置了NSSA区域的ABR产生一条七类LSA缺省路由
  • 配置了Totally NSSA区域的ABR会自动产生一条三类LSA缺省路由。

LSA总结

  • LSA作用:
  • Router LSA一类):每个路由器都会产生,描述了路由器的链路状态和开销,在所属的区域内传播。
  • Network LSA二类):由DR产生,描述本网段的链路状态,在所属的区域内传播
  • Network-summary-LSA三类):由ABR产生描述区域内某个网段的路由,并通告给其他相关区域。
  • ASBR-summary-LSA四类):由ABR产生描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。
  • AS-external-LSA五类):由ASBR产生描述到AS外部的路由,通告到所有的区域(除了Stub区域和NSSA区域)。
  • NSSA LSA七类):由ASBR产生描述到AS外部的路由,仅在NSSA区域内传播。
  • 特殊区域不仅有效减少了区域内LSA的数量以及路由计算的压力,而且一定程度上也缩小了网络故障的影响范围。但特殊区域的局限性在于其作用范围只在本区域内.

区域间路由汇总和外部路由汇总

区域间路由汇总

  • 在大规模部署OSPF网络时,可能会出现由于OSPF路由表规模过大而降低路由查找速度的现象,为了解决这个问题,可以配置路由汇总,减小路由表的规模
  • 路由汇总是指将多条连续的IP前缀汇总成一条路由前缀。如果被汇总的IP地址范围内的某条链路频繁UpDown,该变化并不会通告给被汇总的IP地址范围外的设备。因此,可以避免网络中的路由振荡,在一定程度上提高了网络的稳定性。
  • 路由汇总只能汇总路由信息,所以ABR是可以执行路由汇总的位置之一
  • ABR向其它区域发送路由信息时,以网段为单位生成三类LSA。如果该区域中存在一些连续的网段,则可以通过命令将这些连续的网段汇总成一个网段。这样ABR只发送一条汇总后的三类LSA,所有属于命令指定的汇总网段范围的LSA将不会再被单独发送出去。

  • 如图所示,Area 1中存在8个连续网段,汇总前RTB将产生8条三类LSA
  • 在RTB上配置汇总后,RTB仅产生1条三类LSA并泛洪到Area 0。
  • 引入外部路由的ASBR也是执行路由汇总的位置之一。

外部路由汇总

  • ASBR汇总:
  • 配置ASBR汇总后,ASBR将对引入的外部路由进行汇总。
    NSSA区域的ASBR也可以对引入NSSA区域的外部路由进行汇总。
  • 如果设备既是NSAA区域的ASBR又是ABR,则可在将七类LSA转换成五类LSA时对相应前缀进行汇总。

  • 如图所示,Area 0中RTA将8个连续的外部路由引入到OSPF域内,产生8条五类LSA并在OSPF进程域内泛洪。
  • ASBRRTA)配置外部路由汇总后,RTA将仅产生1条五类LSA并泛洪OSPF路由进程域内。
  • 路由汇总降低了网络故障的影响范围。
  • 网络发生故障后,路由协议的收敛速度也是衡量路由协议的重要参考依据之一。

OSPF更新机制

定时更新与触发更新

  • 为了保证路由计算的准确性,需要保证LSA的可靠性。
  • OSPF为每个LSA条目维持一个老化计时器(3600s),当计时器超时,此LSA将从LSDB中删除。
  • 为了防止LSA条目达到最大生存时间而被删除,OSPF通过定期更新(每1800s刷新一次)机制来刷新LSA
  • OSPF路由器每1800s会重新生成LSA,并通告给其他路由器。
  • 为了加快收敛速度,OSPF设置了触发更新机制。
  • 当链路状态发生变化后,路由器立即发送更新消息,其他路由器收到更新消息后立即进行路由计算,快速完成收敛。

OSPF认证机制

安全隐患

  • 如图所示,内部网络通过OSPF协议传递路由。正常情况下,财务部访问公司数据库的流量走向是“财务部->RTA->RTB->Database”。
  • 非法设备接入公司内网,通过向网络中注入非法路由,引导流量进行非正常的转发。即“财务部->RTA->非法设备->RTB->Database”。非法设备收到财务部的流量之后,进行恶意分析,获取财务部关键信息,造成公司机密泄露。

认证解决安全隐患

  • OSPF支持认证功能,只有通过认证的OSPF路由器才能正常建立邻居关系,交互信息。
  • 两种认证方式:
  • 区域认证方式。
  • 接口认证方式。
  • 支持的认证模式分为null(不认证)、simple(明文)、MD5以及HMAC-MD5。
  • 当两种认证方式都存在时,优先使用接口认证方式。

OSPF综合应用场景

  • 需求1分析:办事处C处于Area 3RTE左侧与Area 2相连。
    根据
    OSPF骨干区域与非骨干区域的连接规则,不能正常通行的原因在于Area 3没有与Area 0直接相连。
    解决的方式是在RTE和RTC之间建立虚连接。
  • 需求2分析:区域内部设备性能低,降低路由计算压力可以通过StubTotally StubNSSATotally NSSA最大程度减少需要选择Totally StubTotally NSSA,同时为了保留外部路由引入的功能,只能选择Totally NSSA。
  • 需求3分析:保证路由安全性需要通过认证的方式,最安全的认证模式是采用HMAC-MD5
    认证形式采取接口认证。
  • 需求4分析:在计算外部路由时如要考虑OSPF域内开销,可通过引入类型为1类的外部路由实现。

OSPF配置实现

  • 在RTE和RTC之间建立虚连接
  • 在RTB 上建立Totally NSSA
  • 在RTD 上建立NSSA

  • 在RTA 上引入类型为1 的rip外部路由
  • 在RTE和RTF上开启基于哈希MD5的接口认证形式
  • HMACMD5是一种基于MD5哈希函数生成键控消息验证码(HMAC)的算法,用于验证消息的完整性和来源真实性。其工作原理是通过将密钥与消息数据混合后进行两次哈希处理,生成128位的哈希值。通信双方需共享密钥,接收方通过比对计算值确认数据未被篡改。

OSPF定义了哪几种特殊区域?
答案:OSPF定义了四种特殊区域,分别是Stub AreaTotally Stub AreaNot-So-Stubby AreaNSSA),Totally NSSA
Stub区域与Totally Stub区域的主要差别是什么?
答案:Stub区域不允许Type-4Type-5 LSA进入,但允许Type-3 LSA进入
Totally Stub区域不仅不允许Type-4Type-5 LSA进入,同时也不允许Type-3 LSA进入,只允许表示缺省路由的Type-3 LSA进入。
区域间路由汇总功能在什么路由器上配置?
答案:在区域边界路由器ABR)上配置。

搭建并验证实验

cipher

密文口令类型。可以键入简单口令或密文口令,但在查看配置文件时均以密文方式显示口令。

hmac-md5使用HMAC-MD5验证模式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/96521.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/96521.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/96521.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在缓存Cacheable注解中Key值如何使用常量

1.在常量类中定义商品缓存空间和商品缓存KEY public interface CacheConstants {/*** Goods Cache Name*/String QNA_GOODS_CACHE "qna-goods";/*** Goods Cache key*/String QNA_GOODS_CACHE_KEY "qna_goods:";/*** Order Cache Name*/String QNA_ORDER…

sklearn聚类

在此将sklearn官网的一张关于聚类算法比较的图片放过来。 下面的表格是根据sklearn官网翻译而来。 方法名称 参数 可扩展性 应用场景 几何度量(距离) MiniBatchKMeans 簇的数量 非常适合处理大量样本和中等数量的簇(使用MiniBatch时) 通用型,适用于簇大小均匀、几何形状平…

Recharts:React图表库,组件化设计助力高效数据可视化开发

你写前端项目时有没有卡过数据可视化的坑?比如要做个用户增长折线图,查了半天原生 JS 教程,写了几十行代码,结果要么坐标轴对不上,要么数据渲染不出来;或者用了某个图表库,文档全是英文&#xf…

Java 中String类的常用方法

Java 中的 String 类提供了丰富的方法用于字符串操作,以下是最常用的一些方法分类总结: 一、获取字符串信息length():返回字符串长度(字符个数) String s "hello"; int len s.length(); // len 5charAt(i…

【记录】Docker|Docker内部访问LInux主机上的Ollama服务

部分内容参考自:使得 docker 容器内部可以访问宿主机的 ollama 服务_docker 访问 ollama-CSDN 博客,补充添加了更多的细节,也补充了一个更加简单的方案。 我测试的系统版本:Ubuntu 24.04.2 LTS noble,查看方式是指令 l…

数据库物理外键与逻辑外键全解析

一、核心概念 1. 物理外键 (Physical Foreign Key) 物理外键是数据库层面通过语法明确创建的外键约束。它是由数据库管理系统(DBMS)本身(如 MySQL, PostgreSQL, Oracle)来强制实现的。 它是什么:数据库表结构的一部分&…

Vue3入门到实战,最新版vue3+TypeScript前端开发教程,创建Vue3工程,笔记03

笔记03 一、创建Vue3项目 1.1、创建方式 使用vue-cli创建使用vite创建(推荐)Vue3官网创建项目文档 两种创建方式,推荐使用第二种。vue-cli是基于webpack实现的,vite是新一代前端构建工具。 2.1、vue3项目结构

企业如何利用群晖 NAS 构建高效数据备份与容灾体系

在数字化转型的过程中,企业数据已成为核心资产。然而,勒索病毒攻击、硬件故障、操作失误以及自然灾害等风险,都可能导致数据丢失甚至业务中断。如何构建一个高效、安全、可恢复的数据备份与容灾体系,已成为企业 IT 管理的关键课题…

关于在pycharm终端连接服务器

1、先为每个项目创建一个虚拟环境2、使用命令下载torchpip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple安装之后发现安装在了本地,我需要安装到服务器里面,此时可以把本地的删除,因为是默认安装到c盘,除非你指定路…

CSS 继承 (Inheritance)

一、核心概念CSS 继承是指某些 CSS 属性如果被设置在父元素上,其值会自动流向(应用到)其所有后代元素(子、孙元素等)的特性。核心价值:通过将样式声明应用于祖先元素,可以避免在所有后代元素上重…

UGUI源码剖析(15):Slider的运行时逻辑与编辑器实现

UGUI源码剖析(第十五章):Slider的运行时逻辑与编辑器实现 在之前的章节中,我们已经深入了UGUI众多核心组件的运行时源码。然而,一个完整的Unity组件,通常由两部分构成:定义其在游戏世界中行为的…

【Python】爬虫html提取内容基础,bs4

前言 BeautifulSoup也就是bs4,里面功能其实有很多,不过对于爬虫而言主要掌握一下几块就可以了 怎么找标签?找到标签后怎么获取属性,怎么获取文本内容如何通过找到的标签继续获取子标签 安装 pip install bs4案例 对于找标签来说&#xf…

组件库打包工具选型(npm/pnpm/yarn)的区别和技术考量

组件库打包工具选型:npm/pnpm/yarn的区别与技术考量 一、核心差异概述 组件库打包工具的选择,本质是在​​依赖管理效率​​、​​磁盘空间占用​​、​​Monorepo支持​​、​​安装速度​​及​​幽灵依赖风险​​之间做权衡。npm作为Node.js默认工具…

新型APT组织“嘈杂熊“针对哈萨克斯坦能源部门发起网络间谍活动

感染链图示 | 图片来源:Seqrite实验室APT研究团队 Seqrite实验室APT研究团队近日发布了一份深度分析报告,披露了一个自2025年4月起活跃的新型威胁组织"嘈杂熊"(Noisy Bear)。该组织主要针对哈萨克斯坦石油天然气行业,攻击手法结合…

OpenCV 图像直方图

目录 一、什么是图像直方图? 关键概念:BINS(区间) 二、直方图的核心作用 三、OpenCV 计算直方图:calcHist 函数详解 1. 函数语法与参数解析 2. 基础实战:计算灰度图直方图 代码实现 结果分析 3. 进…

Firefox Window 开发流程(四)

1 引言 在进行 Firefox 浏览器的二次开发、内核研究或自定义构建之前,最重要的步骤就是拉取源码并进入 Mozilla 官方提供的开发引导模式。这不仅是所有定制工作的起点,同时也决定了后续开发环境的稳定性与可维护性。本文将从源码获取、工具使用、引导脚…

mybatis plus 使用wrapper输出SQL

在MyBatis-Plus中,Wrapper对象用于构建复杂的查询条件。虽然MyBatis-Plus本身没有直接提供从Wrapper对象获取完整SQL语句的方法,但你可以通过一些间接的方式来获取生成的SQL片段。以下是如何使用MyBatis-Plus的Wrapper来获取SQL片段的步骤:‌…

第1章:操作系统和计算机网络

1. 操作系统和计算机网络组成目标概述1.1. 核心知识操作系统和网络知识很庞大,大多内容枯燥无味,主功最常用的,符合2/8原则。操作系统:内核、性能、磁盘IO、内存、CPU进程、线程、文件、中断计算机网络:OSI七层模型、T…

day27|前端框架学习

1、验证。前后端连接,authentication2、action,在pinia,管理状态,处理异步操作(API/Firebase)。methods。在vue组件,处理组件内部逻辑3、滑动窗口,能有大致思路,但是自己…

单片机启动文件——数据段重定位,BSS段清零

目录重定位概念的引入一、数据段重定位1.作用:2.目的:3.自己模拟代码二、BSS段清零1.作用:2.目的:3.自己模拟代码三,实现原理重定位概念的引入 单片机中内存段的详细介绍 在单片机中内存分为了很多不同的区域&#xf…