华为路由常见 LSA 类型的产生及作用域和字段详细解读

华为路由常见 LSA 类型的产生及作用域

类型 名称 描述
1 路由器 LSA(Router LSA) 每个设备都会产生,描述了设备的链路状态和开销。 该 LSA 只能在接口所属的区域内泛洪
2 网络 LSA(Network LSA) 由 DR 产生,描述该 DR 所接入的 MA 网络中所有与之形成邻接关系的路由器,以及 DR 自己。 该 LSA 只能在接口所属区域内泛洪。
3 网络汇总 LSA(Network Summary LSA) 由 ABR 产生,描述区域内某个网段的路由,该类 LSA 主要用于区域间路由的传递
4 ASBR 汇总 LSA(ASBR Summary LSA) 由 ABR 产生,描述到 ASBR 的路由,通告给除 ASBR 所在区域的其他相关区域。
5 AS 外部 LSA(AS External LSA) 由 ASBR 产生,用于描述到达 OSPF 域外的路由。
7 非完全末梢区域 LSA(NSSA LSA) 由 ASBR 产生,用于描述到达 OSPF 域外的路由。 NSSA LSA 与 AS 外部 LSA 功能类似,但是泛洪范围不同。 NSSA LSA 只能在始发的 NSSA 内泛洪,并且不能直接进入 Area0。 NSSA 的 ABR 会将 7 类 LSA 转换成 5 类 LSA 注入到 Area0。

Router LSA 字段详解

LSA 的基本概念

・LSA 是 OSPF 进行路由计算的关键依据。

・OSPF 的 LSU 报文可以携带多种不同类型的 LSA。

・各种类型的 LSA 拥有相同的报文头部。

重要字段解释

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)的比较中,通常会按照以下顺序进行:

  1. LS Sequence Number :链路状态序列号。序列号越大,表示该 LSA 更新得更频繁,因此是较新的信息。
  2. LS Checksum :链路状态校验和。如果两个 LSA 的序列号相同,会通过校验和来进一步确认哪个是正确的版本。校验和用于检测数据在传输过程中是否发生了错误。
  3. LS Age :链路状态年龄。如果序列号和校验和都相同,那么会通过年龄来决定。年龄越小,表示该 LSA 越新。
    链路状态协议(如 OSPF)使用这些字段来确保网络中的路由信息是最新的和一致的。当路由器接收到一个 LSA 时,它会按照上述顺序进行比较,以决定是否需要更新自己的数据库中的相应信息。

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

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

・V (Virtual Link) :如果产生此 LSA 的路由器是虚连接的端点,则置为 1。

・E (External ): 如果产生此 LSA 的路由器是 ASBR,则置为 1。

・B (Border ):如果产生此 LSA 的路由器是 ABR,则置为 1。

・links :LSA 中的 Link(链路)数量。Router LSA 使用 Link 来承载路由器直连接口的信息。

・Router LSA 使用 Link 来承载路由器直连接口的信息。

・每条 Link 均包含 "链路类型"、"链路 ID"、"链路数据" 以及 "度量值" 这几个关键信息。

・路由器可能会采用一个或者多个 Link 来描述某个接口。

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

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

Link State ID:DR 的接口 IP 地址。

Network Mask:MA 网络的子网掩码。

Attached Router:连接到该 MA 网络的路由器的 Router-ID(与该 DR 建立了邻接关系的邻居的 Router-ID,以及 DR 自己的 Router-ID),如果有多台路由器接入该 MA 网络,则使用多个字段描述。

SPF 算法

Phase 1:构建 SPF 树。

▫ 路由器将自己作为最短路径树的树根,根据 Router-LSA 和 Network-LSA 中的拓扑信息,依次将 Cost 值最小的路由器添加到 SPF 树中。路由器以 Router ID 或者 DR 标识。

▫ 广播网络中 DR 和其所连接路由器的 Cost 值为 0。

▫ SPF 树中只有单向的最短路径,保证了 OSPF 区域内路由计算不会出现环路。

Phase 2:计算最优路由。

▫ 将 Router-LSA、Network-LSA 中的路由信息以叶子节点形式附加在对应的 OSPF 路由器上,计算最优路由。

▫ 已经出现的路由信息不会再添加到 SPF 树干上。


