OSPF的LSA详解(报文分析+具体例子)

devtools/2025/3/14 6:06:08/

OSPF LSA

  • 要点掌握:

    • 名称

    • 携带的内容

    • 作用

    • 传播的范围

    • 由谁产生

LSA报头格式

  • 所有的LSA都有相同的报文头

    image-20250311093339955

    • LS age:LSA产生后所经过的时间,以秒为单位。LSA在本路由器的LSDB中会随时间老化(每秒钟加1),但在网络的传输过程中却不会

    • LS type:LSA的类型

    • Link State ID:具体数值根据LSA的类型而定。

    • Advertising Router:始发LSA的路由器的ID

    • LS sequence number:LSA的序列号,其他路由器根据这个值可以判断哪个LSA是最新的

    • LS checksum:除了LS age字段外,关于LSA的全部信息的校验和

    • length:LSA的总长度,包括LSA Header,以字节为单位

Type1-LSA

  • 定义:

    • Router LSA , 路由LSA:

    • 描述区域内部与路由器直连的链路信息

    • 仅在区域内部传播

    • 每台路由器都会产生Type1 LSA

  • 内容:

    • (链路状态ID)LS ID :发出该LSA的路由器的Router-id

    • (通告路由器)Adv Rtr:产生LSA的路由器的Router-id

    • (链路类型)Link-Type

      • 描述该链路的二层类型 , 类型取值:

      • 1: 点对点连接到另一台路由器 ;链路ID:邻居的RID;链路数据:产生该LSA路由器的接口IP;

      • 2:连接到一个传输网络;链路ID:DR的接口IP地址;链路数据:产生该 LSA的路由器的接口地址

      • 3:连接到一个末梢(stub)网络;链路ID:网络IP地址;网络掩码

      • 4:虚链路;链路ID:邻居的RID;链路数据产生该 LSA的路由器的接口地址

      • Type:链路类型,取值:

        链路类型描述链路ID链路数据
        1点对点连接到另外一台路由器邻居的Router-id产生该LSA的路由器的接口的IP地址
        2连接到一个传输网络DR的接口IP地址产生该LSA的路由器的接口的IP地址
        3连接到一个末梢网络网络IP地址网络掩码
        4虚链路邻居的Router-ID产生该LSA的路由器的接口的IP地址

        image-20250311094657694

  • 报头内容:

    image-20250311093642995

    • 特殊位:

      • V:如果产生此LSA的路由器是虚连接的端点,则置为1

      • E:如果产生此LSA的路由器是ASBR,则置为1

      • B:如果产生此LSA的路由器是ABR,则置为1

    • # Links:LSA中所描述的链路信息的数量,包括路由器上处于某区域中的所有链路和接口

    • Link ID:链路标识,具体的数值根据链路类型而定(发出该LSA路由器的RID)

    • Link data:链路数据,具体的数值根据链路类型而定

      例子:

      img

      image-20250311150035811

Type2-LSA

  • 定义:

    • Network LSA 网段LSA:

    • 描述区域内的MA网络链路的路由器RID以及网段掩码信息; (通过类型1和类型2得到区域内部路由)

    • 仅在区域内部传输

    • 只有DR会产生Type2 LSA

  • 内容:

    • (链路状态ID)LS ID :该网段的DR的ip地址

    • (通告路由器)Adv Rtr:该网段DR的Router-id

    • 网络掩码

    • (相连的路由器)Attached Router:该网段所有路由器的Router-id

  • 报头内容

    image-20250311110029503

    • Link State ID:DR的IP地址

    • Network mask:广播网或NBMA网络地址的掩码

    • Attached router:连接在同一个网段上的所有与DR形成了完全邻接关系的路由器的Router ID,也包括DR自身的Router ID

  • 例子:

    image-20250311150858075

Type3-LSA

  • 定义:

    • Summary LSA 网络汇总LSA

    • 描述其他区域的链路信息 -- 解决区域间路由计算

      • 以子网形式传播,类似直接传递路由

      • 收集区域内的1,2类LSA信息以子网形式传播

    • 在除了生成该LSA的所有其他区域传播

    • 只有ABR会产生Type3 LSA

  • 内容:

    • (链路状态)LS ID :其他区域某个网段的网络地址

    • Net mask :该网段的子网掩码

    • (通告路由器)Adv Rtr:通告该LSA的ABR的Router-id

    • cost值

  • 报头内容

    image-20250311110148383

    • Link State ID:所通告的区域外的网络地址;

    • Network mask:Type3 LSA的网络地址掩码。

    • Metric:到目的地址的路由开销

    • 说明:Type3的LSA可以用来通告缺省路由,此时Link State ID和Network Mask都设置为0.0.0.0。

  • 例子:

    image-20250311151307631

    image-20250311151317232

Type4-LSA

(Type-4 LSA和Type-3 LSA 除Link State ID字段有所不同外,有着相同的格式,它们都是由ABR产生)

  • 定义:

    • Asbr-summary ASBR汇总LSA

    • 描述ASBR的信息(RID),让区域内部路由器知道如何到达ASBR

    • 只有ABR会产生Type4 LSA 触发条件是ABR收到第一个5类LSA

    • 在ASBR本区域的内部路由器,不会产生到达该ASBR的4类LSA

  • 内容:

    • LS ID:ASBR的router-id

    • 网络掩码:字段全0 ,没有意义

    • Adv Rtr:通告ASBR的ABR的router-id

    • cost:该ABR到ASBR的cost值

  • 报头格式与Type-3 LSA类似

