OSPF多区域原理与配置
OSPF多区域原理与配置
一、OSPF的多区域
1、生成OSPF多区域的原因
(1)改善网络的可扩展性
(2)快速收敛
2、OSPF的三种通信量
(1)域内通信量(Intra-Area Traffic)
单个区域内的路由器之间交换数据包构成的通信量
(2)域间通信量(Inter-Area Traffic)
不同区域的路由器之间交换数据包构成的通信量
(3)外部通信量(External Traffic)
OSPF域内的路由器与OSPF区域外或另一个自治系统内的路由器之间交换数据包构成的通信量
3、OSPF的路由器的类型
(1)内部路由器
只保存本区域内的链路状态信息
(2)区域边界路由器(ABR)
用来连接区域0和其他区域
(3)自治系统边界路由器(ASBR)
用来连接OSPF的AS与外部其它的路由
4、OSPF的区域类型
(1)骨干区域
Area 0,作为OSPF花朵结构中的花蕊部分,其他区域通信都需经过骨干区域的转发处理
(2)非骨干区域
根据能够学习的路由种类来区分:
a.标准区域
b.末梢区域(Stub)
c.完全末梢区域(Totally Stubby)
d.非纯末梢区域(NSSA)
二、链路状态数据库
1、链路状态数据库的组成
每个路由器都创建了由每个接口、对应的相邻节点和接口速度组成的数据库。
链路状态数据库中每个条目称为LSA(链路状态通告),常见的有六种LSA类型。
2、链路状态通告(LSA)类型
类型代码 | 描述 | 用途 |
---|---|---|
Type 1 | 路由器LSA | 所有OSPF路由器都会产生,只在区域内传播 |
Type 2 | 网络LSA | DR产生,只在区域内传播 |
Type 3 | 网络汇总LSA | ABR产生,在相邻的两个区域相互传播 |
Type 4 | ASBR汇总LSA | ABR产生,向和ASBR不在同一区域的其他区域传播,用于表示ASBR |
Type 5 | AS外部LSA | ASBR产生,向整个OSPF协议区传播,用于描述另一个协议域的路由信息 |
Type 7 | NSSA外部LSA | NSSA区域中的ASBR产生,用于向NSSA区域通告外部路由 |
(1)路由器LSA
OSPF路由域内每一台路由器都会产生的LSA,这是LSA通告的基础,该LSA包内列出了,本路由器的所有参与OSPF进程的端口的IP地址与掩码与该接口Metric值,他的Link-ID与Adv Router都是发出该LSA的路由器的Router-id,该LSA只会在发送路由器所在的区域内扩散,也就是说他的作用范围是本区域。
(2)网络LSA
此类LSA只会在网络拓扑是多路访问的情况下产生(MA或NBMA),这类LSA包内,列出了这个多路访问的掩码,使用Router-id的方式,描述这个物理网段内有多少台路由器与DR保持联系,Link-id为DR所属的接口的IP地址,Adv Router为DR所在的那台路由器的Router-id。
(3)网络汇总LSA
3类LSA由ABR发出,存在这类LSA的主要原因是1类2类只能在域内域内和传播,无法跨区域,这类数据包内,列出了网段、掩码,出接口到达目标网段的Metric值,所以3类LSA相当于将1,2类LSA打包,通过ABR传输至其他区域,因为这类LSA一定是由ABR发出的,所以这类LSA的Adv Router为发出发出该数据包的ABR的Router-id,Link-id为区域外的网段,比如说192.168.10.0192.168.20.0,可以使用show ip ospf database summary 192.168.10.0来查询这条3类LSA明细信息。
(4)ASBR汇总LSA
该类LSA并没有什么很特殊的意义,数据包中用Router-id的方法,,定位了ASBR与ASBR所在的区域的ABR,使得其他其他路由器可以找到ABR的位置,可以使用show ip ospf database asbr-summary 命令查看4类LSA明细,4类LSA的Link-ID为ASBR,Adv Router为ASBR所在的区域的ABR的Router-id,该类LSA会在ASBR不在的区域扩散,也就是说ASBR所在的区域不会存在4类LSA,如果ASBR同时也是BR,那么在ASBR所在的骨干区域与非骨干区域将不会产生4类LSA,只会在别的区域产生,因为ASBR所在的区域,其他路由器可以通过1类LSA找到它,而不是通过4类LSA。
(5)AS外部LSA
这类LSA数据包内列出了外部路由网段,掩码,Metric值,route tag,以及发布类型(E2/E1)Link-ID为目标网段,Adv Router则为ASBR的Router-id,需要注意的是,这类LSA不会与区域关联,也就是说这类LSA是在整个OSPF路由域内传播。
(6)NSSA外部LSA
该区域不接受5类LSA,只接受1,2,3类LSA,但是这就存在一个问题,如果在nssa区域内有一台ASBR怎么办,因为NSSA区域不接受5类LSA,所以当nssa区域内有一台ASBR存在的时候,ASBR会发出7类LSA,然后在NSSA区域内泛洪,ABR收到7类LSA后会将7类转换成5类,然后向整个OSPF路由域泛洪,7类LSA的包内容与5类LSA一样,都含有网络号,掩码,Metric值,发布类型,其中Link-ID为外部网络的网络号,Adv Router为ASBR的Router-id,还需要注意一个点,当NSSA区域存在ASBR时,该区域的ABR会同时兼任ABR与ASBR的角色,所以区域0是不会有4类LSA的。
三、STUB区域
1、末梢区域和完全末梢区域
(1)末梢区域的设定条件
a.只有一个默认路由作为其区域的出口
b.区域不能作为虚链路的穿越区域
c.Stub区域里无自治系统边界路由器ASBR
d.不是骨干区域Area 0
(2)末梢区域
没有LSA4、5、7通告
(3)完全末梢区域
除一条LSA3的默认路由通告外,没有LSA3、4、5、7通告
2、每一种区域中允许泛洪的LSA
区域类型 | 1&2 | 3 | 4&5 | 7 |
---|---|---|---|---|
骨干区域(Area 0) | 允许 | 允许 | 允许 | 不允许 |
非骨干区域,非末梢区域 | 允许 | 允许 | 允许 | 不允许 |
末梢区域 | 允许 | 允许 | 不允许 | 不允许 |
完全末梢区域 | 允许 | 不允许(仅一条默认) | 不允许 | 不允许 |
NSSA | 允许 | 允许 | 不允许 | 允许 |
四、OSPF配置命令
1、dis ospf pee b ##查看邻居关系
dis ip routing-table protocol ospf ###查看OSPF路由信息
2、ospf 1 route 1.1.1.1 ####OSPF指定个route-id、1是表示,只在本区域有效
route id 1.1.1.1 ###全局模式下配置 这个router-id所有协议生效
3、reset ospf 1 process ###1是进程号 重启ospf ##在用户模式下敲
4、ospf 配置方法
ospf 1 route 1.1.1.1 ###配置route-id
ospf 10 ##启动ospf 它的进程号是10
area 0 ###进入区域0 骨干区域
network 20.0.0.0 0.0.0.3 ###宣告网段 20.0.0.0 反掩码 0.0.0.3 (30位)
5、引入路由
ospf 1
import-route rip 1 type 1 cost 5 ###默认引入type 2 度量值是不累加的,这种是不科学的,一般引入type 1,要累加 cost 5 是花销
引路由
rip 1
import-route ospf 1
末梢区域
stub ###末梢 2变都要加
完全末梢在abr上 加入
nssa区域 ###ASBR主要是靠5类的LSA来通告链路状态信息,可以用7类LSA优化,通告外部路由信息
路由A
ospf 10
area 1
nssa
路由B
ospf 10
area 1
nssa
路由C
ospf 10
area 1
nssa
OSPF:
default-route-advertise 命令的意思是本路由器发布一条0.0.0.0/0.0.0.0的路由到域内其他路由器。
其他路由器学习到这条默认路由后,下一跳就是指向发布这条路由的路由器
RIP:
default-route originate