via: huawei


路由 OSPF LSA 介绍、1~7 类 LSA 详细介绍

1.0.0 路由 OSPF LSA 介绍、1~7 类 LSA 详细介绍

OSPF LSA 链路状态通告 (Link status announcement),作用于 向其它邻接 OSPF 路由器 传递拓扑信息与路由信息。

LSA 如何去描述拓扑信息与路由信息的呢?

其实是基于不同类型 LSA 进行描述,而常见的 LSA 类型有 1 类、2 类、3 类、4 类、5 类、7 类

OSPF 路由器通过不同类型的 LSA 组建成一下 LSDB 数据库(链路状态数据库)再通过 SPF 算法进行计算出最优的 OSPF 路由加入到路由表中。

宏观下的 6 种 LSA 作用:

1 类 Router

  • 路由器 LSA,描述设备的直连拓扑信息、路由信息。

  • 该 LSA 只能在接口所属的区域内泛洪。

    • 解释(接口所属的区域):在 OSPF 中以接口划分区域,故每个接口都可以属于不同的区域。

    • 1 类 LSA 只会在区域内泛洪 / 传递,不会泛洪到其它区域中。

2 类 Network

  • 网络 LSA,该 2 类 LSA 只会在广播类型网络中出现。
  • 由 DR 产生,描述 DR 所在的 MA 网络中所有与之形成邻接关系的路由器,以及 DR 自己。
    • 解释(所有与之形成邻接关系的路由器):
      • 在广播类型的网络中,OSPF 会选举出 DR 设备统一管理广播网络中的 LSA。
      • 而广播网络中只有 DR 与 BDR 能够与 DR-other 设备建立邻接关系。
      • 2 类 LSA 描述的正是 DR 与其它设备之间的拓扑信息 [DR 连接了谁],与 DR 广播网络的路由信息 [DR 广播网络是什么]
      • 该 LSA 只能在接口所属区域泛洪。

3 类 Summary-Network

  • 网络汇总 LSA,由 ABR 设备产生,描述区域内的路由信息。
    • 因为 1 类、2 类 LSA 只能在区域内传递。
    • 故其它区域需要学习到另一个区域的 1 类 2 类就需要有新的 LSA 来统一描述 1 类 2 类的拓扑、路由信息。这个 LSA 就是 3 类 LSA。

