实验目的:1、分析NSSA区域内,有哪几类LSA
2、NSSA区域导入外部路由之后,区域内LSA的变化
3、totally NSSA区域的LSA变化
4、分析NSSA与Stub的区别
一、搭建以下实验拓扑图:
eNSP环境,分析NSSA区域与Stub区域的区别
二、配置步骤:
1、按照拓扑图配置PC机以及各路由器的名称以及接口的IP地址,由左往右依次命名为R1~R7,各接口的IP地址为:
AR1的g0/0/1 IP:192.168.10.254/24
AR1的g0/0/0 IP:192.168.12.1/24
AR2的g0/0/1 IP:192.168.12.2/24
AR2的g0/0/0 IP:192.168.23.1/24
AR3的g0/0/1 IP:192.168.23.2/24
AR3的g0/0/0 IP:192.168.34.1/24
AR4的g0/0/1 IP:192.168.34.2/24
AR4的g0/0/0 IP:192.168.45.1/24
AR5的g0/0/1 IP:192.168.45.2/24
AR5的g0/0/0 IP:192.168.56.1/24
AR6的g0/0/1 IP:192.168.56.2/24
AR6的g0/0/0 IP:192.168.67.1/24
AR7的g0/0/1 IP:192.168.67.2/24
AR7的g0/0/0 IP:192.168.20.254/24
PC1 IP:192.168.10.1/24 网关192.168.10.254/24
PC2 IP:192.168.20.1/24 网关192.168.20.254/24
2、配置各路由器的OSPF以及配置每个OSPF路由器的router-id,配置命令如下:
AR1:
[R1]ospf 1 router-id 1.1.1.1 //开启OSPF进程1,并为OSPF路由器指定名称为1.1.1.1
[R1]ospf 1 //进入OSPF进程1
[R1-ospf-1]area 13 //创建区域area 13,并进入
[R1-ospf-1-area-0.0.0.13]network 192.168.12.0 0.0.0.255 //宣告该路由上属于area 13的网段
AR2:
[R2]ospf 1 router-id 2.2.2.2 //开启OSPF进程1,并为OSPF路由器指定名称为2.2.2.2
[R2]ospf 1 //进入OSPF进程1
[R2-ospf-1]area 13 //创建区域area 13,并进入
[R2-ospf-1-area-0.0.0.13]network 192.168.12.0 0.0.0.255 //宣告该路由上属于area 13的网段
[R2-ospf-1-area-0.0.0.13]network 192.168.23.0 0.0.0.255 //宣告该路由上属于area 13的网段
AR3:
[R3]ospf 1 router-id 3.3.3.3 //开启OSPF进程1,并为OSPF路由器指定名称为3.3.3.3
[R3]ospf 1 //进入OSPF进程1
[R3-ospf-1]area 13 //创建区域area 13,并进入
[R3-ospf-1-area-0.0.0.13]network 192.168.23.0 0.0.0.255 //宣告该路由上属于area 13的网段
[R3-ospf-1-area-0.0.0.13]quit //返回上一级
[R3-ospf-1]area 0 //创建area 0并进入
[R3-ospf-1-area-0.0.0.0]network 192.168.34.0 0.0.0.255 //宣告该路由上属于area 0的网段
AR4:
[R4]ospf 1 router-id 4.4.4.4 //开启OSPF进程1,并为OSPF路由器指定名称为4.4.4.4
[R4]ospf 1 //进入OSPF进程1
[R4-ospf-1]area 0 //创建区域area 0,并进入
[R4-ospf-1-area-0.0.0.0]network 192.168.34.0 0.0.0.255 //宣告该路由上属于area 0的网段
[R4-ospf-1-area-0.0.0.0]network 192.168.45.0 0.0.0.255 //宣告该路由上属于area 0的网段
AR5:
[R5]ospf 1 router-id 5.5.5.5 //开启OSPF进程1,并为OSPF路由器指定名称为5.5.5.5
[R5]ospf 1 //进入OSPF进程1
[R5-ospf-1]area 0 //创建区域area 0,并进入
[R5-ospf-1-area-0.0.0.0]network 192.168.45.0 0.0.0.255 //宣告该路由上属于area 0的网段
[R5-ospf-1-area-0.0.0.0]quit //返回上一级
[R5-ospf-1]area 57 //创建area 57并进入
[R5-ospf-1-area-0.0.0.57]network 192.168.56.0 0.0.0.255 //宣告该路由上属于area 57的网段
AR6:
[R6]ospf 1 router-id 4.4.4.4 //开启OSPF进程1,并为OSPF路由器指定名称为4.4.4.4
[R6]ospf 1 //进入OSPF进程1
[R6-ospf-1]area 57 //创建区域area 57,并进入
[R6-ospf-1-area-0.0.0.0]network 192.168.56.0 0.0.0.255 //宣告该路由上属于area 57的网段
[R6-ospf-1-area-0.0.0.0]network 192.168.67.0 0.0.0.255 //宣告该路由上属于area 57的网段
AR7:
[R7]ospf 1 router-id 7.7.7.7 //开启OSPF进程1,并为OSPF路由器指定名称为7.7.7.7
[R7]ospf 1 //进入OSPF进程1
[R7-ospf-1]area 57 //创建区域area 57,并进入
[R7-ospf-1-area-0.0.0.57]network 192.168.12.0 0.0.0.255 //宣告该路由上属于area 57的网段
验证:查看AR1和AR7的OSPF路由
运行命令:display ospf routing
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
由上图可以看出,两个路由器的OSPF路由表都是一致的,说明OSPF区域搭建成功。
3、将右边的区域area 57作成stub区域,并将左边的PC1所在的网段注入到OSPF中,命令如下:
在每个属于area 57的路由器上执行以下命令,将area57设置成stub区域
[R7]ospf 1 //进入OSPF进程1
[R7-ospf-1]area 57 //进入区域area 57
[R7-ospf-1-area-0.0.0.57]stub //配置area 57为sub
在AR1上引入外部路由1921.168.10.0/24,命令如下:
[R1]ospf 1 //进入进程1
[R1-ospf-1]import-route direct //引入外部直连路由
验证是否注入成功:display ospf lsdb
eNSP环境,分析NSSA区域与Stub区域的区别
由上图可知,在AR1中多了一条外部自治系统数据库(AS External Database),说明外部路由已经注入成功。
测试PC1能否ping通AR7的192.168.67.2/24
eNSP环境,分析NSSA区域与Stub区域的区别
4、经过步骤3的配置,我们可以指定area 13为普通区域,area 57区域为stub区域
分别查看两区域内以及area 0的LSA,命令为:display ospf lsdb
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
通过以上两张图,可以知道,在area 13区域内存在着1~3类和一个5类LSA,,而且5类LSA是由AR1产生的。
area 0区域则有1~5类所有LSA,因为在area 0区域在将5类LSA传送给其他区域的时候,必须告诉其他区域router-id 1.1.1.1的路由怎么走,所有必须生成一个4类LSA。
而area 57区域区域内只有1~3类LSA,且有一条特殊的3类LSA,该LSA由AR5发出,表示的是一条默认路由的链路状态,area 57没有外部路由的链路状态通告,它是在怎么去往外网的呢?
我们查看一下AR6的路由表
eNSP环境,分析NSSA区域与Stub区域的区别
由上图可知,AR6通过OSPF协议得到了一条默认路由,所以只要area 0中有去往其他网络的链路通告,area 57区域都能到达目的区域。
5、totally stub配置,通过4步骤我们知道stub区域里的所有3类LSA都是由AR5发出的,所以我们可以将不必要的3类LSA去除,只留下一条默认的3类LSA,因为都是AR5产生的,所有我们在AR5上配置以下命令:
[R5]ospf 1
[R5-ospf-1]area 57
[R5-ospf-1-area-0.0.0.57]stub no-summary //去除3类LSA
查看area 57内的链路通告,并用PC1pingAR7的192.168.67.2/24
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
由上可知在stub区域去除3类LSA成功,并且照样能够通往外网。
6、stub区域能否注入外部路由呢,我们可以通过以下命令验证:
[R7]ospf 1
[R7-ospf-1]import-route direct
[R7-ospf-1]display ospf lsdb
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
由上可知,stub区域不能实现外部路由的注入,在stub区域内无法生成5类LSA
7、删除area 57的stub配置,命令为:
[R7-ospf-1-area-0.0.0.57]undo stub
[R7-ospf-1-area-0.0.0.57]display ospf brief
eNSP环境,分析NSSA区域与Stub区域的区别
通过上图可知,area 57恢复到普通区域
8、配置NSSA,在每个area 57区域内执行以下命令:
[R7-ospf-1-area-0.0.0.57]nssa
并查看各区域的LSA
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
通过上图可知,除了area 57,其他区域都没有NSSA这个7类LSA,在area 57转换成NSSA时,前面在area 57区域注入的外部路由也成功注入到了OSPF中,最终NSSA区域内的LSA为:1~3类LSA加7类LSA
既然stub区域能通过stub no-summary 命令去除3类LSA,那NSSA是否也能去除3类LSA,执行以下命令
[R5-ospf-1-area-0.0.0.57]nssa no-summary
在AR6上查看area 57区域的LSA,路由表,以及测试PC1和PC2能否互通
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
eNSP环境,分析NSSA区域与Stub区域的区别
通过上图可以知道,NSSA也能去除3类LSA,不过在去除3类LSA之前区域内没有一天特殊的3类LSA(即默认路由的链路通告),
在执行去除3类LSA命令后,自动生成了一条特殊的3类LSA。
综上,stub区域内没有5类4类7类LSA,且不能在该区域注入外部路由,NSSA区域没有5类4类LSA,但由7类LSA,能在该区域注入外部路由,两个区域在去除了3类LSA之后,都有一条特殊的3类LSA,指向区域外部,即两者都有一条默认路由指向该区域的ABR路由器。两者最大的区别就是stub区域不能注入外部路由,NSSA区域则可以注入外部路由。