在大型网络中地址汇总可以减少路由条目,减小路由表的大小,减少对路由器CPU和内存资源的占用。
在OSPF中虽然末梢区域可以通过防止某些LSA进入该区域,从而达到在一个非骨干的区域里节省资源的目的,但相对于骨干区域,这些区域除节省资源外并没有做其他任何事情,同时一个区域内所有的地址仍然会通告到骨干区域中。像这样的情况就可以通过地址汇总来解决,与末梢区域一样,地址汇总也通过减少泛洪的LSA数量来达到节省资源的目的。另外他还可以屏蔽一些网络不稳定的细节来节省资源。例如,一个时好时坏的不稳定的子网,在他每一次发生状态转变时,都会引起LSA在整个OSPF区域中泛洪。但是,如果这个子网地址被汇总到一个汇总地址中,那么单独的子网和它的稳定性就不再被通告出去了。
在Cisco的路由器上可以执行以下两种类型的地址汇总:
1、区域间路由汇总,顾名思义是指在区域间的地址汇总。这种类型的汇总通常是配置在ABR上,配置如下:
Router(config)#router ospf 1
Router(config-router)#network 192.168.1.0 0.0.0.255 area1
Router(config-router)#area area-id range ip-address mask
Router(config-router)#area 1 range 192.168.1.0 255.255.255.0
area-id指明需要进行路由条目汇总的区域,ip-address指明汇总后的网段地址。
2、外部路由汇总,允许一组外部地址汇总为一条地址,通过重新分配注入OSPF区域中。这种类型的汇总通常配置在ASBR路由器上,配置如下:
Router(config)#router ospf 1
Router(config-router)#redistribute rip subnets
Router(config-router)#summary-address ip-address mask
Router(config-router)#summary-address 192.168.1.0 255.255.255.0
使用no summary-address命令可以恢复默认值,即取消地址汇总。
虚链路:
在OSPF区域中骨干区域必须连续,并且其他区域要和骨干区域相连。但是在实际网络中由于网络合并、网络设计不合理等造成了骨干区域不连续或非骨干区域没有和骨干区域相连等问题。由于更改OSPF区域需要更改区域内所有路由器的配置,工作量较大,所以这时就需要使用虚链路进行连接,将没有连接到一起的区域连接起来。
虚链路和具体的物理路径没有关系,虚链路事实上只是一个逻辑通道,数据包可以通过选择最优的路由路径从一端到达另一端。
虚链路是指一条通过一个非骨干区域连接到骨干区域的链路。虚链路主要应用于以下两种情况。
1、通过一个非骨干区域连接一个区域到骨干区域:
OSPF路由协议之“地址汇总”及“虚链路”
上图就是使用一条虚链路来把area 23 经由area 12 连接到骨干区域
2、通过一个非骨干区域连接一个分段的骨干区域两边的部分区域:
OSPF路由协议之“地址汇总”及“虚链路”
上图使用一条虚链路穿过一个非骨干区域重新连接一个分段的骨干区域,加入了虚链路形成逻辑冗余,以防由于路由器失效而导致骨干区域被分离成两部分,影响LSA泛洪。
另外,在配置虚链路的时候,有几条相关的规则及特点需要注意:
1、虚链路必须配置在两台ABR路由器之间
2、虚链路所经过的区域必须拥有全部的路由选择信息,这样的区域又称为传送区域
3、传送区域不能是一个末梢区域(包括NSSA区域)
4、虚链路的稳定性取决于其经过的区域的稳定性
5、虚链路有助于提供逻辑冗余
虚链路的存在增加了OSPF区域的复杂程度,而且使故障得排除更加困难,因此应该避免使用虚链路。当有两个或多个OSPF区域要合并时,要先制定一个详细充分的计划,确保那些没有直接链路到骨干区域的区域不被遗漏。
用于虚链路的ABR路由器之间虽然没有物理的数据链路相连,但是它们可以看作通过它们之间的虚链路逻辑上虚拟连接的邻居。在每一个ABR路由器的路由表中,当发现有到达邻居ABR路由器的路由时,虚链路将转换到完全可操作的点到点接口状态。这条虚链路的开销就是到达它的邻居路由器的路由开销。当接口状态变为点到点状态时,一个邻接关系将通过这条虚链路成功建立。
xulian虚链路的配置如下:
R1(config)#router ospf 1
R1(config-router)#area 1 virtual-link 1.1.1.1 指定对端路由器的router ID