目录
- 前言
- 一、OSPF多区域
- 1.1 OSPF的路由器类型
- 1.2 OSPF的区域类型
- 1.3 链路状态数据库的组成
- 1.4 末梢区域和完全末梢区域
- 1.5 NSSA 非纯末梢区域
- 二、OSPF多区实验
- 2.1 实验一
- 2.2 实验二
前言
一、OSPF多区域
生成OSPF多区域的原因:
- 改善网络的可扩展性
- 快速收敛
1.1 OSPF的路由器类型
区域边界路由器 / ABR:是连接两个区域的路由器。
如下图中的 R3、R4,将其他区域的链路状态信息汇总后发送到相邻区域。
自治系统边界路由器 / ASBR :是连接两个AS的路由器。
如下图中的 R2 ,ABSR负责将外部路由注入到OSPF的网络中。
内部路由器:只用于区域内部的路由器、并且不是用于连接区域或AS。
如下图中的 R1、R5、R6、R7、R8,只保存本区域内的链路状态信息。
1.2 OSPF的区域类型
骨干区域:Area 0
非骨干区域:Area 1 和 Area 2。
非骨干区域根据能够学习的路由种类能分为:
- 标准区域
- 末梢区域(stub)
- 完全末梢区域(totally stub)
- 非纯末梢区域(NSSA)
标准区域可理解为区域内同时存在 内部路由器、ABR 和 ASBR。
1.3 链路状态数据库的组成
- 每个路由器都创建了由每个接口、对应的相邻节点和接口速度组成的数据库。
- 链路状态数据库中每个条目称为 LSA(链路状态通告),常见的有六种链路状态通告(LSA)类型。
类型代码 | 描述 | 用途 |
Type 1 | 路由器 LSA | 由 内部路由器 发出的,描述了路由器的的链路状态和花费,传递到整个区域内。(只作用本区域内) |
Type 2 | 网络 LSA | 由区域内的 DR 发出的,通告本区域内的变更信息,只作用在本区域内。 |
Type 3 | 网络汇总 LSA | ABR 发出的,通告其他区域汇总链路状态信息,是在区域间进行传递。 |
Type 4 | ASBR 汇总 LSA | ABR 发出的,用于通告ASBR信息,确定ASBR的位置,在除了ASBR的其他区域中传递(不会出现在ASBR所属区域之内传递)。 |
Type 5 | AS 外部 LSA | ASBR 发出的,用于通告外部路由信息,告诉相同AS的路由器通往外部AS的路径,在整个AS中进行泛洪(在所有的OSPF区域中进行传递)。 |
Type 7 | NSSA 外部 LSA | NSSA区域内的 ASBR发出的,仅在非纯末梢区域内进行泛洪,用于通告外部路由信息(与 Type 5 类似)。传递时会被ABR转换为LSA5。 |
1.4 末梢区域和完全末梢区域
需要满足以下条件的区域:
- 只有一个默认路由作为其区域的出口
- 区域不能作为虚链路的穿越区域
- Stub区域里无自治系统边界路由器ASBR
- 不是骨干区域 Area 0
末梢区域:没有 LSA 4、5、7通告;
完全末梢区域:除一条 LSA 3 的默认路由通告外,没有LSA 3、4、5、7通告;
末梢区域和完全末梢区域的区别:
- 末梢区域能学习到OSPF其他区域的所有路由,而AS外部路由是通过默认路由转发出去的;
- 完全末梢区域除了APR 路由外,其他全部网络都是通过默认路由转发出去的
末梢区域 和 完全末梢区域的作用:
- 其主要目的是减少区域内的 LSA条目以及路由条目,减少对设备CPU和内存的占用。
末梢区域和完全末梢区域中ABR会自动生成一条默认路由发布到末梢区域或完全末梢区域中。
-------末梢区域配置命令 --- 没有 LSA 4、5、7 通告
#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]display ip routing-table
#会发现此时末梢区域中的路由会只显示一条默认路由到外部区域
---完全末梢区域配置命令 ---
---除一条LSA3的默认路由通告外,没有LSA3、4、5、7通告
#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.×
[R4-ospf-1-area-0.0.0.2]stub no-summary #先宣告直连网段,再配
1.5 NSSA 非纯末梢区域
NSSA区域是OSPF RFC的补遗:
- 定义了特殊的LSA类型7
- 提供类似 stub area 和 totally stubby area 的优点
- 可以包含ASBR
非纯末梢区域配置命令:
[R4]ospf 1
[R4-ospf-1]area 1
[R4-ospf-1]network x.x.x.x x.x.x.x
[R4-ospf-1-area-0.0.0.1]nssa
二、OSPF多区实验
2.1 实验一
实验内容:如图对 Area 0 、Area 1 、Area 2 进行配置。
- 使PC1 和 PC2之间能够正常通信;
- 对 R1-5 配置OSPF路由
- 对 R6 配置静态路由,验证 OSPF 和 静态路由 的优先级。
【R1】
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/0]un sh
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 16.0.0.1 24
[R1-GigabitEthernet0/0/1]un sh
[R1]int g0/0/2
[R1-GigabitEthernet0/0/2]ip add 192.168.100.1 24
[R1-GigabitEthernet0/0/2]un sh
[R1-GigabitEthernet0/0/2]int loo0
[R1-LoopBack0]ip add 1.1.1.1 32
[R1-LoopBack0]q
[R1]ospf
[R1-ospf-1]area 1
[R1-ospf-1-area-0.0.0.1]network 12.0.0.0 0.0.0.255
[R1-ospf-1-area-0.0.0.1]network 192.168.100.0 0.0.0.255
[R1-ospf-1-area-0.0.0.1]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.1]q
[R1-ospf-1]q
/配置R6静态路由
[R1]ip route-static 192.168.200.0 24 16.0.0.6
【R2】
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 12.0.0.2 24
[R2-GigabitEthernet0/0/0]un sh
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 23.0.0.2 24
[R2-GigabitEthernet0/0/1]un sh
[R2-GigabitEthernet0/0/1]int loo0
[R2-LoopBack0]ip add 2.2.2.2 32
[R2-LoopBack0]q
[R2]ospf
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 23.0.0.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]q
[R2-ospf-1]area 1
[R2-ospf-1-area-0.0.0.1]network 12.0.0.0 0.0.0.255
【R3】
[R3]int g0/0/1
[R3-GigabitEthernet0/0/1]ip add 23.0.0.3 24
[R3-GigabitEthernet0/0/1]un sh
[R3-GigabitEthernet0/0/1]int g0/0/2
[R3-GigabitEthernet0/0/2]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 34.0.0.3 24
[R3-GigabitEthernet0/0/0]un sh
[R3-GigabitEthernet0/0/0]int loo0
[R3-LoopBack0]ip add 3.3.3.3 32
[R3-LoopBack0]q
[R3]ospf
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 23.0.0.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]network 34.0.0.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
【R4】
[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]ip add 34.0.0.4 24
[R4-GigabitEthernet0/0/0]un sh
[R4-GigabitEthernet0/0/0]int g0/0/1
[R4-GigabitEthernet0/0/1]ip add 45.0.0.4 24
[R4-GigabitEthernet0/0/1]un sh
[R4-GigabitEthernet0/0/1]int loo0
[R4-LoopBack0]ip add 4.4.4.4 32
[R4-LoopBack0]q
[R4]ospf
[R4-ospf-1]area 0
[R4-ospf-1-area-0.0.0.0]network 34.0.0.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]network 4.4.4.4 0.0.0.0
[R4-ospf-1-area-0.0.0.0]q
[R4-ospf-1]area 2
[R4-ospf-1-area-0.0.0.2]network 45.0.0.0 0.0.0.255
[R4-ospf-1-area-0.0.0.2]q
[R4-ospf-1]q
【R5】
[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]ip add 45.0.0.5 24
[R5-GigabitEthernet0/0/0]un sh
[R5]int g0/0/1
[R5-GigabitEthernet0/0/1]ip add 56.0.0.5 24
[R5-GigabitEthernet0/0/1]un sh
[R5]int g0/0/2
[R5-GigabitEthernet0/0/2]ip add 192.168.200.1 24
[R5-GigabitEthernet0/0/2]un sh
[R5-GigabitEthernet0/0/2]int loo0
[R5-LoopBack0]ip add 5.5.5.5 32
[R5-LoopBack0]q
[R5]ospf
[R5-ospf-1]area 2
[R5-ospf-1-area-0.0.0.2]network 45.0.0.0 0.0.0.255
[R5-ospf-1-area-0.0.0.2]network 192.168.200.0 0.0.0.255
[R5-ospf-1-area-0.0.0.2]network 5.5.5.5 0.0.0.0
[R5-ospf-1-area-0.0.0.2]q
[R5-ospf-1]q
[R5]q
/给R6配置静态路由
[R5]ip route-static 192.168.100.0 24 56.0.0.6
【R6】
[R6]int g0/0/0
[R6-GigabitEthernet0/0/0]ip add 16.0.0.6 24
[R6-GigabitEthernet0/0/0]un sh
[R6-GigabitEthernet0/0/0]int g0/0/1
[R6-GigabitEthernet0/0/1]ip add 56.0.0.6 24
[R6-GigabitEthernet0/0/1]un sh
[R6-GigabitEthernet0/0/1]q
[R6]ip route-static 192.168.200.0 24 56.0.0.5
[R6]ip route-static 192.168.100.0 24 16.0.0.1
PC1 IP 192.168.100.100 网关 192.168.100.1
PC2 IP 192.168.200.200 网关 192.168.200.1
实验结果:
PC1 与 PC2之间能ping通。
验证命令:
【R5】 ping -a 5.5.5.5 1.1.1.1
能ping通
【R1】dis ip routing-table
可见 OSPF优先级是 10 ,比静态的 60 优先级高,所以用OSPF的配置。【PC1】tracert 192.168.200.200
优先级参照表:
路由协议或路由种类 | 优先级 |
Direct | 0 |
OSPF | 10 |
IS-IS | 15 |
Static | 60 |
RIP | 100 |
OSPF ASE | 150 |
BGP | 255 |
2.2 实验二
末梢网络和完全末梢实验
在实验一的基础尚,去除R6,将 Area 1 作为 末梢区域;将Area 2 作为 完全 末梢区域。
实验过程:
【R1】
[R1]ospf
[R1-ospf-1]area 1
[R1-ospf-1-area-0.0.0.1]stub #末梢区域
【R5】
[R5]ospf
[R5-ospf-1]area 2
[R5-ospf-1-area-0.0.0.2]stub no-summary #完全末梢区域
实验结果:
【R1】执行 dis ip routing-table
结果:
能看到路由表中 有一条 0.0.0.0 的默认路由,是通向外部网络用的,而其他的都能用 OSPF 学习到。
【R5】执行 dis ip routing-table
结果:除了 APR (4.4.4.4)的路由,其他全部区域的路由都用 0.0.0.0 默认路由代替。
结论:从实验二结果能看出来末梢区域和完全末梢区域的区别:
- 末梢区域能学习到OSPF其他区域的所有路由,而AS外部路由是通过默认路由转发出去的;
- 完全末梢区域除了APR 路由外,其他全部网络都是通过默认路由转发出去的