04、OSPF路由计算

先掌握1、2、3、4、5、7类LSA,明白它们由谁产生,作用,范围

LSA基本概念

  • LSA是OSPF进行路由计算的关键依据。
  • OSPF的LSU报文可以携带多种不同类型的LSA。
  • 各种类型的LSA拥有相同的报文头部。

image-20250212100155895

重要字段解释

  • LS Age(链路状态老化时间):此字段表示LSA已经生存的时间,单位是秒。
  • Options(可选项):每一个bit都对应了OSPF所支持的某种特性。
  • LS Type(链路状态类型)指示本LSA的类型。
  • Link State ID(链路状态ID)不同的LSA,对该字段的定义不同。
  • Advertising Router(通告路由器):产生该LSA的路由器的Router ID。
  • LS Sequence Number(链路状态序列号):当LSA每次有新的实例产生时,序列号就会增加。
  • LS Checksum(校验和):用于保证数据的完整性和准确性。
  • Length:是一个包含LSA头部在内的LSA的总长度值。

链路状态类型、链路状态ID、通告路由器三元组唯一地标识了一个LSA。

链路状态老化时间 、链路状态序列号 、校验和用于判断LSA的新旧。

常见LSA类型

image-20250212100609310

查看特定的LSA的命令

display ospf lsdb [类型] [LSA ID] [广告路由器ID]
# 例如,查看1类LSA
display ospf lsdb router

image-20250212151936885

Router LSA

Router LSA(1类LSA):每台OSPF路由器都会产生。它描述了该路由器直连接口的信息

Router LSA只能在所属的区域内泛洪。

Link State ID :1类LSA的Link State ID 为OSPF 的Rouer ID。

image-20250212101155512

  • V (Virtual Link ) :如果产生此LSA的路由器是虚连接的端点,则置为1。
  • E (External ): 如果产生此LSA的路由器是ASBR,则置为1。
  • B (Border ):如果产生此LSA的路由器是ABR,则置为1。
  • links :LSA中的Link(链路)数量。Router LSA使用Link来承载路由器直连接口的信息。

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

注意,StubNet类型的Link ID是网络地址,而不是IP地址。

image-20250212103455997

实际上,1类LSA的Link Type有4种,还有一种类型是VLink。

扩展:Transit网段 vs Stub网段

特性 Transit网段 Stub网段
用途 用于转发数据包(中转网络) 用于描述末端网络(终点网络)
连接设备 多个路由器(至少一个 DR 和 BDR) 通常只有一个路由器
链路类型 多路访问(MA)或非广播多路访问(NBMA) 点对点链路、环回接口或直连网络
OSPF表示 Link Type = TransNet Link Type = StubNet
Link ID DR 的接口 IP 地址 网络的 IP 地址
Link Data 宣告 Router-LSA 的路由器接口 IP 地址 网络的子网掩码

Router LSA描述P2P网络

image-20250212102620564

Router LSA描述TransNet

image-20250212102859471

Network LSA

Network LSA(2类LSA) :由DR产生,描述本网段的链路状态,在所属的区域内传播。

Network LSA 记录了该网段内所有与DR建立了邻接关系的OSPF路由器,同时携带了该网段的网络掩码

image-20250212150834318

  • Link State ID DR的接口IP地址。
  • Network Mask:MA网络的子网掩码。
  • Attached Router:连接到该MA网络的路由器的Router-ID(与该DR建立了邻接关系的邻居的Router-ID,以及DR自己的Router ID),如果有多台路由器接入该MA网络,则使用多个字段描述。即记录了MA网络中所有的RID

思考题

image-20250212151642469

1、ABCD

2、路由表优中选优,可能选中比ospf优先级高的其他的路由加入到路由表中。

区域划分

Router LSA和Network LSA只在区域内泛洪,因此通过区域划分在一定程度上降低网络设备的内存及CPU的消耗。

划分区域后,路由器可以分为两种角色:

  • 区域内部路由器(Internal Router):该类设备的所有接口都属于同一个OSPF区域。
  • 区域边界路由器(Area Border Router):该类设备接口分别连接两个及两个以上的不同区域(但至少有一个接口要属于骨干区域)。

OSPF区域间路由信息传递是通过ABR产生的Network Summary LSA(3类LSA)实现的。

Network Summary LSA只在始发区域泛洪。例如下图中,R2产生的3类LSA只在Area 0 中泛洪,R5收到的3类LSA是由R3重新生成的。

image-20250212154109314

Network Summary LSA

Network Summary LSA(3类LSA)由ABR产生,用于向一个区域通告到达另一个区域的路由

注意:一条三类LSA只能描述一条路由信息。

image-20250212154436464

重要字段解释

  • LS Type:取值3,代表Network Summary LSA。
  • Link State ID:路由的目的网络地址。
  • Advertising Router:生成LSA的Router ID。
  • Network Mask:路由的网络掩码。
  • metric:到目的地址的路由开销。

示例

image-20250212154925742

区域间路由计算示例

image-20250212155207244

image-20250212155232122

image-20250212155333990

区域间防环机制

环路的产生

image-20250212160438788

防环机制1

OSPF要求所有的非骨干区域必须与Area0直接相连,区域间路由需经由Area0中转。

区域间的路由传递不能发生在两个非骨干区域之间,这使得OSPF的区域架构在逻辑上形成了一个类似星型的拓扑。

image-20250212160529252

注意:OSPF要求ABR设备至少有一个接口属于骨干区域。

防环机制2

ABR不会将描述到达某个区域内网段路由的3类LSA再注入回该区域。

image-20250212160706609

防环机制3

ABR从非骨干区域收到的3类LSA不能用于区域间路由的计算。

image-20250212160727153

但是当,R1和R2、R3和R4之间的链路中断导致骨干区域不连续。

  • R4将10.0.2.2/32路由以3类LSA的形式发送到Area 1。
  • R5和R6可以根据上述3类LSA计算出10.0.2.2/32路由。
  • R3从非骨干区域收到3类LSA,不进行路由计算,也不会将此3类LSA发送到其他区域。
  • 此时,R1和R3都无法和10.0.2.2/32通信。

可以使用虚连接解决骨干区域不连续的问题。

虚连接的作用及配置

OSPF要求骨干区域必须是连续的,但是并不要求物理上连续,可以使用虚连接使骨干区域在逻辑上连续。

虚连接可以在任意两个ABR上建立,但是要求这两个ABR都有端口连接到一个相同的非骨干区域。

image-20250212161138683

注意:虚连接的创建使OSPF协议可以通过非骨干区域通信,违背了OSPF区域间的防环规则,在某些场景下会导致路由环路的产生,因此不建议部署OSPF虚连接。

思考题

  1. (判断题)一条Network Summary LSA只能描述一条路由信息。

    答案:对。

  2. (简答题)OSPF如何避免区域间的路由环路?

    1. 所有非骨干区域都要与骨干区域直接相连,区域间的路由须经由骨干区域中转。
    2. ABR不会将描述到达某个区域内网段路由的3类LSA再注回到该区域中。
    3. ABR从非骨干区域收到的LSA不能用于区域间路由的计算。
posted @ 2025-05-28 11:55  最爱喝开水  阅读(93)  评论(0)    收藏  举报