Type5-LSA

  • 定义:

    • AS-extenal LSA 外部LSA

    • 描述AS外部引入的路由信息

    • 只有ASBR会产生Type5_LSA E位置1

    • 在所有区域传播 除了个别特殊区域

  • 内容:

    • 网络掩码

    • E位:度量值类型

      • 置位1:二类外部路由 ,可信程度低,ASBR到目的地址(默认)

      • 置位2:一类外部路由, 可信程度高,开销=本路由器到ASBR+ASBR到目的地址

    • Cost值

    • 外部路由标记,部署策略

    • FA 转发地址

      • 为0:到达该外部网段的流量发往引入该路由的ASBR

      • 不为0:发往该地址

    • LS ID:外部某个网段的网络路由

    • Adv Rtv:引入该网段路由的ASBR的Router-id

  • 报文格式

    image-20250311110306314

    • Link State ID:所要通告的其他外部AS的目的地址,如果通告的是一条缺省路由,那么链路状态ID(Link State ID)和网络掩码(Network Mask)字段都将设置为0.0.0.0。

    • Network mask:所通告的目的地址的掩码。

    • (External Metric):外部度量值的类型。如果是第2类外部路由就设置为1,如果是第1类外部路由则设置为0。

    • Metirc:路由开销

    • Forwarding Address:到所通告的目的地址的报文将被转发到的地址

    • External Route Tag:添加到外部路由上的标记。OSPF本身并不使用这个字段,它可以用来对外部路由进行管理

  • 例子:

    image-20250311152118506

Type7-LSA

  • 定义:

    • NSSA(非完全末梢区域)外部LSA

    • 描述在NSSA区域引入的AS外部路由信息

    • 由NSSA区域的ASBR产生

    • 只会出现在NSSA和Totolly NSSA区域

  • 内容:

    • LS ID:外部某个网段的网络地址

    • Adv Rtr:引入该路由的ASBR的router-id

  • 报文格式与5类LSA一致

  • 7-5转

    • ABR为了让NSSA区域内的路由器能够通过骨干区域访问被过滤掉的5类LSA的外部路由,会向NSSA中发布一条默认路由(7类LSA描述)

    • NSSA允许用7类LSA引入少量外部路由,不被注入area0

    • ABR将NSSA泛洪的7类LSA转换成5类LSA再OSPF域内传播

  • FA地址不为0,是一个具体地址

  • 例子;

    image-20250311152342386

判断LSA的新旧

  • 拥有更高链路状态序列号的LSA实例被认为最新 -- 每次刷新LSA会将序列号+1

  • 序列号相同,拥有更大校验和的LSA实例被认为最新

  • 如果序列号和校验和相同,老化时间设置为Max-age(默认1h),则最新

  • 当本地LSA和新收到的LSA老化时间超过Max-Age-Diff(缺省为15m)时,被认为两个不同实例,老化时间小的LSA最新

  • 如果上面4点都一样则被认为是相同LSA


http://www.ppmy.cn/devtools/166946.html

相关文章

中级软件设计师2004-2024软考真题合集下载

中级软件设计师2004-2024软考真题合集下载 🌟 资源亮点🎯 适用人群💡 资源使用指南📌 资源获取方式 🌟 资源亮点 「中级软件设计师历年真题及答案解析(2004-2024)」 是全网最全、最新的备考资料…

【每日学点HarmonyOS Next知识】tab拦截、组件方法做参数、自定义组件链式调用、多次观察者监听、横竖屏切换

1、HarmonyOS Tab组件里的tabBar点击如何拦截,根据情况判断是否允许切换tab? Tab组件里的tabBar点击如何拦截,根据情况判断是否允许切换tab 暂时没有tabBar点击拦截功能实现,可以使用TabsController自定义页签以及并在其中添加事…

LangGraph 构建的工作流调用数据库的时候怎么添加重试机制

在工作流许多使用场景中,我们可能希望我们的节点具有自定义的重试策略,例如在调用API、查询数据库或调用LLM等情况下。这里我给大家介绍一种方式叫 RetryPolicy。 from langgraph.pregel import RetryPolicy RetryPolicy()RetryPolicy(initial_interval…

聊一聊测试过程中接口不通的原因排查

目录 一、 确认网络连通性 二、DNS 解析问题 三、客户端请求配置 四、 服务端状态检查 五、 查看日志 六、 接口逻辑与参数 七、 使用工具辅助排查 八、 环境与依赖问题 九、高级场景排查 十、其他方式 在我们进行接口测试时,大概率会遇到接口调不通的情况…

证券行业SCA开源风险治理实践

近日,悬镜安全成功中标国内领先的证券公司海通证券软件成分分析工具采购项目,中标产品为源鉴SCA开源威胁管控平台。 海通证券作为国内领先的证券公司之一,当下已基本建成涵盖证券期货经纪、投行、自营、资产管理、私募股权投资、另类投资、融…

Deepseek可以通过多种方式帮助CAD加速工作

自动化操作:通过Deepseek的AI能力,可以编写脚本来自动化重复性任务。例如,使用Python脚本调用Deepseek API,在CAD中实现自动化操作。 插件开发:结合Deepseek进行二次开发,可以创建自定义的CAD插件。例如&a…

Cursor 终极使用指南:从零开始走向AI编程

Cursor 终极使用指南:从零开始走向AI编程 问什么是cursor? mindmaproot(Cursor核心功能)智能编码代码生成自动补全错误修复项目管理多窗口布局版本控制终端集成个性设置主题定制快捷键配置插件扩展AI协作对话编程知识检索文档生成前些天发现了一个巨牛的人工智能学…

c# txt文档的实时显示,用来查看发送接收指令

通讯历史按钮 private void uiButton1_Click(object sender, EventArgs e){try{logf new logF();logf.Show();}catch (Exception){throw;} }主页面关闭函数(点击保存就为true true就不删除) private void page1_FormClosed(object sender, FormClos…