OSPF多区域原理与配置
生成OSPF多区域的原因
- 改善网络的可扩展性
- 快速收敛
OSPF的三种通信量
- 域内通信量
- 域间通信量
- 外部通信量
OSPF的路由器类型
- 区域边界路由器/ABR:用来连接区域0和其他区域
- 内部路由器(只属于一个区域的路由器):只保存本区域内的链路状态信息
- 自治系统边界路由器/ASBR:用来连接OSPF的AS与外部其它的路由
OSPF的区域类型
- 骨干区域Area 0
- 非骨干区域 - 根据能够学习的路由种类来区分
- 标准区域
- 末梢区域(stub)
- 完全末梢区域
- 非纯末梢区域
标准区域内
- ASBR:负责将外部路由注入到OSPF的网络中
- ABR:实现链路汇总和交换
链路状态数据库的组成
- 每个路由器都创建了由每个接口、对应的相邻节点和接口速度组成的数据库
- 链路状态数据库中每个条目称之为LSA(链路状态通告),常见有六种类型
链路状态通告类型
类型代码 | 描述 | 用途 |
---|---|---|
Type 1 | 路由器 LSA | 由区域内的路由器发出的,描述了路由器的链路状态和花费,传送到整个区域内 |
Type 2 | 网络 LSA | 由区域内的DR发出的,描述了区域内变更信息,传递到整个区域内 |
Type 3 | 网络汇总 LSA | ABR发出的,其他区域的汇总链路报告,描述了其他区域内某一网段网段路由,区域间传递 |
Type 4 | ASBR汇总 LSA | ABR发出的,用于通告ASBR信息,确定ASBR位置,不会出现在ASBR所属区域内 |
Type 5 | AS外部LSA | ASBR发出的,用于通告外部路由,告诉相同AS的路由器通往外部AS的路径,在整个AS中进行泛洪 |
Type 7 | NSSA外部 LSA | NSSA区域内的ASBR发出的,用于通告本区域连接的外部路由,与Type 5类似,仅在非纯末梢区域内进行泛洪,传递时会被ABR转换为LSA5 |
末梢区域和完全末梢区域
-
满足以下条件的区域
- 只有一个默认路由作为其区域的出口
- 区域不能作为虚链路的穿越区域
- Stub区域里无自治系统边界路由器ASBR
- 不是骨干区域Area 0
-
末梢区域
- 没有LSA4/5/7通告
-
完全末梢区域
- 除了一条LSA3的默认路由通告外,没有LSA3、4、5、7通告
作用:其主要目的是减少区域内的LSA条目以及路由条目,减少对设备CPU和内存的占用;末梢区域和完全末梢区域中ABR会自动申生成一条默认路由发布到末梢区域或完全末梢区域中。
路由重分发
-
理解路由重分发
- 一个单一IP路由协议是管理网络中IP路由的首选方案
- Cisco IOS能执行多个路由协议,每个路由协议和该路由协议所服务的网络属于同一个自治系统
- Cisco IOS使用路由重分发特性以交换不同协议创建的路由信息
-
路由重分发的考虑
- 度量值
- 管理距离
-
重分发到OSPF域中路由的路径类型
- 类型1的外部路由(Type 1 extrenal path,E1)
- 类型2的外部路由(Type 2 external path,E2)
-
路由器A有两条到达外部目标的网络10.1.2.0的路径
- E1类型
- 路径A-B-D的代价是25(20+5)
- 路径A-C-D代价为48(18+30)
- E2类型
- 路径A-B-D的代价是20
- 路径A-C-D的代价为18
- E1类型
NSSA区域
-
NSSA区域是OSPF RFC的补遗
- 定义了特殊的LSA类型7
- 提供类似stub area和totally stubby area的优点
- 可以包含ASBR
-
OSPF链路状态通告
LSA7 (NSSA External LSA, NSSA外部LSA)-
每一种区域中允许泛洪的LSA
区域类型 1&2 3 4&5 7 骨干区域(区域0) 允许 允许 允许 不允许 非骨干区域,末梢区域 允许 允许 允许 不允许 末梢区域 允许 允许 不允许 不允许 完全末梢区域 允许 不允许 不允许 不允许 NSSA 允许 允许 不允许 允许
-
-
需求分析
- 公司网络中运行了很多种路由协议
- 配置重分发实现公司内部网络互通
- 总公司R1重分发默认路由实现全网访问Internet
相关配置
###修改OSPF路由接口的cosT值,缺省值为1
[R1] int g0/0/0
[R1-GigabitEtherneto/0/0] ospf cost 99
OSPF路由重分发配置命令
[R1]rip 1 ###配置rip
[R1-rip-1]version 2
[ R1-rip-1] undo summary
[Ri-rip-1] network 11.0.0.0
[R1-rip-1] import-route ospf i cost 3###把ospf协议注入到rip进行路由重分发,路径类型缺省为路径类型2(外部开销),成本开销为3(对于rip的度量值是跳数),rip中重分发指定cost的值
[R1-rip-1] ospf l
[ R1-ospf-1 ] import-route rip 1 type 1 cost 1 ###把外部rip协议注入到osPF进行路由重分发,使用路径类型1(内部开销+外部开销),成本开销为1(COST=100M/Bw)
[ r1-ospf-1] default-route-advertise always ###ospf重分发默认路由
[ r2-ospf-1]import-route direct ###ospf重分发直连路由
[ r2-ospf-1 ]import-route static ###ospf重分发静态路由
区域间路由汇总配置
ABR配置
[R4]ospf 1
[R4-ospf-1]area 2
[R4-ospf-1] abr-summary 192.168.0.0 255.255.248.0
外部路由汇总配置
ASBRA配置
[R5] ospf l
[R5-ospf-l] area 2
[R5-ospf-1]asbr-summary 1o.o.o.0 255.248.0.0
虚链路
非骨干区域必须和骨干区域直接相连,若不与骨干区域直接相连,则需要在穿越一个非骨干区域的两台ABR之间配置虚链路
虚拟链路的建立,是需要依靠底层的真实链路所在的区域来传输OSPF报文的(hello等),所以如果底层的穿越传输区域不稳定的话,则导致上层的虚链路不稳定,影响整个网络的骨干区域的稳定性。所以,一般不建议用这种方式。如果不得不使用,那么也仅仅是临时的解决方案。
在被穿越的非骨干区域的两端ABR配置虚链路
[R2] ospf 1
[R2-ospf-1] area 1
[R2-ospf-l-area-o.o.0.1] vlink-peer 1.1.1.1 ###互相指定被穿越区域两端ABR的路由ID
[R1] ospf l
[ R1-ospf-1] area 1
[R1-ospf-1-area-0.o.0.1] vlink-peer 2.2.2.2
[R1] display ospf vlink ####查看本地上通过虚链路建立的OSPF邻居关系
完全非纯未悄区域配置命令
ABR和区域内路由(除ASBR)配置
[R4] ospf 1
[R4-ospf-1] area i
[R4-ospf-1] network x.x-x.x x-x-x-x ####先宣告直连K段,再配
[R4-ospf-1-area-o.o.0.1] nssa no-summary ###ABR配置
[R4-ospf-1-area-0.o.0. 1]nssa ###域内路由配置
总结
OSPF基本可以做到基本无环路,而且是公有协议,任何一个厂家都可以使用,结合合理的网络设计可以达到很好的效果,收敛的速度快。