OSPF 特殊区域 — 基本互通
配置思路:
1.配置终端设备
-IP地址+网关
2.配置路由器
-配置基础信息
undo terminal monitor
system-view
sysname R
-配置接口IP地址
3.配置OSPF协议
-R1/2/3/4/5/6,都运行基本的OSPF配置
-在R6上添加去往 PC3的静态路由
ip route-static 192.168.3.0 24 192.168.67.7
-在R6上将静态路由,宣告进入到OSPF,为了让R1可以学习到该路由
ospf 1
import-rotue static
-在R7上添加静态的默认路由
ip route-static 0.0.0.0 0.0.0.0 192.168.67.6
4.验证与测试
PC-1 ping PC-2 ,通;
PC-1 ping PC-3 ,通;
OSPF特殊区域:
OSPF区域的类型:
-骨干区域
-非骨干区域
@普通区域
@特殊区域
*stub
*totally stub
*nssa
*totally nssa
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
什么是“特殊区域”?
-不要4/5类LSA的区域,就是特殊区域
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
为什么需要将1个区域设置为特殊区域?
-为了保护一个区域,不受到那些不稳定的链路的影响。
因为5类LSA表示的是外部路由,外部路由的稳定性不能由公司自己决定。
同时,5类LSA的特点就是:可以传输OSPF网络的任何地方,
所以,如果5类LSA不稳定的话,那么影响的就是整个OSPF网络。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Stub 区域:末梢区域
-不允许接收4/5类LSA
-允许接收1/2/3类LSA
-该区域的ABR会自动的产生1个3类LSA表示的默认路由;
-配置命令:
@在该区域的所有路由器上,配置以下命令:
ospf 1
area 12
stub -> 将区域12配置为 stub 区域
优点:
该区域的设备不会受到外部路由的影响;
缺点:
依然会受到OSPF其他区域的路由的影响;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Totally Stub 区域: 完全末梢区域
-不允许接收3/4/5类LSA
-允许接收1/2类LSA
-该区域的ABR会自动的产生1个3类LSA表示的默认路由;
-配置命令:
@首先,将该区域配置为 stub 区域;
@其次,仅在stub区域的 ABR 上,配置以下命令:
R2:(区域12的ABR)
ospf 1
area 12
stub no-summary -> 将区域12配置为 stub 区域
即 R2 不向区域 12 发 3/4/5 类LSA;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在某些特定的场景中,有些区域是不允许接收5类LSA表示的外部路由的,
主要是为了保护这个区域,
但是,有可能该区域还存在“需要引入外部路由”的需求,
所以,OSPF 就开发出了另外一种类型的特殊区域: NSSA
-在NSSA区域中,是不允许出现5类LSA的,但是依然允许所谓的“外部路由”,
只不过在 NSSA 区域中表示外部路由的时候,我们变换了一个格式,
即使用 7 类 LSA 表示外部路由。
NSSA:(not so stub area )
-不允许接收4/5类LSA
-允许接收1/2/3/7类LSA
-该区域的 ABR 会自动的产生1个 7 类LSA表示的默认路由;
-配置命令:
@在该区域的所有路由器上,配置以下命令:
ospf 1
area 12
nssa -> 将区域12配置为 nssa 区域
优点:
该区域的设备不会受到外部路由的影响;
同时,
自己本区域还可以引入外部路由;
缺点:
依然会受到OSPF其他区域的路由的影响;(因为NSSA区域是允许3类LSA的)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Totally NSSA 区域: 完全 NSSA 区域
-不允许接收3/4/5类LSA
-允许接收1/2/7类LSA
-该区域的ABR会自动的产生1个 3类 LSA表示的默认路由;
同时也产生1个 7类 LSA表示的默认路由;
-配置命令:
@首先,将该区域配置为 NSSA 区域;
@其次,仅在 NSSA 区域的 ABR 上,配置以下命令:
R2:(区域12的ABR)
ospf 1
area 12
nssa no-summary -> 将区域12配置为 stub 区域
即 R2 不向区域 12 发 3/4/5 类LSA;
但是允许该区域出现 7 类 LSA ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
总结:
1.为了保护一个区域,才会将其设置为“特殊区域”
2.骨干区域,是不允许配置为“特殊区域”的
3.5类LSA,是在普通区域中表示外部路由,可以传遍整个OSPF网络
4.7类LSA,仅在特殊区域中表示外部路由,只能在 NSSA 区域内传输
============================================================================
OSPF 汇总:
-指的是将很多OSPF 信息,变成很少的 OSPF 信息;
OSPF 汇总对象:
-在设备之间传递的 LSA (链路状态数据库信息)
OSPF 汇总好处:
1.可以节省邻居设备的系统资源
2.减小邻居设备的路由表大小,从而可以提高转发数据的速度
3.可以增强 OSPF 网络的稳定性
OSPF 汇总类型:
1.3类LSA汇总
-在ABR上进行配置
-配置命令:
R2:(3类LSA汇总)
ospf 1
area 12
abr-summary 10.10.0.0 255.255.0.0 // 将路由汇总为 10.10.0.0/16
2.5/7类LSA汇总
-在ASBR上进行配置
-配置命令:
R5:(5类LSA汇总)
ospf 1
import-route direct -> 将本地的直连网段引入到OSPF
asbr-summary 10.50.0.0 255.255.0.0 //将外部路由汇总为 10.50.0.0/16
验证命令:
display ospf lsdb -> 查看 OSPF 数据库
display ip routing-table protocol ospf -> 查看 OSPF 路由表
=======================================================================
OSPF虚链路
-概述
虚链路,是 OSPF 网路中一个永远属于 OSPF 骨干区域的“虚拟链路”
虚链路,必须在两个 ABR 上建立;两个设备必须在同一个区域中
虚链路,建立过程中所需要的“穿越的中间区域”,不能是区域0,也不能是特殊区域
虚链路,配置命令 vlink-peer 后面跟的是对方设备的router-id,不是接口的IP地址
-应用场景:
问题:
通常情况下,正常的 OSPF 网络设计,必须是“非骨干区域连接着骨干区域”
但是,有时候因为工程等方面的原因,会出现“非骨干区域”没有直接连接到
骨干区域,
那么,该非骨干区域与其他区域之间,是无法互通的。
解决:
为了解决上述的“不规则的 OSPF 网络区域设计”,我们可以使用“虚链路”,
将没有与骨干区域相连的区域,通过虚链路,连接到骨干区域上;
-配置:
@在哪里配置
@在想要成为ABR的设备上,以及与该设备在同一个区域的 ABR 上进行配置
@怎么配置
*命令如下:
ABR/想要成为ABR的设备上:
ospf 1
area {穿越的区域的号码}
vlink-peer x.x.x.x // x.x.x.x 为对方设备的router-id
-验证命令:
display ospf vlink ---> 查看 OSPF 虚链路的状态,应该是 Full
===============================================================================
import-route 和 default-route-advertise 的区别:
@import-route ,可以将任何类型的路由,导入到 OSPF 协议中;
但是,
不能将 “默认路由 - 0.0.0.0/0 ”导入到OSPF中;
@default-route-advertise,啥都干不了,只能“导入默认路由”。
-有条件
#自己路由表中,得有默认路由;
#通过上述命令,就可以让 OSPF 产生默认路由了:
ospf 1
default-route-advertise // 产生OSPF默认路由;
-强制性
#不管自己路由表中,是否存在默认路由,
都可以通过下面的命令,让 OSPF 产生默认路由:
ospf 1
default-route-advertise always // 永远产生OSPF默认路由
----------------------------------------------------------------
@default : 默认
@route : 路由
@advertise : 通告(发送/发出)
@import : 导入/引入
@vlink : virtual link ,虚链路;