FA不存在 NSSA相关FA,nssa无关FA。 可以解释为去往引入路由的下一跳选择为域内域间的网段中最近的一个路由器IP。
不能理解请看下面:
1.1此图不存在NSSA区域,存在一个广播网段,此图来源锐捷PPT,这种情况下选择了没运行OSPF 的R3上的地址
1.2此图存在NSSA区域,不存在广播网段,此图来源锐捷PPT,这种清下下选择了,ASBR的IP地址。记得是选环回口,没有就选最先up的接口。有错请指正
1.3既有NSSA又有广播网段.如下图,当router7把 ip route-s 11.1.1.0 255.255.255.0 192.168.1.9 引入进OSPF。 那么这个FA地址是按照第一种情况填写AR的1.9呢?还是按照第二种情况填写NSSA区域ASBR R7上的地址呢?
解答:FA地址是192.168.1.9。
那么有个几个疑问,
问:
既然NSSA区域存在的情况下可以为ASBR的下一跳地址,不存在也可以为ASBR的下一跳地址,那么两种情况直接都填ASBR的下一跳地址不就行了?为什么搞这么复杂?
解答:本文第一句就说了,选择域内或者域间存在网段中的最近的路由器的IP。可以把1.2图中的ASBR链接外部路由器的接口network进ospf域内,那么FA就是这个接口的地址。
问:为什么一定是域内域间存在的?
解答:FA本身就是用于转发到达外部网络的地址,如果用一个外部路由来迭代查找FA并进行路由计算,那么很可能会导致路由问题。
如图(以下取自H3C网络大爬虫OSPF专题):
先不考虑所有红色的拓扑部分。正常情况下ASBR-1从RouterA获得了外部路由1.1.1.1/32并且将FA填写为2.2.2.2。在ABR处,实施了路由聚合策略,区域1的所有2网段路由被汇总了。RouterC是一个骨干区域内的路由器,它会获得3类汇总的LSA2.2.0.0/16和5类LSA1.1.1.1/32并且计算出正确的路由,下一跳都会指向ABR。这个时候跟第一个例子基本上是完全相同的。
当考虑到红色的拓扑部分时,就有了一些变化。在OSPF区域外部RouterA和RouterD之间运行IGP并且将2.2.2.0/24传递给RouterD,然后ASBR-2做路由引入,将2.2.2.0/24这样一个5类的LSA泛洪进骨干区域。这个时候骨干区域内的路由器RouterC的LSA会包括这样3条:
Ase: 1.1.1.1/32 FA=2.2.2.2
Ase: 2.2.2.0/24 Adv router=ASBR-2
Snet:2.2.0.0/16 Adv router=ABR
如果按照更精确的外部路由来迭代FA,那么路由计算的结果就是1.1.1.1/32的下一跳指向ASBR-2,接着ASBR-2会将数据报文送到RouterD,而RouterD可能没有到达1.1.1.1/32的路由,于是出现问题。
可见对于迭代FA的路由进行限制是必要的。
1.4.1这里提几个问题。
问:都知道OSPF引入外部路由时,由于5类LSA是在OSPF域内传播是不变的,收到这一条路由的路由器看到的下一跳是外部的,并不知道迭代到内部的哪一个路由器,所以ABR需要用4类LSA声明,去往ASBR走我这个ABR。那么NSSA区域引入外部路由,ABR会生成4类LSA么?为什么?
原文:http://donkey89.blog.51cto.com/970799/1748145