ospf的区域设计
常规的区域有:骨干区域,常规区域
非常规的区域有:脱节区域
特殊区域:stub,totally stub,NSSA,totally NSSA
设置非常规区域的目的在于隔离LSA,以节省网络资源
2.脱节区域:没有和骨干区域相连的常规区域
产生的影响:脱节区域内的路由器无法学习到其他区域路由器的信息(学习不到路由)
图1
解决办法:
①虚链路virtual-link(两边都得配置)
部署:
Router ospf 1
Area +穿越的区域+virtual-link+对方RID
如图1中,area 1 是需要穿过的区域
R3:
area 1 virtual-link 2.2.2.2
R2:
area 1 virtual-link 3.3.3.3
②隧道tunnel
GRE:通用路由封装
部署:
R2:
interface tunnel 0
ip add 172.16.1.1 255.255.255.0
ip ospf 1 area 0
tunnel source 23.1.1.2
tunnel destination 23.1.1.3
router ospf 1
network 172.16.1.0 0.0.0.255 a 0
R3:
interface tunnel 0
ip add 172.16.1.2 255.255.255.0
ip ospf 1 area 0
tunnel source 23.1.1.3
tunnel destination 23.1.1.2
router ospf 1
network 172.16.1.0 0.0.0.255 a 0
③单点双向重分发
部署:
R3:
router ospf 1
router-id 3.3.3.3
netw 23.1.1.0 0.0.0.255 a 1
netw 3.3.3.3 0.0.0.0 a 1
router ospf 2
router-id 33.33.33.33
netw 34.1.1.0 0.0.0.255 a
router ospf 1
redistribute ospf 2 subnets
router ospf 2
redistribute ospf 1 subnets
3.特殊区域
①stub区域(末梢区域)
作用:阻止LSA4/5(域外路由信息)进入Stub区域,缩小了区域内路由器的LSDB,降低内存消耗
末梢区域的ABR会向STUB区域内的路由器下发一条LSA3默认路由
部署:
router ospf 1
Area 1 stub
注意:
1、必须将Stub区域的所有路由器都配成Stub
2、Area 0不能配成Stub
3、虚链路不能穿越Stub区域
4、Stub区域中不能出现ASBR(即末梢区域的路由器不能再添加外部区域了)
配置stub前路由表:
配置stub后路由表
②totally stub (多阻止LSA3,使得所有ospf路由信息,聚合成一个默认路由)
部署:
先配置出一个stub区域,然后在ABR上:
router ospf 1
area 3 stub no-summary //(只需在ABR上做)
在stu的基础上进一步简化路由表
③NSSA(not-so-stub area 连了尾巴的stub)
本来stub已经不能添加外部区域了,但是有时候由不得不添加,所以就引入NSSA,NSSA隔离LSA4/5,并且可以存在ASBR,ASBR会引入外部路由,但是以LSA7引入的,只有NSSA区域中才会现LSA7,NSSA区域的边界ABR会将LSA7转成LSA5,传播到其他区域。这时,ABR也成为了ASBR,因为它也引入了LSA5。其它区域路由器看到LSA5的通告路由器是ABR。
就是在图2的R3,R4配置。
并且R6中的外部路由信息不能通过NSSA网络(R4:我才不要其他路由器的尾巴(外部路由信息)呢!)
部署
区域内的所有路由器:
Router ospf 1
Area 2 nssa
NSSA不会自动下发默认路由(7型默认路由)
Area 2 nssa Default-information-originate(ABR上,即图2R3)
R4配置NSSA后的路由表
④totally NSSA(连了尾巴的totally stub)
cisco私有特性
Totally NSSA,能阻止LSA3/4/5,并且由ABR产生LSA3默认路由传播到NSSA其他路由器
部署
Router ospf 1
Area 2 nssa no-summary(ABR上)