4 类 ASBR-Summary

  • ASBR 汇总 LSA,由 ABR 产生,描述到 ASBR 的路由,服务于 5 类 LSA。

  • 通告给除 ASBR 所在区域的其它区域。

  • 这里需要进行图形的解释:

    • 5 类 LSA 在传递过程中下一跳是不可改变的,故 AR5 想访问 AR1 就需要去往 AR2 的 2.2.2.2。

    • 1、首先 AR2 的 router-id=2.2.2.2 并没有发布到 OSPF 网络中,故 AR5 不会学习到去 2.2.2.2 的路由。

    • 2、由于 AR3 与 AR2 在同一个区域中,通过 1 类 LSA 就可以知道如何去 2.2.2.2。

      • 【唉?不是说 2.2.2.2 是 RID 吗?不是没有发布到 OSPF 吗?AR3 如何知道去 2.2.2.2 的呢?】

      • 【答案就是在 1 类 LSA 的子类型中可以得知去往 RID 的拓扑信息,往后会详细讲解 1 类 LSA 的其它子类型】

      shell 复制代码
      -  Ls id     : 2.2.2.2	【该 LSA 由谁产生?因为 1 类描述自己的直连接口信息,当然是自己】
         Adv rtr   : 2.2.2.2	【谁通告的?1 类 LSA 由自己产生,当然是自己】
         Ls age    : 623 
         Len       : 36 
         Options   :  ASBR  E  
         seq#      : 80000007 
         chksum    : 0x2ec3
         Link count: 1
          * Link ID: 10.1.23.3【基于 TransNet 子类型可知该地址表示广播网络的 DR 地址】
            Data   : 10.1.23.2【谁通告的该 LSA 信息?基于该地址我们就知道如何去 2.2.2.2 了】
            Link Type: TransNet     
            Metric : 1
             该 LSA 由 2.2.2.2 通告过来给 AR3 的,其中产生了 1 条拓扑信息,可通过 10.1.23.2 访问到。
             故同样的也可以访问到 2.2.2.2。
             ```
    • 3、由于 1 类只能在区域中传递,故 AR5 无法学习到去往 2.2.2.2 的路由信息。这个时候就需要用到ABR (AR3) 发布的 4 类 LSA(去 2.2.2.2 来找 AR3 准没错了)

5 类 AS-External

  • AS 外部 LSA,由 ASBR 产生,描述到 OSPF 域外的路由。
  • OSPF 引入的路由,如引入 RIP、ISIS、BGP 等路由,引入的路由就属于外部路。外部路由用 5 类 LSA 进行通告。
  • 5 类 LSA 在传递的过程中,下一跳不会被中间设备修改。

7 类 NSSA

  • 用于特殊区域 NSSA 中的 LSA。
  • 由 ASBR 产生,用于描述到达 OSPF 域外的路由。NSSA7 类与 5 类功能一样,但泛洪范围不同。
  • NSSA7 类只能在始发区域内泛洪,并不能直接进入 Area0。当 7 类需要传递 Area0 的时候,ABR 会将 7 类转换成 5 类传递入到 Area0 中。

查看 LSDB 数据库

LSDB 链路状态数据库,是存放各类 LSA 的地方,在路由设备上通过命令:display ospf lsdb 查看数据库信息。

Type表示 LSA 的类型(1 类 Router、2 类 Network、3 类 Sum-Net、4 类 )

Linkstate通常表示谁产生的 LSA

AdvRouter表示谁通告的 LSA

Age表示 LSA 的年龄,也是老化时间。

Len为 LSA 的大小

Sequence为 LSA 序列号

Metric表示去往该 LSA 的开销。

shell 复制代码
<AR3>display ospf lsdb 

	 OSPF Process 1 with Router ID 3.3.3.3【OSPF 路由设备的 router-id】
		 Link State Database 【以下就是关于 AR3 的 LSDB 数据库信息】

		         Area: 0.0.0.0【区域 0 的 LSA】
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4           1240  36    80000005       1
 Router    3.3.3.3         3.3.3.3            834  36    80000005       1
 Network   10.1.34.4       4.4.4.4           1240  32    80000002       0
 Sum-Net   10.1.45.0       4.4.4.4           1277  28    80000001       1
 Sum-Net   10.1.23.0       3.3.3.3            834  28    80000002       1
 
		         Area: 0.0.0.1【区域 1 的 LSA】
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            585  36    80000007       1
 Router    3.3.3.3         3.3.3.3            785  36    80000005       1
 Network   10.1.23.3       3.3.3.3            785  32    80000001       0
 Sum-Net   10.1.45.0       3.3.3.3            834  28    80000001       2
 Sum-Net   10.1.34.0       3.3.3.3            834  28    80000001       1
 NSSA      0.0.0.0         3.3.3.3            834  36    80000001       1
 NSSA      10.1.23.0       2.2.2.2            585  36    80000002       1
 NSSA      192.168.1.0     2.2.2.2            585  36    80000002       1
 NSSA      10.1.12.0       2.2.2.2            585  36    80000002       1
 

		 AS External Database【外部路由的 LSA】
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  192.168.1.0     3.3.3.3            584  36    80000002       1
 External  10.1.12.0       3.3.3.3            584  36    80000002       1

新旧 LSA 判断

话说网络中的 LSA 如此之多,OSPF 路由器是如何进行判断哪些是新的 LSA,哪些是旧的 LSA 呢?

对于 LSA,有三个重要的字段。通过这三个字段可以判断出 LSA 的新旧:序列号 seq校验 chksum年龄 Age

LSA 优先区域顺序

1、先比较序列号,越大越新,越新越优先。

  • 因为 OSPF 最新生成的 LSA 会比旧的 LSA 序列号更大。

2、序列号一样,校验和越大越新。

  • OSPF 报文中的校验和并不简简单单是用来判断报文有没有出错的,该值的计算不仅仅需要 LSA 报文的信息,还需要上一次计算出的校验和,并且每次计算校验和,都会比之前的校验和更大,因此校验和被认为是 OSPF LSA 消息新旧的第二个标准。

  • 红字部分借鉴 CSDN 博主「永远是少年啊」:在OSPF网络中,如何判断LSA的新旧 ?
    https://blog.csdn.net/weixin_40228200/article/details/118497166

3、特例就是当 Age=3600 时该 LSA 最优先,其它 Age 则是越小越优先。

  • Age 表示 LSA 产生至今有多久了,默认从 0 开始。
  • 当 OSPF 设备需要删除某个 LSA 时,就会通过设置 Age 时间为 3600 秒进行泛洪,让其它 OSPF 设备进行删除指定 LSA。所以 LSA=3600 比 Age=0 更具备优先级。
  • 但正常情况下 Age 是不会达到 3600 的,因为 OSPF 默认情况下 1800 秒(30 分钟)周期性更新一次 LSA,当收到新的 LSA 之后就会进行刷新 Age 时间。

查看 LSA 的详细信息

通过命令:display ospf lsdb LSA 类型 LSA 条目 ID,如查看 2.2.2.2 的 1 类 LSA 详细信息:display ospf lsdb router 2.2.2.2

shell 复制代码
<AR3>display ospf lsdb router 2.2.2.2

	 OSPF Process 1 with Router ID 3.3.3.3
		         Area: 0.0.0.0
		 Link State Database 

		         Area: 0.0.0.1【查询的 1 类 LSA 所属区域】
		 Link State Database 
  Type      : Router
  Ls id     : 2.2.2.2
  Adv rtr   : 2.2.2.2  
  Ls age    : 455 	【新旧 LSA 判断依据 3】
  Len       : 36 
  Options   :  ASBR
  seq#      : 80000007 【新旧 LSA 判断依据 1】
  chksum    : 0x4ca7   【新旧 LSA 判断依据 2】
  Link count: 1
   * Link ID: 10.1.23.3    
     Data   : 10.1.23.2    
     Link Type: TransNet     
     Metric : 1

详细介绍 1~7 类 LSA 的内部信息

了解 LSA 的产生,什么情况下产生 LSA,产生什么样的 LSA。

查看并了解其 LSA 内部信息所表示的含义。

1 类 Router

产生:运行了 OSPF 的设备并配置活动接口使用之后,必然会产生 1 条 1 类 LSA 描述该直连链路信息。

一类 LSA 头部信息

shell 复制代码
<AR4>display ospf lsdb router 4.4.4.4

  Type      : Router	【LSA 的类型】
  Ls id     : 4.4.4.4	【该 LSA 由谁产生?因为 1 类描述自己的直连接口信息,当然是自己】
  Adv rtr   : 4.4.4.4	【谁通告的?1 类 LSA 由自己产生,当然是自己】
  Ls age    : 1521		【该 LSA 活了多久?1521 秒】
  Len       : 36		【LSA 的大小,36Byte】
  Options   :  ABR  E	【ABR 身份,E 表示可接收 OSPF 外部 LSA 的能力】
  seq#      : 80000007 
  chksum    : 0xab1e
  Link count: 1			【直连链路信息数量】
   * Link ID: 10.1.34.4
     Data   : 10.1.34.4
     Link Type: TransNet【子类型】     
     Metric : 1

一类 LSA 子类型与内部信息

不同的子类型,其 LinkID、Data 所表示的含义也不同。

  • Link ID: 10.1.34.4【DR 地址】
    Data : 10.1.34.4【宣告该 LSA 的接口】
    Link Type: TransNet【子类型】
    Metric : 1
Link Type Link ID Data
P2P(P2P 接口网络中产生) 邻居的 RID 宣告该 LSA 的路由器接口的 IP 地址
StubNet(广播网络中产生) 路由器接口的网络 IP 地址 该 Stub 网络的网络掩码
TransNet(广播网络中产生) DR 的接口地址 宣告该 LSA 的路由器接口的 IP 地址
Virtual(虚链路路由器产生) 邻居的 RID 宣告该 LSA 的路由器接口的 IP 地址

P2P、TransNet、virtual 三类都是一类 LSA 用于描述拓扑信息,StubNet 则用于描述路由信息。

疑惑:为什么都是通过 network 宣告网络,有时候产生的是 1 类的 Transnet、有时候产生的是 StubNet 呢?

宣告的网络未进行建立邻居时,宣告的网络子类型为 Stubnet;当宣告的网络建立邻居之后,子类型就会变为 Transnet。

为了避免区域间的环路,OSPF 规定不允许直接在两个非骨干区域之间传递路由信息。

但是非骨干区域非骨干区域 之间还是可以通过 hello 报文建立邻居关系,并学习到对方自己产生的路由

即:非骨干区域之间不能传递其它区域的路由,但是可以传递自己产生的路由。

非骨干区域之间建立邻居后可传递自己的路由信息给对方,但无法把从其它区域(包括骨干区域)学习到的路由,传递给其它非骨干区域。

为了实现以上区域 2 与区域 5 之间的路由传递,让区域 5 也能学习到其它区域的路由信息,就需要建立 Vlink 虚链路。

Vlink 实现非骨干区域之间能够交互路由信息的逻辑是什么?

因为非骨干区域与非骨干区域无法交互路由信息,只有非骨干区域与骨干区域之间可以。

基于上面的环境,AR4 与 AR5 建立 Vlink(区域 0 与区域 2 的两台边界路由器),实现逻辑上将骨干区域 0 扩展到 AR5 上。

建立完成之后就会和下图一样的:由于 AR5 逻辑上属于骨干区域,故区域 5 的 AR10 就会与 AR5 交互路由了。

2、如何配置 Vlink?

首先观察环境,因为区域 5 与区域 0 之间相隔了区域 2,需要做的就是将区域 2 打通,实现区域 5 与区域 0 的通信。

AR4 是区域 0 与区域 2 的边界、AR5 是区域 2 与区域 5 的边界,在这两台上配置 Vlink 是最优的。

配置 Vlink 的时候通常都是指定对端的 router-id。

为什么虚链路不直接指定对端 IP 地址,而是指定对端的 router-id 呢?

  • 从实用性上看,如果单独指定其接口地址,那么这个时候去往目标时并不一定是最优的。

    而使用 router-id,OSPF 将会基于 OSPF 路由进行最优路由的转发。

  • 从可靠性上看,如果单独指定其接口地址,如果该接口断开了,那么该虚链路就断开了。

    使用 router-id,只要还有路由能到 router-id 该虚链路就不会断开

  • Vlink 虚链路只能在同区域建立连接,无法跨域建立虚链路。

    • 因为 Vlink 计算到达目标路径需要依靠 1、2 类 LSA,而 1、2 类 LSA 无法跨区域传递,导致 Vlink 无法跨区域寻邻居。

以实验结果理解 1 类 LSA

1、通过在 AR2、AR3 上查看 lsdb 可以知道 1 类的 LSA 只会在区域内传递 (因为除了在区域 1 中可以看到 1 类的 2.2.2.2,其它区域都不会有 1 类的 2.2.2.2)

2、1 类 2.2.2.2 中只有一条信息,也就是 transnet 子类型的 LSA,表示的是 AR2 与 AR3 相连的拓扑信息 (10.1.23.0)

3、其它区域想要学习到该 1 类的 LSA,只能通过 3 类的 LSA 学习。(如:AR4 需要学习区域 1 中的 1 类 2.2.2.2 的路由信息,只能通过 AR3 产生的 3 类学习到)

4、为什么 AR4 收到的 3 类是 10.1.23.0 呢为什么不是 2.2.2.2?因为 3 类是统一汇总通告 1 类 2 类的拓扑信息、路由信息。故只会将 1 类 2.2.2.2 中的拓扑信息(10.1.23.0)通告出去。

2 类 Network

产生:在广播类型的接口运行 OSPF 时,由选出的 DR 设备产生。

二类 LSA 头部信息与内部信息

shell 复制代码
<AR4>display ospf lsdb network 10.1.34.4

  Type      : Network
  Ls id     : 10.1.34.4【DR 的地址】
  Adv rtr   : 4.4.4.4【该 LSA 由谁宣告的?】
  Ls age    : 1297
  Len       : 32 
  Options   :  E  
  seq#      : 80000001 
  chksum    : 0xf903
  Net mask  : 255.255.255.0【与 LS id 结合,表示 DR 所在的广播网络】
  Priority  : Low
     Attached Router    4.4.4.4【表示与 DR 相连的设备】
     Attached Router    3.3.3.3【表示与 DR 相连的设备】

通过上面的报文可以绘制一个逻辑拓扑

配合 1 类的 LSA,我们就可以知道 4.4.4.4 与 3.3.3.3 互联接口为这个链路中的 DR。以及这个链路连接有哪些设备。

3 类 Sum-Network

产生:由 ABR 边界路由器产生

三类 LSA 头部信息与内部信息

shell 复制代码
<AR4>dis ospf lsdb summary 10.1.23.0

	 OSPF Process 1 with Router ID 4.4.4.4
		         Area: 0.0.0.0
		 Link State Database 

  Type      : Sum-Net
  Ls id     : 10.1.23.0【某条 1 类或 2 类的路由信息】
  Adv rtr   : 3.3.3.3 【下一跳找谁】
  Ls age    : 1557 
  Len       : 28 
  Options   :  E  
  seq#      : 80000002 
  chksum    : 0x8ca0
  Net mask  : 255.255.255.0【Lsid 的掩码,与 Lsid 结合就知道了路由信息】
  Tos 0  metric: 1
  Priority  : Low

4 类 ASBR-Summary

产生:由 ABR 边界路由器产生

4 类 LSA 主要的作用就是通过头部的 Ls id 与 Adv rtr 了解如何去往 ASBR。

四类头部信息

shell 复制代码
<AR4>display ospf lsdb asbr 3.3.3.3

  Type      : Sum-Asbr
  Ls id     : 3.3.3.3【ASBR 的 router-id】
  Adv rtr   : 4.4.4.4【去往 ASBR 找我】
  Ls age    : 1716
  Len       : 28 
  Options   :  E  
  seq#      : 80000002 
  chksum    : 0x62db
  Tos 0  metric: 1
123456789101112

5 类 / 7 类 AS-External

产生:由 ASBR 区域自治边界路由器产生

5 类与 7 类都是一样的 LSA,只不过 Type 类型不一样。

五类头部信息与内部信息

shell 复制代码
<AR4>display ospf lsdb ase 192.168.1.0

	 OSPF Process 1 with Router ID 4.4.4.4
		 Link State Database

  Type      : External
  Ls id     : 192.168.1.0【5 类外部路由】
  Adv rtr   : 3.3.3.3 【去往该路由的下一跳】
  Ls age    : 95 
  Len       : 36 
  Options   :  E  
  seq#      : 80000003 
  chksum    : 0xa68d
  Net mask  : 255.255.255.0【路由掩码】
  TOS 0  Metric: 1
  E type    : 2【外部路由开销的计算类型】
  Forwarding Address : 10.1.23.2 【转发地址】
  Tag       : 1 【Tag 标签】
  Priority  : Low

五类 LSA---E Type 字段

External Type 外部路由类型

OSPF 外部路由默认优先级为 150

Type 1

可学习到外部的开销为:ASBR 到外部路由部开销+本路由器到 ASBR 之间的路由部开销= 该外部路由的总开销

通过 LSA 可以知道访问 192.168.1.0 就需要经过 3.3.3.3、2.2.2.2 最终到 192.168.1.0,故开销为 3。

Type 2

5 类 LSA 的外部路由开销为:(ASBR 到外部路由的总开销

因为 5 类 LSA 默认 Type=2,故 5 类路由开销只会计算 ASBR 到外部路由的开销,中间经过设备多少都不会增加其 5 类开销。

啥时候用 Type1、啥时候用 Type2 ?

当网络中有多个 ASBR 都引入同一条外部路由时,如果用默认的 Type2 方式引入,则去往该外部路由时必然是负载分担的。

如下图,AR14 学习到的外部路由开销都是 1,故 AR14 会认为该路由负载分担流量。

但很明显,走 AR13 是次优的路径,故在多个 ASBR 引入同一条外部路由的时候需要考虑使用 Type1 类型。

五类 LSA---Forwarding 字段

转发地址作用:解决广播型网络中 OSPF 路由次优路径问题

引入外部路由时,连接其他协议的接口++运行了 OSPF 协议并且网络类型为广播类型,则 FA 地址为重发布之前路由的下一跳地址++,若网络类型为 P2P,则不会产生 FA 地址。

转发地址不置位(0.0.0.0)

转发地址置位条件:

  1. ASBR 与外部路由交互的接口,启用了 OSPF 协议(即接口运行了 OSPF 协议,还运行了其它外部路由协议)

  2. 链接外部的接口不能配置 Slient-interface(类似边缘端口,禁止设备向该接口发送 OSPF 报文)

  3. 只有广播型网络的接口才会置位,P2P 只有单一的一条路无法置位。

环境介绍:

AR5 的 G0/0/0 接口与 AR7 建立 OSPF、并且 G0/0/0 还与 AR6 建立 ISIS

路由引入操作:AR5 将 ISIS 与 OSPF 进行双向的路由引入,即 OSPF 引入 ISIS、ISIS 引入 OSPF 中。

这时 AR7 就能通过 AR5 学习到 AR6 的 ISIS 相关路由,但是访问 AR6 的网络时会优先通过 AR5 进行中转,在该环境中明显是不合适的,因为 AR7 明显可以直接与 AR6 进行通信。

为此,OSPF 的 FA 地址生效了。该环境满足了 FA 地址置位的要求。

AR5 会将引入的 AR6 路由相关 SLA 的 FA 地址设置为去往 AR6 网络的下一跳接口地址(192.168.1.2),这样 AR7 需要访问 AR6 的时候就直接访问 AR6 即可。

五类 LSA---Tag 字段

用于区分路由,将特定的路由打上 tag 之后,可以通过路由策略选择性的接收和拒绝指定的路由。ISIS 与路由策略相关知识在后面几章介绍到

双点双向引入时、环路就是通过 tag 解决的。

汇总 1~7 类相关查看命令

查看所有类型 LSA 的汇总信息,LSDB 数据库

shell 复制代码
<AR4>display ospf lsdb 

查看指定类型的 LSA

1 类

bash 复制代码
<AR4>display ospf lsdb router

2 类

bash 复制代码
<AR4>display ospf lsdb network

3 类

bash 复制代码
<AR4>display ospf lsdb summary

4 类

bash 复制代码
<AR4>display ospf lsdb asbr

5 类

bash 复制代码
<AR4>display ospf lsdb ase

7 类

bash 复制代码
<AR4>display ospf lsdb nssa

查看指定类型的 LSA 详细信息,如查看 1 类 1.1.1.1 的详细 LSA 信息

bash 复制代码
<AR4>display ospf lsdb router 1.1.1.1

查看 ospf 网络中哪些是 ABR、ASBR

bash 复制代码
<AR3>dis ospf abr-asbr 

	 OSPF Process 1 with Router ID 3.3.3.3
		 Routing Table to ABR and ASBR 

 RtType      Destination       Area       Cost  Nexthop         Type
 Intra-area  4.4.4.4           0.0.0.0    1     10.1.34.4       ABR 
 Intra-area  5.5.5.5           0.0.0.0    2     10.1.34.4       ABR 
 Intra-area  2.2.2.2           0.0.0.1    1     10.1.23.2       ASBR 

via:

相关推荐
学java的小菜鸟啊13 分钟前
第五章 网络编程 TCP/UDP/Socket
java·开发语言·网络·数据结构·网络协议·tcp/ip·udp
新手嵌入式学习41 分钟前
网络协议头分析
网络·网络协议
运维Z叔2 小时前
云安全 | AWS S3存储桶安全设计缺陷分析
android·网络·网络协议·tcp/ip·安全·云计算·aws
weixin_456732592 小时前
网络-内核是如何与用户进程交互
网络·交互
爱吃涮毛肚的肥肥(暂时吃不了版)3 小时前
计算机网络34——Windows内存管理
网络·计算机网络·udp
码哝小鱼4 小时前
firewalld封禁IP或IP段
linux·网络
sec0nd_4 小时前
1网络安全的基本概念
网络·安全·web安全
青柠视频云5 小时前
青柠视频云——视频丢包(卡顿、花屏、绿屏)排查
服务器·网络·音视频
网安CILLE5 小时前
2024年某大厂HW蓝队面试题分享
网络·安全·web安全
沐风ya5 小时前
Reactor介绍,如何从简易版本的epoll修改成Reactor模型(demo版本代码+详细介绍)
网络