多区域 OSPF
在一个大型OSPF网络中,SPF算法的反复计算,庞大的路由表和拓扑表的维护以及LSA的泛洪等都会占用路由器的资源,因而会降低路由器的运行效率。OSPF协议可以利用区域的概念来减小这些不利的影响。因为在一个区域内的路由器将不需要了解它们所在区域的拓扑细节。OSPF多区域的拓扑结构有如下优势:
①降低SPF计算频率;
②减小路由表;
③降低了通告LSA的开销;
④将不稳定限制在特定的区域。
1多区域OSPF概述
1.1 OSPF路由器类型
当一个AS划分成几个 OSPF区域时,根据一个路由器在相应的区域之间内的作用,可以将OSPF路由器作如下分类,如图18-1所示。
图18-1 OSPF路由器类型
①内部路由器:OSPF路由器上的所有直接的链路都处于同一个区域;
②主干路由器:具有连接区域0接口的路由器;
③区域边界路由器(ASR):路由器与多个区域相连;
④自治系统边界路由器(ASBR);与AS外部的路由器相连并互相交换路由信息。
1.2 LSA类型
一台路由器中所有 有效的LSA通告都被存放在它的链路状态数据库中,正确的LSA通过可以描述一个OSPF区域的网络拓扑结构。常见的LSA有6类,相应的描述如表18-1 所示。
表18-1 LSA类型及相应的描述
类型 代码 |
名称及路由代码 |
描述 |
1 |
路由器LSA (O) |
所有的OSPF路由器会产生这种数据包,用于描述路由器上连接到某个区域的链路或者是某一接到的状态信息.该LSA只会在某一个特定的区域或内域扩散,而不会扩散至其他的区域 |
2 |
网络LSA(OIA) |
由DR产生,只会在包含DR所处的广播网络的区域中扩散,不会扩散至其他的OSPF区域 |
3 |
网络汇总LSA(OIA) |
由ABR产生,描述ABR和某个本地区域的内部路由器之间的链路信息,这些条目通过主干区域被扩散到其他的ABR |
4 |
ASBR汇总LSA(O IA) |
由ABR产生,描述到ASBR的可达性,由主干区域发送到其他ABR |
5 |
外部LSA(O E1或E2) |
由ASBR产生,含有关于自治系统外的链路信息 |
6 |
NSSA外部LSA(O N1或N2) |
由ASBR产生的关于NSSA的信息,可以在NSSA区域内扩散,ABR可以将类型7的LSA转换为类型5的LSA |
1.3 区域类型
一个区域所在设置的特性控制着它所有能接受到的链路状态信息的类型。区分不同OSPF区域类型的关键在于它们对外部路由的处理方式。OSPF区域类型如下所述。
①标准区域:可以接收链路更新信息和路由汇总;
②主干区域:连接各个区域的中心实体,所有其他的区域都要连接到这个区域上交换路由信息;
③末节区域(Stub Area):不接收外部自治系统的路由信息;
④次末节区域(Not-S0-Stubby Area,NSSA):允许接收以类型7的LSA发送的外部路由信息,并且ABR要负责把类型7的LSA转换成类型5的LSA。
2 实验1:多区域OSPF基本配置
1。实验目的
通过本实验可以掌握:
①在路由器上启动OSPF的路由进程;
②启动参与路由协议的接口,并且通告网络及所在的区域;
③LSA的类型和特征;
④不同路由器类型的功能;
⑤OSPF拓扑结构数据库的特征和含义;
⑥E1路由和E2路由的区别;
⑦查看和调试OSPF路由协议相关信息。
2。实验拓扑
本实验的拓扑结构18-2所示。
图18-2 多区域OSPF基本配置
在配置时,采用环回接口尽量靠近区域0的原则。路由器R4的环回接口不在OSPF进程通告,通过重分布的方法进入OSPF网络。
3。实验步骤
(1)步骤1:配置路由器R1
R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 1.1.1.0 255.255.255.0 area 1
R1(config-router)#network 192.168.12.0 255.255.255.0 area 1
(2)步骤2:配置路由器R2
R2(config)#router ospf 1
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 192.168.12.0 255.255.255.0 area 1
R2(config-router)#network 192.168.23.0 255.255.255.0 area 0
R2(config-router)#network 2.2.2.0 255.255.255.0 area 0
(3)步骤3配置路由器R3
R3(config)#router ospf 1
R3(config-router)#router-id 3.3.3.3
R3(config-router)#network 192.168.23.0 255.255.255.0 area 1
R3(config-router)#network 192.168.34.0 255.255.255.0 area 2
R3(config-router)#network 3.3.3.0 255.255.255.0 area 0
(4)步骤4:配置路由器R4
R4(config)#router ospf 1
R4(config-router)#router-id 4.4.4.4
R4(config-router)#network 192.168.34.0 0.0.0.255 area 2
R4(config-router)#redistribute connected subnets //将直连路由重分布的内容在后面的章节详细介绍
4 实验调试
(1)show ip route
R2#show ip route ospf
1.0.0.0/24 is subnetted,1 subnets
O 1.1.1.0[110/65]via 192.168.12.1,00;04;36,Serial0/0/0
3.0.0.0/24 is subnetted,1 subnets
O
3.3.3.0[110/65]via 192.16.23.3,00;02;46,Serial0/0/1
4.0.0.0/24 is subnetted,1 subnets
OE2 4.4.4.0[110.20]via 192.168.23.3,00;02;11,Serial0/0/1
OIA 192.168.34.0/24[110/128]via 192.168.23.3,00;02;46,Serial0/0/1
以上输出表明路由器R2的路由表中既有区域内的路由”1.1.1.0”和”3.3.3.0”,又有区域间的路由 “192.168.34.0”,还有外部区域的路由”4.4.4.0”,这就是为什么在R4上要用重分布,就是为了构造自治系统外的路由。
【技术要点】
OSPF的外部路由分为:类型1(在路由表中用代码”E1”表示)和类型2(在路由表中间代码”E2”表示),它们计算外部路由度量值的方式不同:
①类型1(E1)—外部路径成本 + 数据包在OSPF网络所经过各链路成本;
②类型2(E2)—外部路径成本,既ASBR 上的默认设置。
在重分布的时候,可以通过”meitric-type”参数设置是类型1或2,也可以通过”metric”参数设置外部路径成本,默认值为20。下面的是具体的实例:
R4(config-router)#redistribute connected subnets metric 50 metric-type 1
则在 R2上关于”4.4.4.0”路由条目的信息如下;
OE1 4.4.4.0[110/178]via 192.168.23.3,00;01;27,Serial0/0/1
(2)show ip ospf database
R1#show ip ospf database
OSPF Router with ID(1.1.1.1)(ProcessID 1)
Router Link States(Area 1)//区域1类型1 的 LSA
Link ID ADV Router Age Seq# Checksunm Link count
1.1.1.1 1.1.1.1 595 0x80000007 0x00A0ED 3
2.2.2.2 2.2.2.2 495 0x80000004 0x002E71 2
Summary Net Link States(Area1)//区域1类型3的LSA
Link ID ADV Router Age Seq# Checksunm
1.1.1.1 1.1.1.1 595 0x80000007 0x00A0ED
2.2.2.0 2.2.2.2 495 0x80000002 0x000D20
3.3.3.0 2.2.2.2 495 0x80000002 0x006B7E
192.168.23.0 2.2.2.2 459 0x80000002 0x001E55
192.168.23.0 2.2.2.2 459 0x80000002 0x002701
Summary ASB Link States(Area1)//区域1类型4的LSA
Link ID ADV Router Age Seq# Checksunm
4.4.4.4 2.2.2.2 495 0x80000002 0x008919
Type-5 AS External Link States//类型5的LSA
Link ID ADV Router Age Seq# Checksunm Tag
4.4.4.0 4.4.4.4 349 0x80000003 0x008460 0
OSPF Router with ID(2.2.2.2)(ProcessID1)
Router Link States(Area 0)//区域0类型1 的 LSA
Link ID ADVRouter Age Seq# Checksunm Link count
2.2.2.2 2.2.2.2 1712 0x80000004 0x006208 3
3.3.3.3 3.3.3.3 1677 0x80000004 0x00F56C 3
Summary Net Link States(Area0)//区域0类型3的LSA
Link ID ADV Router Age Seq# Checksunm
1.1.1.0 2.2.2.2 1785 0x80000001 0x00B53B
192.168.12.0 2.2.2.2 1785 0x80000001 0x0099E5
192.168.34.0 3.3.3.3 1673 0x80000001 0x0088DC
Summary ASB Link States(Area0)//区域0类型4的LSA
Link ID ADV Router Age Seq# Checksunm
4.4.4.0 3.3.3.3 1672 0x80000001 0x00EAF4
Router Link States(Area 1)//区域1类型1 的 LSA
Link ID ADV Router Age Seq# Checksunm Link count
1.1.1.1 1.1.1.1 1794 0x80000006 0x00A2EC 3
2.2.2.2 2.2.2.2 1786 0x80000003 0x003070 2
Summary Net Link States(Area1)//区域1类型3的LSA
Link ID ADV Router Age Seq# Checksunm
2.2.2.0 2.2.2.2 1782 0x80000001 0x000F1F
3.3.3.0 2.2.2.2 1698 0x80000001 0x006D7D
192.168.23.0 2.2.2.2 1738 0x80000001 0x002054
192.168.34.0 2.2.2.2 1672 0x80000001 0x0029FF
Summary ASB Link States(Area0)//区域0类型4的LSA
Link ID ADV Router Age Seq# Checksunm
4.4.4.0 2.2.2.2 1672 0x80000001 0x008B18
Type-5 AS External Link States//类型5的LSA
Link ID ADV Router Age Seq# Checksunm Tag
4.4.4.0 4.4.4.4 203 0x80000002 0x00865F 0
以上输出结果包含了区域1的LSA类型1、LSA类型3、LSA类型4、LSA类型5的链路状态信息,以及区域0的LSA类型1,LSA类型3,LSA类型4的链路状态信息。同时可以看到路由器R1和R2的区域1的链路状态数据库完全相同。
【技术要点】
①相同区域内的路由器具有相同的链路状态数据库,只是在虚链路的时候略有不同 ;
②命令”show ip ospf database”所显示的内容并不是数据库中存储的关于每条LSA的全部信息,而仅仅是LSA的头部信息,要看LSA的全部信息,该命令后面还有跟详细的参数如”show ip ospf database router”,结果显示如下所述。
R1#show ip ospf database router
OSPF Routr with ID(1.1.1.1)(Process ID 1)
Router Link States(Area 1)
LS age;1355
OPTIons;(No TOS-capability,DC)
LS Type;Router Links
Link State ID;1.1.1.1
Advertising Router;1.1.1.1
LS Seq Number;80000008
Checksum;0x9EEE
Length;60
Number of Links;3
Link connected to;a Stub Network
(Link ID)Network/subnet number;1.1.1.0
(Link Data)Network Mask;255.255.255.0
Number of TOS metrics;0
TOS 0 Metrics;64
Link connected to;another Router(point-to-point)
(Link ID)Network Router ID;2.2.2.2
(Link Data)Router Inerface address;192.168.12.1
Number of TOS metrics;0
TOS 0 Metrics;64
Link connected to;a Stub Network
(Link ID)Network/subnet number;192.168.12.0
(Link Data)Network Mask;255.255.255.0
Number of TOS metrics;0
TOS 0 Metrics;64
Routing Bit Set on this LSA
LS age;1267
Options;(No TOS-capability,DC)
LS Type;Router Links
Link State ID;2.2.2.2
Advertising Router;2.2.2.2
LS Seq Number;80000005
Checksum;0x2C72
Length;48
Area Border Router
Number of Links;2
Link connected to;another Router(point-to-point)
(Link ID)Network Router ID;1.1.1.1
(Link Data)Router Inerface address;192.168.12.2
Number of TOS metrics;0
TOS 0 Metrics;64
Link connected to;a Stub Network
(Link ID)Network Router ID;2.2.2.2
(Link Data)Router Inerface address;192.168.12.0
Number of TOS metrics;0
TOS 0 Metrics;64
以上输出是路由器R1在区域 1 的LSA类型 1 的全部信息。
(3)show ip ospf
R4#show ip ospf1
Routing Process”ospf 1”with ID 4.4.4.4
Supports only single TOS(TOS0)routes
Supports opaque LSA
Supports Link-local Signaling(LLS)
It is an autonomous system boundary router
Redisributing External Routers from,
......
以上信息表明路由器R4是一台ASBR。
3 多区域OSPF高级配置
3.1 实现2:OSPF 手工汇总
1.实验目的
通过本实验可以掌握:
①路由汇总的目的;
②区域间路由汇总;
③外部自治系统路由汇总。
2.实验拓扑
本实验的拓扑
本实验的拓扑结构图18-3所示。
图18-3 OSPF手工汇总
路由器R1、R2和R3之间运行OSPF,路由器R3和R4之间运行RIPv2,路由器R1上的4个环回接口是为在路由器R2上进行区域间路由汇总准备的,路由器R2上进行区域间路由汇总准备的,路由器R4上的4个环回接口是为在路由器R3上进行外部路由汇总准备的。由于路由器R3是边界路由器,所以要完成双像重分布。
3.实验步骤
(1)步骤1:配置路由器R1
R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 1.1.4.0 255.255.255.0 area 1
R1(config-router)#network 192.168.12.0 255.255.255.0 area 1
(2)步骤2:配置路由器R2
R2(config)#router ospf 1
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 192.168.12.0 255.255.255.0 area 1
R2(config-router)#network 192.168.23.0 255.255.255.0 area 0
R2(config-router)#network 2.2.2.0 255.255.255.0 area 0
R2(config-router)#area 1 range 1.1.4.0 255.255.255.0 //配置区域间路由汇总
(3)步骤3:配置路由器R3
R2(config)#router ospf 1
R2(config-router)#router-id 3.3.3.3
R2(config-router)#network 3.3.3.0 0.0.0.255 area 0
R2(config-router)#network 192.168.23.0 0.0.0.255 area 0
R2(config-router)#summary-address 4.4.0.0 255.255.255.0 //配置外部自治系统路由汇总
R2(config-router)#redistribut rip subnets //将RIP路由重分布到OSPF中
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#no auto-summary
R3(config-router)#network 192.168.34.0
R3(config-router)#redistribute ospf metric 2 //将OSPF路由重分布到RIP中
(4)步骤4:配置路由器R4
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#no auto-summary
R3(config-router)#network 4.0.0.0
R3(config-router)#network 192.168.34.0
【技术要点】
①区域间路由汇总必须在ABR上完成 ;
②外部路由汇总必须在ASBR上完成。
4.实验调试
(1)在R2上查看路由表
具体显示如下。
R2#show ip route ospf
1.0.0.0/8is variably subnetted,5 subnets,3 masks
O 1.1.5.1/32[110/65]via 192.168.12.1,00;17;16,Seria10/0/0
O 1.1.4.0/24[110/65]via 192.168.12.1,00;17;16,Seria10/0/0
O 1.1.40/22 is a summary,00;17;16,Null0
O 1.1.7.1/32[110/65]via 192.168.12.1,00;17;16,Seria10/0/0
O 1.1.6.1/32[110/65]via 192.168.12.1,00;17;16,Seria10/0/0
3.0.0.0/24 is subnetted,1 subnets
O 3.3.3.3[110/65]via 192.168.23.3,00;12;14,Seria10/0/1
4.0.0.0/24 is subnetted,1 subnets
OE2 4.4.0.0[110/20]via 192.168.23.3,00;11;09,Seria10/0/1
OE2 192.168.34.0/24[110/20]via 192.168.23.3,00;12;15,Seria10/0/1
以上输出表明R2对R1的4条环回接口的路由汇总后,会产生一条指向NullO的路由;同时收到经路由器R3汇总的路由,因为是重分布进来的外部路由,所以路由代码为”OE2”。
(2)在R3上查看路由表
具体显示如下。
R3#show ip route ospf
OIA 192.168.12.0/24[110/128]via 192.168.23.2,00;23;20,Serial0/0/1
1.0.0.0/22 is subnetted,1 subnets
OIA 1.1.4.0[110/129]via 192.168.23.2,00;23;20,Serial0/0/1
2.0.0.0/24 is subnetted,1 subnets
O 2.2.2.0[110/65]via 192.168.23.2,00;23;20,Serial0/0/1
4.0.0.0/8is variably subnetted,5 subnets,2 masks
O 4.4.0.0/22is a summary,00;20;29,NullO
以上输出表明R3对4条环回接口的RIP路由汇总后,会产生一条指向NULLO的路由;同时收到经路由R2汇总的路由,由于是区域间路由汇总,所以路由代码为”OIA”。
4 OSPF 命令汇总
表18-2列出了本章涉及到的主要命令。
表18-2 本章命令汇总
命令 |
作用 |
show ip route |
查看路由表 |
show ip ospf neighbor |
查看OSPF邻居的基本信息 |
show ip ospf database |
查看OSPF拓扑结构数据库 |
show ip ospf interface |
查看OSPF路由器接口的信息 |
show ip ospf |
查看OSPF进程及其细节 |
show ip ospf database router |
查看类型1 的LSA全部信息 |
redistribute |
路由协议重分布 |
area area-id range |
区域间路右汇总 |
summary-address |
外部路由汇总 |
area area-id stub |
把某区域配置成末节区域 |
area area-id stub no-summary |
把某区域配置成完全末节区域 |
area area-id nssa |
把某区域配置成NSSA区域 |
area area-id virtual-link |
配置虚链路 |