R1(config)#router ospf 1
R1(config-router)#net 1.1.1.1 0.0.0.0 area 2
R1(config-router)#net 20.0.0.0 0.0.0.3 area 2
R1(config)#router ospf 1
R1(config-router)#area 2 stub
R2(config)#router ospf 1
R2(config-router)#net 20.0.0.0 0.0.0.3 area 2
R2(config-router)#net 2.2.2.2 0.0.0.0 area 0
R2(config-router)#net 10.0.0.0 0.0.0.3 area 0
R2(config-router)#net 10.10.0.0 0.0.0.3 area 0
R2(config)#router ospf 1
R2(config-router)#area 2 stub
R3(config)#router ospf 1
R3(config-router)#net 3.3.3.3 0.0.0.0 area 0
R3(config-router)#net 10.0.0.0 0.0.0.3 area 0
R3(config-router)#net 30.0.0.0 0.0.0.3 area 3
R3(config-router)#net 10.10.10.0 0.0.0.3 area 0
R3(config)#router ospf 1
R3(config-router)#area 3 stub
R3(config-router)#area 3 stub no-summary
R4(config)#router ospf 1
R4(config-router)#net 30.0.0.0 0.0.0.3 area 3
R4(config-router)#net 4.4.4.4 0.0.0.0 area
R4(config)#router ospf 1
R4(config-router)#area 3 stub
R4(config-router)#area 3 stub no-summary
R5(config)#router ospf 1
R5(config-router)#net 10.10.0.0 0.0.0.3 area 0
R5(config-router)#net 10.10.10.0 0.0.0.3 area 0
R5(config-router)#net 40.0.0.0 0.0.0.3 area 4
R5(config-router)#net 5.5.5.5 0.0.0.0 area 0
R5(config-router)#area 4 nssa
R6(config)#router ospf 1
R6(config-router)#net 40.0.0.0 0.0.0.3 area 4
R6(config-router)#net 6.6.6.6 0.0.0.0 area 4
R6(config-router)#area 4 nssa
R6(config-router)#redistribute rip subnets
R6(config)#router rip
R6(config-router)#ver 2
R6(config-router)#no auto-summary
R6(config-router)#net 172.16.0.0
R6(config-router)#redistribute ospf 1 metric 3
R7(config)#router rip
R7(config-router)#ver 2
R7(config-router)#no auto-summary
R7(config-router)#net 172.16.0.0
R7(config-router)#net 7.7.7.7
此时R7上成功学习全网网络:
因为R1属于末节区域,所以无法接受外部路由信息
因为R4属于完全末节区域,所以只有直连路由和一条默认路由
因为设置了R5在NSSA区域,所以可以接受全网路由信息
路由在R6上双向重分布了,所以,R7的外部路由器可以学习到OSPF全网的路由信息