OSPF 数据库: 【查看OSPF数据库:display ospf lsdb 】
-里面包含的全都是链路状态信息,即 link state advertisment(LSA) - 链路状态通告
-LSA分为自己产生的,以及邻居设备发送过来的;
LSA结构:
Type ,表示LSA的类型;
LinkState ID ,表示LSA的名字;
AdvRouter ,表示LSA是由谁产生的;通常该参数是“产生该LSA的那个OSPF路由器的 router-id "
Age ,表示LSA的存活时间,最大存活时间是 3600s
Sequence ,表示LSA的序列号,用于说明 LSA 的新旧程度
1类LSA
-作用:
每个运行OSPF协议的路由器,都会在自己所连接的每个区域,都产生一个 1 类 LSA ;
相当于 OSPF 路由器在网络中的“自我介绍”,其中包含了该路由器的每个链路/接口
的IP地址信息,以及该接口上建立的邻居的信息,以及自己去往该邻居的距离等信息;
Type: router
LinkState ID : 每个路由器的 router-id
AdvRouter : 每个OSPF路由器的 router-id
特点:
该类型的LSA,每个OSPF路由器都会在每个互联的区域产生1个;
该类型的LSA,只能在区域内部传输;
该类型的LSA,里面包含着本区域内部的路由;
2类LSA
-作用:
DR产生该类型的LSA,用于表示DR的管理范围;
Type: network
LinkState ID : DR的接口IP地址
AdvRouter : DR的 router-id
特点:
该类型的LSA,只有DR可以产生;
该类型的LSA,只能在区域内部传输;
该类型的LSA,里面包含着与DR建立邻居关系的路由器的router-id;
3类LSA
-作用:
在不同的OSPF 区域之间,传递路由信息;
Type: Sum-Net
LinkState ID : 不同区域之间的路由的网段
AdvRouter : ABR的 router-id
特点:
该类型的LSA,只有ABR可以产生
该类型的LSA,只能在区域内部传输;
该类型的LSA,里面包含的是不同区域之间的路由的掩码;
该类型的LSA,在传输过程中,每经过1个ABR,这个LSA的 advRouter 都会变化一次;
4类LSA
-作用:
在不同的区域之间传递 ASBR 的 router-id 信息;
为的就是和5类LSA一起,实现外部路由的计算;
Type: Sum-Asbr
LinkState ID : ASBR 的 router-id
AdvRouter : 与ASBR在同一个区域的 ABR 的 router-id
特点:
该类型的LSA,只有ABR可以产生
该类型的LSA,只能在区域内部传输;
该类型的LSA,在传输过程中,每经过1个ABR,这个LSA的 advRouter 都会变化一次;
5类LSA
-作用:
在 OSPF 网络中,表示外部路由
Type: External
LinkState ID : 外部路由的网段
AdvRouter : ASBR的 router-id
特点:
该类型的LSA,只有ASBR可以产生
该类型的LSA,可以传输到整个 OSPF 网络的任何地方;
该类型的LSA,里面包含的是 外部路由的掩码;
该类型的LSA,在传输过程中,没有任何变化;
7类LSA
-作用:
在 OSPF 网络的特殊区域中,表示外部路由;
Type: NSSA
LinkState ID : 外部路由的网段
AdvRouter : ASBR的 router-id
特点:
该类型的LSA,只有ASBR可以产生
该类型的LSA,只能在 NSSA 区域中传输;
该类型的LSA,里面包含的是 外部路由的掩码;
该类型的LSA,在传输过程中,没有任何变化;
#ABR:area border router , 区域 边界 路由器;
-同时连接着骨干区域和非骨干区域的路由器;
#ASBR:autonomous system border router , 自制系统边界路由
-拥有产生OSPF外部路由的能力的那些路由器;
[凡是在设备上输入了命令"import-route"之后,这个设备都可以称之为 ASBR]
OSPF 区域类型:
-骨干区域
-非骨干区域
*普通区域
*特殊区域 (不要5类LSA的区域)
特殊区域的产生背景:
我们通过 import-route 的方式引入一些外部路由之后,这些外部路由是通过5类LSA
传输的,但是5类LSA的传输特点是:可以传输到整个 OSPF 网络的任何地方。
所以, 一旦外部路由不稳定(频繁的Up或者down),就会导致表示该外部路由的 5 类 LSA 不稳定,
而这种不稳定的,就会传遍整个 OSPF 网络;
所以,为了降低这种“不稳定的外部链路”对某些“重要区域”的影响,我们可以将这些“重要区域”
配置“特殊区域” , 即“让这些区域不接收5类LSA即可”。
特殊区域的类型:
-stub (末节/末梢区域)
*作用:
可以保护一个区域不收到外部链路/路由的影响
*要1/2/3类LSA
*不要4/5类LSA
*该区域的ABR,会自动的产生1个3类LSA表示的默认路由;
*配置:
@在 stub 区域的所有路由器上配置;
@命令如下:
ospf 1
area 12
stub // 将区域12配置为 stub ;
-Totally Stub (完全末节区域)
*作用:
可以保护一个区域不受到外部链路/路由 和 其他区域的链路的 影响;
*要1/2类LSA [以及1个特殊的表示默认路由的3类LSA]
*不要3/4/5类LSA
*该区域的ABR,会自动的产生1个3类LSA表示的默认路由;
*配置:
@在 stub 区域的 ABR 上配置;
@命令如下:
ospf 1
area 12
stub no-summary // 不向 stub 区域 12 发送 3类 LSA ;
-NSSA (no so stub area)
*作用:
可以保护一个区域不受到5类LSA的影响,
同时,
自己本区域还能引入外部路由,此时在NSSA区域中表示外部路由,使用的是7类LSA
*要1/2/3/7类LSA
*不要4/5类LSA
*该区域的ABR,会自动的产生1个表示的默认路由的 7类 LSA
*配置:
@在 nssa 区域的所有路由器上配置;
@命令如下:
ospf 1
area 56
nssa // 将区域56配置为 nssa ;
-Totally NSSA (完全NSSA区域 )
*作用:
可以保护一个区域不受到外部链路/路由 和 其他区域的链路的 影响;
同时,
自己本区域还可以引入外部路由,通过7类LSA表示;
*要1/2/7 类LSA
*不要3/4/5类LSA
*该区域的ABR,会自动的产生1个3类LSA表示的默认路由;以及1个7类LSA表示的默认路由;
*配置:
@在 NSSA 区域的 ABR 上配置;
@命令如下:
ospf 1
area 56
nssa no-summary // 不向 nssa 区域 56 发送 3类 LSA ;
OSPF 宣告路由方式:
1.network
* 该命令后面只能跟“直连类型”的路由;
2.import-route [路由导入/路由重分发/路由重发布]
* 该命令后面可以跟“任何类型”的路由;
OSPF 路由类型:
1.内部路由(OSPF):通过 network 命令宣告的路由;
&区域内部,通过1类LSA表示
&区域之间,通过3类LSA表示
2.外部路由:通过 import-route 命令宣告的路由;
&5类LSA表示,路由表中表示的是 O_ASE
&7类LSA表示,路由表中表示的是 O_NSSA
路由的优先级:
1类LSA > 3类LSA > 5类LSA > 7类LSA