Cisco路由器的OSPF协议高级配置之“NSSA详解”

由于OSPF网络中末梢区域不允许存在ASBR,所以在一台属于末梢区域的路由器上配置重分发到OSPF区域是无法实现的。
在重分发路由时,如果路由器所属区域类型是末梢区域,会有相应的提示出现,一定要注意观察,以免重分发路由失败,提示如下:

Mar  1 00:06:58.555: %OSPF-4-ASBR_WITHOUT_VALID_AREA:
Router is currently an ASBR while having only one area which is a stub area

解决方法有两个,一是在末梢区域中的每台路由器使用命令no area 1 stub将末梢区域更改为标准区域,但是,有可能出现的情况是,在这个区域中的路由器性能比较差,如果改为标准区域,那么可能会导致路由器的内存、CPU等资源占用率较高,从而导致转发缓慢或出现网络故障,那么,就需要将该区域配置为非纯末梢区域(NSSA)。

非末梢区域允许外部路由通告到OSPF AS外部,而同时保留AS其余部分的末梢区域特征,为了做到这一点,在NSSA区域内的ASBR用始发类型7的LSA来通告那些外部的目的网络。这些NSSA区域外部的LSA将在整个NSSA区域中进行泛洪,但是会在ABR路由器的地方被阻塞。

NSSA外部LSA通告几乎和外部LSA通告是相同的。只是不像AS外部LSA通告那样在整个OSPF AS中进行泛洪,NSSA外部LSA通告仅仅在始发这个NSSA外部LSA通告的非纯末梢区域内部进行泛洪,NSSA区域中的ABR路由器可以将LSA7通告转换为LSA5,并且将LSA泛洪到其他区域中去。示意图如下:

同样,NSSA重分发到OSPF中的路由器也是两种类型,在NSSA区域的路由表中显示为N1和N2,当其经过ABR转换成为LSA5通告后,N1转换为E1,N2转换为E2。

在NSSA区域的路由器上查看路由表,重分发的路由条目显示如下:
O N2 5.0.0.0/8 [110/20] via 40.0.0.1, 00:08:22, FastEthernet3/0

经过ABR转换后,在其他区域显示的重分发路由条目如下:
O E2 5.0.0.0/8 [110/20] via 30.0.0.1, 00:23:05, FastEthernet1/0

NSSA的配置很简单,在需要配置的区域内的每个路由器上进入OSPF,执行area 区域ID nssa即可配置为NSSA区域,但是NSSA区域与其他区域重分发路由的通信还是有问题,需要进一步配置,才可正常通信。

因为当使用area 区域号 nssa命令后,ABR并不通告一条指向ABR的类型3的LSA默认路由,而NSSA区域中又无法泛洪LSA4和LSA5通告,导致NSSA区域中的路由器无法获得从其他区域重分发的路由条目,最终导致NSSA区域与其他区域不能通信,这时可以使用以下命令生成LSA3的默认路由:
area 区域ID default-information-originate

area 区域ID nssa no-summary

配置实例:

拓扑图如下:
接口地址配置命令省略。

R1的配置如下:

R1(config)#router ospf 1
R1(config-router)#net 1.1.1.1 0.0.0.0 area 1
R1(config-router)#net 10.0.0.0 0.255.255.255 area 1
R1(config-router)#area 1 nssa                                  #配置area 1 为NSSA区域

R2的配置如下:

R2(config)#router ospf 1
R2(config-router)#net 2.2.2.2 0.0.0.0 area 0
R2(config-router)#net 10.0.0.0 0.255.255.255 area 1
R2(config-router)#net 20.0.0.0 0.255.255.255 area 0
R2(config-router)#area 1 nssa                                            #配置area 1 为NSSA区域

R3的配置如下:

R3(config)#router ospf 1
R3(config-router)#net 20.0.0.0 0.255.255.255 area 0
R3(config-router)#net 3.3.3.3 0.0.0.0 area 0
R3(config-router)#redistribute rip subnets                               #注入RIP路由信息
R3(config)#router rip
R3(config-router)#ver 2
R3(config-router)#net 30.0.0.0
R3(config-router)#no auto-summary                                 #RIP v2默认情况下在主网络边界
上进行路由汇总,因此需要关闭路由汇总功能。
R3(config-router)#redistribute ospf 1 metric 10                         #注入OSPF路由信息。

