首页 > 技术文章 > OSPF 协议之5类LSA

Ant-Hanks 2020-07-05 15:56 原文

5类LSA介绍


AS-External-LSA中LSA头部信息设置如下:
Link State ID 被设置为目的网段地址。
Advertising Router 被设置为ASBR的Router ID。
其它字段设置如下:
Net mask 被设置为目的网段的网络掩码。
Metric 值可以在引入外部路由的时候指定,默认值为1(种子度量值)。
Forwarding Address :FA地址,目的是为了避免选路的次优路径;
外部路由信息可以携带一个Tag标签,用于传递该路由的附加信息,通常用于路由策略,默认值为1。

外部路由类型:

分两种类型,类型1和类型2
类型1:计算外部路由度量值,累加到达ASBR的链路COST值,OE1;
类型2:计算外部路由度量值,不累加到达ASBR的链路COST值,OE2;

5类LSA解决次优路径问题:


OSPF通过设置Forwarding Address来解决上面的次优路径问题;

在5类LSA中什么情况下会填充FA的地址?

1、引入外部路由下一跳的出接口被宣告进OSPF;
2、出接口的网络类型不能是点到的、点到多点;
3、出接口不是一个OSPF的silent接口(配置为silent的接口不发送和接受OSPF报文);
4、如果外部路由没有下一跳不会填充FA地址;

FA地址如何填充?

填充为引入外部路由下一跳的地址

计算FA地址的条件?

到达FA地址必须是OSPF域内或者域间路由可达;
注:
1、如果5类LSA中FA地址被填充,计算外部路由只计算到达FA的距离,并且需要保证本地路由表中存在到达FA的域内或者域间路由;
如果不存在路由条目,该5类LSA不能参与路由计算。
2、如果5类LSA中没有填充FA地址,计算外部路由只计算到达ASBR的距离。

外部路由选路

1、如果都是OE2的外部路由,首先比较外部度量值,外部度量值越小越优先;如果外部度量值一样,则比较到达ASBR或者FA的内部度量值,内部度量值越小越优先;如果内部度量值也一样,负载分担;
2、外部路由类型OE1优于OE2;
3、如果都是是OE1,度量值越小越优先,如果相等,负载分担;
4、如果OE2时,一个FA为0,一个有FA地址,比较到ASBR度量值和到FA度量值得大小,越小越优先,相等则负载分担;
注:如果存在多条前缀相同但是掩码长度不同的外部路由,需要通过通告子网的广播地址来区分不同的外部路由,原因是在LSA的头部中不携带子网掩码,如果前缀相同是无法区分路由条目的。
注:如果OSPF配置了多进程,优先级一样,优选度量值小的,度量值一样时,Cisco外部路由计算采用先入为主方式。哪个进程收到,就使用这条外部路由,后续其他进程引入的会被忽略,华为负载分担;
问题:10.1.1.0/24,10.1.1.0/26从分布到OSPF 如何区分5类LSA:
外部路由引入OSPF时,因为Link State ID如果被设置为目的网段地址,则无法区分上面的网段,华为解决:用子网的广播地址来区分不同5类LSA

10.1.1.0/24 10.1.1.0/26
Type : External
Ls id : 10.1.1.0
Adv rtr : 1.1.1.1
Ls age : 362
Len : 36
Options : E
seq# : 80000001
chksum : 0x4779
Net mask : 255.255.255.0
TOS 0 Metric: 1
E type : 2
Forwarding Address : 0.0.0.0
Tag : 1
Priority : Low
Type : External
Ls id : 10.1.1.63
Adv rtr : 1.1.1.1
Ls age : 362
Len : 36
Options : E
seq# : 80000001
chksum : 0x536d
Net mask : 255.255.255.192
TOS 0 Metric: 1
E type : 2
Forwarding Address : 0.0.0.0
Tag : 1
Priority : Low

路由协议优选级

路由协议缺省时的优先级

路由协议的类型 路由协议的外部优先级 路由协议的内部优先级
Direct 0 0
OSPF 10 10
IS-IS 15 IS-IS level1 15
IS-IS level2 18
Static 60 60
RIP 100 100
OSPF ASE 150 150
OSPF NSSA 150 150
IBGP 255 255
EBGP 255 20

外部路由汇总(在ASBR上配置)

配置举例:

ospf 1
asbr-summary 192.168.0.0 255.255.252.0 ##在ASBR路由器 OSPF进程下配置外部路由汇总
import-route rip 1
area 0.0.0.0
network 12.1.1.0 0.0.0.255

外部路由过滤:

1、重分布的同时使用filter-policy 实现外部路由过滤
acl number 2000
rule 1 deny source 2.2.2.2 0
rule 2 permit
ospf 1
asbr-summary 192.168.0.0 255.255.252.0
filter-policy 2000 export
import-route rip 1
area 0.0.0.0
network 12.1.1.0 0.0.0.255

2、重分布的同时调用route-policy实现外部路由过滤
acl number 2000
rule 1 deny source 2.2.2.2 0
rule 2 permit
route-policy HW permit node 10
if-match acl 2000
ospf 1
asbr-summary 192.168.0.0 255.255.252.0
import-route rip 1 route-policy HW
area 0.0.0.0
network 12.1.1.0 0.0.0.255

3、在ASBR上配置汇总不通告
asbr-summary 2.2.2.2 255.255.255.255 not-advertise

4、在ASBR的接口下过滤5类LSA
interface g0/0/0
ip addr 12.1.1.2 255.255.255.0
ospf filter-lsa-out ase acl 2000

ospf通告默认路由:

ospf 不支持一条本地默认路由重分布进OSPF。通告的默认路由以5类LSA传递ospf各个区域
1、在进程下配置default-route-advertise,前提本地存在一条其他(不包含OSPF)路由协议学到的默认路由
ospf 1
asbr-summary 192.168.0.0 255.255.252.0
default-route-advertise
import-route rip 1 route-policy HW
area 0.0.0.0
network 12.1.1.0 0.0.0.255

2、在进程下配置default-route-advertise always ,不需要本地存在一条默认路由
ospf 1
asbr-summary 192.168.0.0 255.255.252.0
default-route-advertise always
import-route rip 1 route-policy HW
area 0.0.0.0
network 12.1.1.0 0.0.0.255

注:如果自己是默认路由通告者,同时也从同一个进程的其他OSPF邻居学到默认路由,那么这条接收的默认路由不选路。

  • 外部路由环路问题:
<R2>tracert 5.5.5.5
 traceroute to  5.5.5.5(5.5.5.5), max hops: 30 ,packet length: 40,press CTRL_C to break 
 1 12.1.1.1 20 ms  20 ms  10 ms 
 2 13.1.1.3 20 ms  20 ms  30 ms 
 3 34.1.1.4 20 ms  20 ms  20 ms 
 4 24.1.1.2 20 ms  20 ms  30 ms 
 5 12.1.1.1 30 ms  30 ms  20 ms 
 6 13.1.1.3 30 ms  30 ms  30 ms 
 7 34.1.1.4 30 ms  40 ms  40 ms 
 8 24.1.1.2 30 ms  30 ms  40 ms 
 9 12.1.1.1 50 ms  40 ms  50 ms 

推荐阅读