OSPF 虚链路场景下导致的次优路径问题

37 阅读1分钟

网络拓扑

image.png

第一步

为了将区域22 LSA传递给骨干区域。R4 与 R2 建立虚链接,跨越Area2区域

image.png

R4 与 R2 建立虚链接。R4变为ABR,将 Area22 的 10.22.0.1/32 LSA 以三类LSA形式同步到骨干区域 【骨干区域存在LSA】

同时R4也会在Area2以及Area3区域 同步 10.22.0.1/32 三类LSA 【R3,R2接收】

第二步

后续网络改造。 R3 连接Area21区域 也需要将 10.21.0.1/32 LSA 传递给骨干区域 也需要建立虚链接

image.png

更上述步骤相同,R3将 三类LSA10.21.0.1/32 向骨干区域Area0 Area1 Area3同步

次优出现

此时我们发现 无论是R3去往10.22.0.1 还是R4去往10.21.0.1 都会经过骨干区域 【OSPF防环机制】

此时的转发路径变为: image.png

但是根据我们的上帝视角,此时R3应该走34.1.1.0/24这条路径才是最优。 当然了R4去往10.21.0.1也应该下一跳34.1.1.1 image.png

但是查询路由表 现实给了个响亮的大逼兜 次优路径现实存在

[R4]dis ospf routing 

         OSPF Process 1 with Router ID 4.4.4.4
                  Routing Table

 Routing for network
 Destination        Cost     Type    NextHop         AdvRouter       Area
 24.1.1.0/24        1        Transit 0.0.0.0         2.2.2.2         0.0.0.2
 10.21.0.1/32       2        Inter   24.1.1.2        2.2.2.2         0.0.0.0
 12.1.1.0/24        2        Transit 24.1.1.2        2.2.2.2         0.0.0.0
 23.1.1.0/24        2        Inter   24.1.1.2        2.2.2.2         0.0.0.0
 10.22.0.1/32       0        Stub    0.0.0.0         4.4.4.4         0.0.0.22
 34.1.1.0/24        1        Transit 0.0.0.0         3.3.3.3         0.0.0.3

 Total nets: 6  
 Intra area: 4  Inter area: 2  ASE: 0  NSSA: 0 
[R4]

如何解决?

image.png

在 R3 与 R4 之间 建立虚链路 这样R3 R4会直接向对方传递 属于骨干区域的 3类LSA image.png

问题解决 image.png