R4的配置如下:

R4(config)#router rip
R4(config-router)#ver 2
R4(config-router)#net 4.4.4.4
R4(config-router)#net 30.0.0.0

此时 按照正常的配置已经完毕了,但是呢,查看NSSA区域中R1路由器的路由表,并没有到达R4路由器的路由条目信息:

R1#show ip route
                                     .............................

     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/32 is subnetted, 1 subnets
O IA    2.2.2.2 [110/2] via 10.0.0.2, 00:05:42, FastEthernet0/0
     3.0.0.0/32 is subnetted, 1 subnets
O IA    3.3.3.3 [110/3] via 10.0.0.2, 00:05:42, FastEthernet0/0
O IA 20.0.0.0/8 [110/2] via 10.0.0.2, 00:05:42, FastEthernet0/0
C    10.0.0.0/8 is directly connected, FastEthernet0/0

这时我们需要使用命令在area1 的路由器上生成LSA3的默认路由。

R1(config)#router ospf 1
R1(config-router)#area 1 nssa default-information-originate
R2(config)#router ospf 1
R2(config-router)#area 1 nssa default-information-originate

配置完成后就实现了全网互通,现在查看R1 和R4的路由条目信息分别如下:

R1

R1#show ip route
                               ....................

     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/32 is subnetted, 1 subnets
O IA    2.2.2.2 [110/2] via 10.0.0.2, 00:08:19, FastEthernet0/0
     3.0.0.0/32 is subnetted, 1 subnets
O IA    3.3.3.3 [110/3] via 10.0.0.2, 00:08:19, FastEthernet0/0
O IA 20.0.0.0/8 [110/2] via 10.0.0.2, 00:08:19, FastEthernet0/0
C    10.0.0.0/8 is directly connected, FastEthernet0/0
O*N2 0.0.0.0/0 [110/1] via 10.0.0.2, 00:08:09, FastEthernet0/0

R4:

R4#show ip route
                           .............................

     1.0.0.0/32 is subnetted, 1 subnets
R       1.1.1.1 [120/10] via 30.0.0.1, 00:00:04, FastEthernet0/0
     2.0.0.0/32 is subnetted, 1 subnets
R       2.2.2.2 [120/10] via 30.0.0.1, 00:00:04, FastEthernet0/0
     3.0.0.0/32 is subnetted, 1 subnets
R       3.3.3.3 [120/10] via 30.0.0.1, 00:00:04, FastEthernet0/0
     4.0.0.0/32 is subnetted, 1 subnets
C       4.4.4.4 is directly connected, Loopback0
R    20.0.0.0/8 [120/10] via 30.0.0.1, 00:00:04, FastEthernet0/0
R    10.0.0.0/8 [120/10] via 30.0.0.1, 00:00:06, FastEthernet0/0
C    30.0.0.0/8 is directly connected, FastEthernet0/0

原文地址:https://blog.51cto.com/14154700/2378041

时间: 2024-10-18 09:38:47

Cisco路由器的OSPF协议高级配置之“NSSA详解”的相关文章

ant的高级使用,ant命令详解,ant打包,ant编译后打包去掉jar文件

在日常的项目开发中,我们可以经常性的需要打包测试,尤其是开发环境是windows,而实际环境则是linux. 这样的话,很多程序员要一会打一个包,一会打一个包,这些包可能会很大,实际上只有代码部分会变动,而jar包基本则不动. 当然很多人可能会说,自动化测试.很好的,我们今天要做的就是自动化测试的第一步. 这个时候我是可以使用ant来打包,去掉项目中的所有的jar文件.然后在项目的tomcat启动时到特定的地点去加载jar文件. 这样做,war包可能会只有几M,什么更小.具体如何动态的加载jar

搞懂分布式技术4:ZAB协议概述与选主流程详解

