OSPF多区域的配置
一、为什么会有多区域?
当网络结构发生变化时,OSPF路由器会重新计算路由信息,随着路径不断地增加,路由表会越来越大。这就使得每一次路径的改变都使路由器不得不花大量的时间和资源去重新计算路由表,路由器变得越来越低效。此时OSPF多区域不仅可以改善网络的可扩展性,还能够使得其快速收敛。
在OSPF中Area分骨干区域 Area 0和非骨干区域。路由类型分:内部路由、ABR、ASBR。
- 内部路由它只和同一Area内部的非ABR、ASBR路由相连,工作在Area内部。
- ABR路由负责连接两个Area的通信,工作在Area和Area之间。
- ASBR路由连接其他的外部路由,工作在Area和其他AS之间。
由不同的路由类型会组成不同类型的区域,有标准区域、末梢区域(stub)、完全末梢区域(Totally stubby)、非纯末梢区域(NSSA)。
二、链路状态数据库
链路状态数据库的组成
- 每一个路由器都创建了由每个接口对应的相邻节点和接口速度组成的数据库
- 链路状态数据库中每个条目称为LSA也就是链路状态通告,常见的LSA有六种类型
链路状态通告的类型:
类型代码 | 描述 | 用途 |
---|---|---|
Type1 | 路由器LSA | 由区域内的路由器发出的,描述了路由器的的链路状态和花费,传递到整个区域内 |
Type2 | 网络LSA | 由区域内的DR发出的,描述了区域内变更信息,传递到整个区域内 |
Type3 | 网络汇总LSA | ABR发出的,其他区域的汇总链路通告,描述了其他区域内某一网段的路由,区域间传递 |
Type4 | ASBR汇总LSA | ABR出的,用于通告ASBR信息,确定ASBR的位置,不会出现在ASBR所属区域之内 |
Type5 | AS外部LSA | ASBR发出的,用于通告外部路由,告诉相同AS的路由器通往外部AS的路径,在整个AS中进行泛洪 |
Type7 | NSSA外部 | NSSA区域内的ASBR发出的,用于通告本区域连接的外部路由,与Type 5类似,仅在非纯未梢区域内进行泛洪,传递时会被ABR转换为LSA5 |
路由条目
在路由器计算最优路径的过程中,只会把最有的路由条目添加到路由表当中去。
其选择路由条目的依据是:管理距离和度量值
在不同路由协议或路由种类的不同优先级:
路由种类或协议 | 优先级 |
---|---|
Direct | 0 |
OSPF | 10 |
IS-IS | 15 |
Static | 60 |
RIP | 100 |
OSPF ASE | 150 |
BGP | 255 |
三、 末梢区域和完全末梢区域
末梢区域和完全末梢区域作为两个常见的区域类型,其满足以下四个条件就可以:
- 只有一个默认路由作为其区域的出口
- 区域不能作为虚链路的穿越区域
- Stub区域里无自治系统边界路由器ASBR
- 不是骨干区域Area 0
末梢区域不会收到LSA4、5、7通告
完全末梢区域除一条LSA3的一条默认路由通告外,LSA3、4、7通告都不会收到
末梢区域和完全末梢区域的作用:
主要目的是减少区域内LSA条目和路由条目,同时也可以减少对设备cpu和内存的占用。
在末梢区域和完全末梢区域中ABR会自动生成一条默认路由发送到末梢区域或者完全末梢区域中去。
末梢区域配置
ABR配置:
[R4]ospf 1
[R4-ospf-1]area 2
[R4-ospf-1-area-0.0.0.2]network x.x.x.x x.x.x.x //先宣告直连网段,再配
[R4-ospf-1-area-0.0.0.2]stub
区域内路由配置
[R5]ospf 1
[R5-ospf-11 area 2R4-ospf-1-area-0.0.0.2]network x.x.x.x x.x.x.x //先宣告直连网段,再配
[R5-ospf-1-area-0.0.0.21]stub
[R5] display ip routing-table //此时末梢区域中的路由会显示一条默认路由到外部区域