搞懂分布式技术4:ZAB协议概述与选主流程详解 ZAB协议 ZAB(Zookeeper Atomic Broadcast)协议是专门为zookeeper实现分布式协调功能而设计.zookeeper主要是根据ZAB协议是实现分布式系统数据一致性. zookeeper根据ZAB协议建立了主备模型完成zookeeper集群中数据的同步.这里所说的主备系统架构模型是指,在zookeeper集群中,只有一台leader负责处理外部客户端的事物请求(或写操作),然后leader服务器将客户端的写操作数据同步

Nginx状态信息(status)配置及信息详解

Nginx状态信息(status)配置及信息详解 nginx与php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有帮助.为了后续的zabbix监控,我们需要先了解一下nginx的状态页. Nginx状态信息(status)介绍 Nginx软件在编译时又一个with-http_stub_status_module模块,这个模块功能是记录Nginx的基本访问状态信息,让使用者了解Nginx的工作状态.要想使用状态模块,在编译时必须增加--with-http_stub

asp.net中web.config配置节点大全详解【转】

web.config 文件查找规则: (1)如果在当前页面所在目录下存在web.config文件,查看是否存在所要查找的结点名称,如果存在返回结果并停止查找. (2)如果当前页面所在目录下不存在web.config文件或者web.config文件中不存在该结点名,则查找它的上级目录,直到网站的根目录. (3)如果网站根目录下不存在web.config文件或者web.config文件中不存在该节点名则在%windir%"Microsoft.NET"Framework"v2.0.

MySql绿色版配置及使用详解

最近在做项目开发时用到了MySql数据库,在看了一些有关MySql的文章后,很快就上手使用了.在使用的过程中还是出现了一些问题,因为使用的是绿色免安装版的MySql所以在配置的时候出现了一些问题,该篇文章就主要针对MySql绿色版的配置及其使用进行讨论. 一.MySql概述 MySql数据库是有瑞典MySql AB公司开发,现在该公司被Oracle收购属于Oracle所有.同SQL Server类似,它也是基于关系型数据库的数据库管理系统,在Web应用方面MySQL是最好的RDBMS之一,因为它

Nginx错误日志(error_log)配置及信息详解

Nginx状态信息(status)配置及信息详解 nginx与php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有帮助.为了后续的zabbix监控,我们需要先了解一下nginx的状态页. Nginx状态信息(status)介绍 Nginx软件在编译时又一个with-http_stub_status_module模块,这个模块功能是记录Nginx的基本访问状态信息,让使用者了解Nginx的工作状态.要想使用状态模块,在编译时必须增加--with-http_stub

webpack安装配置使用教程详解

webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对于不喜欢使用 jspm测试的朋友可以参考一下. webpack 入门 目录 1 安装 webpack2 初始化项目3 webpack 配置4 自动刷新5 第三方库6 模块化7 打包.构建8 webpack 模板我最近大量使用的是 jspm,但因为用它搭建的前端开发环境中,写测试代码非常困难,而项目又

Nginx配置与应用详解

前言 Nginx是由俄罗斯软件工程师Igor Sysoev开发的一个高性能的HTTP和反向代理服务器,具备IMAP/POP3和SMTP服务器功能.Nginx最大的特点是对高并发的支持和高效的负载均衡,在高并发的需求场景下,是Apache服务器不错的替代品.目前,包括新浪.腾讯等知名网站都已使用Nginx作为Web应用服务器.本文带来的是Nginx配置与应用详解. 基础特性 基本功能 静态资源的web服务器,能缓存打开的文件描述符 反向代理服务器,缓存.负载均衡 支持FastCGI 模块化,非DS

java开源框架SpringSide3多数据源配置的方法详解

原创整理不易,转载请注明出处:java开源框架SpringSide3多数据源配置的方法详解 代码下载地址:http://www.zuidaima.com/share/1781579130801152.htm 在SpringSide 3社区中,不断有人提出多数据源配置的问题,但是时至今日却一直没有一个完美的答案.经过一个星期的折腾,我总算搞清楚了在SpringSide 3中配置多数据源的各种困难并加以解决,在这里,特地把我配置SpringSide 3项目中多数据源的过程写出来,与大家分享. 我使用