前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >路由协议 OSPF

路由协议 OSPF

原创
作者头像
Nujil
修改2023-04-14 11:21:56
6420
修改2023-04-14 11:21:56
举报
文章被收录于专栏:CNotesCNotes

AS自治系统

自治系统:autonomous system。在互联网中,一个自治系统(AS)是一个有权自主地决定在本系统中应采用何种路由协议的小型单位。这个网络单位可以是一个简单的网络也可以是一个由一个或多个普通的网络管理员来控制的网络群体,它是一个单独的可管理的网络单元(例如一所大学,一个企业或者一个公司个体)。一个自治系统有时也被称为是一个路由选择域(routing domain)。一个自治系统将会分配一个全局的唯一的16位号码,有时我们把这个号码叫做自治系统号(ASN)

路由协议按自治系统分为IGP 和 EGP:

IGP:

内部网关协议(Interior Gateway Protocol,简称IGP)运行在AS内部的路由协议,主要解决AS内部的选路问题,发现、计算路由。

主要有: RIP1/RIP2、 OSPF、ISIS、EIGRP (思科私有协议)

EGP:

外部网关路由协议,运行在AS与AS之间的路由协议,他解决AS之间选路问题。

主要有:BGP 边界网关协议(Border Gateway Protocol,BGP)

按协议类型分类

距离矢量路由协议:

RIP1/2、 BGP (路径矢量协议)、EIGRP (高级距离矢量协议)路由器对全网拓扑不完全了解。是“传说的路由”,A发路由信息给B,B加上自己的度量值又发给C,路由表里的条目是听来的。

链路状态路由协议:

OSPF、 ISIS路由器对全网拓扑完全了解。是“传信的路由”,A将信息放在一封信里发给B,B对其不做任何改变,拷贝下来,并将自己的信息放在另一封信里,两封信一起给C,这样,信息没有任何改变和丢失,最后所有路由器都收到相同的一堆信,这一堆信就是LSDB。然后,每个路由器运用相同的SPF算法,以自己为根,计算出SPF Tree (即到达目的地的各个方案),选出最佳路径,放入路由表中。


OSPF

定义

OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯彻(Dijkstra)算法被用来计算最短路径树。OSPF支持负载均衡和基于服务类型的选路,也支持多种路由形式,如特定主机路由和子网路由等。

作为一种链路状态的路由协议,OSPF将链路状态组播数据LSA(Link State Advertisement)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。

特点

  1. 采用组播更新224.0.0.5 224.0.0.6(串口中只使用224.0.0.5(all ospf routers),在多路访问网络中DR使用224.0.0.5,DRother使用224.0.0.6(all DR router))
  2. 链路状态路由协议,协议号为89,eigrp的为88
  3. 所有的管理距离为110
  4. 现在用的版本v2,无路由环路,支持ICDR和VLSM
  5. 一般支持1万条路由条目
  6. ospf不支持非等价负载均衡,只支持等价负载均衡
  7. 没有自动汇总功能,但是可以手工在任意比特位汇总
  8. OSPF不会周期性更新路由表,而采用增量更新,即只在路由变化时,才会发送更新。

注意:OSPF是间接设置了周期性更新路由的规则,因为所有路由都是有刷新时间的,当达到刷新时间阀值时,该路由就会产生一次更新,默认时间是1800秒。

  1. 支持明文和MD5认证。
  2. 快速响应网络变化,收敛快。

OSPF工作过程

1、建立邻居表

2、形成链路状态数据库

3、形成路由表

建立邻接关系(学习链路状态信息)—>链路状态数据库(–Dijkstra算法)—>最短路径树—>路由表

简单说就是两个相邻的路由器通过发报文的形式成为邻居关系,邻居再相互发送链路状态信息形成邻接关系,之后各自根据最短路径算法算出路由,加入OSPF路由表,OSPF路由与其他路由比较后优的加入全局路由表。

OSPF工作原理

OSPF的简单说就是两个相邻的路由器通过发报文的形式成为邻居关系,邻居再相互发送链路状态信息形成邻接关系,之后各自根据最短路径算法算出路由,放在OSPF路由表,OSPF路由与其他路由比较后优的加入全局路由表。整个过程使用了五种报文、三个阶段、三张表。

五种报文

  1. Hello

hello包的作用有3个:

(1)发现、建立、维护邻居关系

(2)选举DR与BDR:

为减小多路访问网络中OSPF流量,OSPF会选择一个指定路由器(DR)和一个备份指定路由器(BDR)。当多路访问网络发生变化时,DR负责更新其他所有OSPF路由器。BDR会监控DR 的状态,并在当前DR发生故障时接替其角色。

(3)确保双向通信

2. DBD(Database Description)

LSDB的描述信息,主从关系,包含路由的摘要信息。

3. LSR(Link state request)

用于向相邻的OSPF路由器请求部分或全部的数据,这种数据包是在当路由器发现其数据已经过期时才发送的。 在收到对方的DD报文之后,和本地进行比较DD报文就会知道我缺少什么路由条路(某条LSA信息),这个时候本路由器会发送LSR请求具体的LSA。

4. LSU(Link state update):

用来回应LSR该条路由的完整信息。在OSPF中,只有LSU需要显示确认。

5. LSAck

用来对LSU确认

OSPF的3个表

  • 邻居表:邻居路由器的信息 show ip ospf neighbor
  • 拓扑表:也叫做链路状态数据库LSDB(link-state database)
  • 路由表:在LSDB的基础上 运行SPF算法产生最优路由放入路由表 show ip route ospf

三个阶段

  • 邻居发现: 通过发送Hello报文形成邻居关系。
  • 路由通告: 邻居间发送链路状态信息形成邻接关系。
  • 路由计算: 根据最短路径算法算出路由表。

OSPF五种网络类型

  • 点到点网络(point-to-point):连接一对路由器,像T1,DS-3或者SONET链路。组播224.0.0.5
  • 广播型网络(broadcast):连接多台路由器,像以太网,令牌环和FDDI,DR和BDR使用组播地址224.0.05,DROTHER使用组播地址224.0.0.6
  • 非广播多路访问型网络(NBMA):连接多台路由器,但是没有广播数据包的能力,像X.25,帧中继和ATM等,单播
  • 点到多点网络(point-to-multipoint):NBMA网络的一个特殊配置,可以看作是一群点到点链路的集合。单播
  • 虚链路(Virtual-link):单播

OSPF建立邻居的条件

  • hello and dead interval(hello时间和dead时间):即路由器之间的hello时间和dead时间必须一致,否则无法形成邻居。
  • 相同的区域(aera-id):即路由器之间必须配置在相同的OSPF区域,否则无法形成邻居。
  • Authentication(认证):如果有认证,路由器之间必须配置相同的认证密码,如果密码不同,则无法形成邻居
  • 相同的区域末节标示(stub area flag):路由器之间的末节标签必须一致,即处在相同的末节区域内,否则无法形成邻居。

注:OSPF只能使用接口的Primary地址建立邻居,不能使用secondary建立邻居。路由器双方接口要么都为手工配置地址(numbered)要么都为借用地址(umnumbered),否则无法建立邻居

OSPF建立邻居的7个状态:

  • Down:

刚刚连接,还没有发送hello包的状态。

  • Init:

发送hello包,但是没有收到对方的hello包(attempt:NBMA特有)

  • Two-Way:

收到hello包,接着发送hello包,建立邻居关系,

选举DR与BDR,但OSPF邻居不一定会交换LSA,如果不需要交换LSA,则永远停留在此状态。(比如:Drother与Drother之间将永远停留在two-way状态,因为它们之间不需要交换LSA) 达成邻接状态。

  • Exstart:

使用DBD包选举主从关系,ROUTER-ID数字大的为主路由器,另一端的为从路由器,由主路由器先向从路由器发送信息。在选举DR和BDR的网络环境中,并不一定DR就是主路由器,BDR就是从路由器,因为DR和BDR可以通过调整接口优先级来控制,所以DR也许是因为优先级比BDR高,而router-id并不比BDR高。在任何网络环境下,OSPF在交换LSA之前,都需要确定主从关系。这里的DBD包只有包头,如果MTU不匹配,就会卡在这个状态。

  • Exchange:

交换DBD的过程,DBD只是LSA的简单描述,只包含LSA的一些头部信息,收到DBD的路由器会和自己的链路状态数据库做对比,确定需要哪些LSA的完整信息,就会发送LSA请求给邻居。LSAck包,此时知道自己缺少什么

  • Loading:

使用LSR,LSU,LSAck包,进行LSA的交流,邻居根据收到的LSR,向对方回复LSU,LSU包中包含的就是LSA的信息,真正的数据同步过程

  • Full:

完全临接关系,此时LSDB是同步的。等到OSPF都收到了邻居回复的所有LSU,那么此时的数据库状态就变成了收敛状态,即FULL状态,但此时只是数据库已经同步,路由表却还在计算当中。

注意点:

邻居:物理上直连,只交换hello包

邻接(adjacency):建立逻辑上关系,two-way,不仅交换hello包,还要交换LSA

完全邻接:拓扑数据库同步,full

OSPF报文格式:

在OSPF路由协议的数据包中,其数据包头长为24个bit,包含如下8个字段:

  • Version number: 定义所采用的OSPF路由协议的版本。
  • Type: 定义OSPF数据包类型。OSPF数据包共有五种 (Hello,DBD,LSR,LSU,LSAck)
  • Packet length: 定义整个数据包的长度。
  • Router ID: 用于描述数据包的源地址,以IP地址来表示。
  • Area ID: 用于区分OSPF数据包属于的区域号,所有的OSPF数据包都属于一个特定的OSPF区域。
  • Checksum: 校验位,用于标记数据包在传递时有无误码。
  • Authentication type: 定义OSPF验证类型。
  • Authentication: 包含OSPF验证信息,长为8个字节。


Hello 报文:

  • Network Mask:发送Hello报文的接口所在网络的掩码,如果相邻两台路由器的网络掩码不同,则不能建立邻居关系。
  • HelloInterval:发送Hello报文的时间间隔。如果相邻两台路由器的Hello间隔时间不同,则不能建立邻居关系。
  • Rtr Pri:路由器优先级。如果设置为0,则该路由器接口不能成为DR/BDR。
  • RouterDeadInterval:失效时间。如果在此时间内未收到邻居发来的Hello报文,则认为邻居失效。如果相邻两台路由器的失效时间不同,则不能建立邻居关系。
  • Designated Router:指定路由器的接口的IP地址。
  • Backup Designated Router:备份指定路由器的接口的IP地址。
  • Neighbor:邻居路由器的Router ID


DBD 报文格式:

Database Description:两台路由器进行数据库同步时,用DD报文来描述自己的LSDB,内容包括LSDB中每一条LSA的Header(LSA的Header可以唯一标识一条LSA)。LSA Header只占一条LSA的整个数据量的一小部分,这样可以减少路由器之间的协议报文流量,对端路由器根据LSA Header就可以判断出是否已有这条LSA。

  • Interface MTU:在不分片的情况下,此接口最大可发出的IP报文长度。
  • I(Initial):当发送连续多个DD报文时,如果这是第一个DD报文,则置为1,否则置为0。
  • M(More):当连续发送多个DD报文时,如果这是最后一个DD报文,则置为0。否则置为1,表示后面还有其他的DD报文。
  • MS(Master/Slave):当两台OSPF路由器交换DD报文时,首先需要确定双方的主(Master)从(Slave)关系,Router ID大的一方会成为Master。当值为1时表示发送方为Master。
  • DD Sequence Number:DD报文序列号,由Master方规定起始序列号,每发送一个DD报文序列号加1,Slave方使用Master的序列号作为确认。主从双方利用序列号来保证DD报文传输的可靠性和完整性。


LSR 报文格式:

Link State Request :用于向相邻的OSPF路由器请求部分或全部的数据,这种数据包是在当路由器发现其数据已经过期时才发送的。 在收到对方的DD报文之后,和本地进行比较DD报文就会知道我缺少什么路由条路(某条LSA信息),这个时候本路由器会发送LSR请求具体的LSA。

  • LS type:LSA的类型号。例如Type1表示Router LSA。
  • Link State ID:链路状态标识,根据LSA的类型而定。
  • Advertising Router:产生此LSA的路由器的Router ID。

LSU 报文格式:

Link state update:这是对LSR的响应,即通常所说的LSA数据包。


LSAck报文格式

Link state acknowledgment:是对LSA数据包的响应。

LSAck报文用来对接收到的LSU报文进行确认,内容是需要确认的LSA的Header。一个LSAck报文可对多个LSA进行确认。


OSPF中的ROUTER-ID

  • router-id只在本地有效
  • 只是起到一个标识作用,每一个OSPF路由器定义一个身份
  • 在网络中绝对不可以有重名

确定router-id的方法为:

  1. 手工指定router-id,
  2. 路由器上活动的loopback接口中IP地址最大的,
  3. 如果没有活动的loopback接口,则选举活动物理接口IP地址最大的

DR和BDR

为减小多路访问网络中OSPF流量,OSPF会选择一个指定路由器(DR)和一个备份指定路由器(BDR)。当多路访问网络发生变化时,DR负责更新其他所有OSPF路由器。BDR会监控DR 的状态,并在当前DR发生故障时接替其角色。

BDR和DR/DRother建立完全邻接关系(Full),而其他非指定路由器DRother之间建立部分连接关系,也称为双向邻居关系(Two-Way)。

DR和BDR的选举方法

自动选举

网段上Router ID最大的路由器将被选举为DR,第二大的为BDR。

手工选举

  1. 比较接口优先级(接口优先级的范围0-255,默认为1,0表示不参与选举),选举优先级最高的成为DR,优先级数字越大,表示优先级越高,被选举为DR的几率就越大,次优先级的为BDR。 ip ospf priority
  2. 比较router-id大小,如果在优先级相同的情况下,ROUTER-ID最大的成为DR,其次是BDR,数字越大,被选举为DR的几率就越大。

如果没有路由器宣称自己是DR,那么选举的BDR会成为DR

  1. 物理接口的IP-address(大的成为DR,次之成为BDR).最大的物理接口(up状态的)不一定要运行OSPF,即使以后这个接口坏了,还会继续使用

OSPF的组播

OSPF协议号89 组播地址224.0.0. 5和224.0.0.6

1、DRothers向DR/ BDR发送DBD、LSR或者LSU时目标地址是224.0.0.6 (AllDRouter) ;或者理解为: DR/BDR侦听224.0.0.6

2、DR/BDR向DRothers发送更新的DBD、LSR或者LSU时目标地址是224.0.0.5 (AllSPFRouter) ;或者理解为: DRothers侦听224.0.0.5

OSPF区域类型

OSPF路由协议引入区域的概念。区域:有相同的区域标志的一组路由器和网络的集合,在同一个区域内的路由器有相同的链路状态数据库。就是把运行在同一个ospf AS内的路由器分割成多个区域。这样便于结构化网络的设计和管理。当然这个不是主要目的,主要目的是控制我整个ospf网络的LSA的泛洪和路由条目的有效发送。ospf的区域范围是0-4294967295。

骨干区域area 0 :

骨干区域负责区域间路由信息传播。作为中央实体,其他区域与之相连,骨干区域编号为 0,在该区域中,各种类型的 LSA 均允许发布。

非骨干区域:

传播信息要经过骨干区域转发;

标准区域 :

除骨干区域外的默认的区域类型,在该类型区域中,各种类型的 LSA 均允许发布。

末梢区域 :

即 STUB 区域,该类型区域中不接受关于 AS外部的路由信息,即不接受类型 5 的 AS 外部LSA,需要路由到自治系统外部的网络时,路由器使用缺省路由(0.0.0.0),末梢区域中不能包含有自治系统边界路由器 ASBR。

完全末梢区域:

该类型区域中不接受关于 AS 外部的路由信息,同时也不接受来自 AS 中其他区域的汇总路由,即不接受类型 3、类型 4、类型 5 的 LSA,完全末梢区域也不能包换有自治系统边界路由器 ASBR。

划分区域的好处

  • 减少了路由条目 -----域间汇总,手动命令
  • ARE1里的路由DOWN了,不会影响其他区域,汇总路由在所有明细DOWN了,才会消失
  • 划分区域后,某些LSA只会在特定区域传播,不会传播到其他区域
  • 可以节省内存,CPU

区域划分规则

  • 所有在ARE0 区域的都叫做骨干路由器
  • 有接口在ARE0,又有接口在其他区域叫ABR
  • 非骨干区域都必须和骨干区域相连

OSPF的设计原则

  • 必须要有区域0(区域0=backbone)
  • 其他区域必须要直接连接到区域0
  • 区域的分解点在路由器上
  • 一个路由器最好不要超过3个区域
  • 一个区域中的路由器最好不要超过50台
  • 同一个区域的LSDB是相同的
  • ABR:至少有一个接口不是出于区域0的路由器叫做ABR(Area Border Router)
  • ASBR:至少运行一个除了OSPF以外的路由协议,并且重分发到OSPF中
  • 分段区域(partitioned area)非骨干区域变为分段区域,有可能不会中断通信,自动产生两个区域,骨干区域分段不行
  • 孤立区域(isolated area)孤立区域没有链路路径和网络相连

OSPF有6种区域:

  • 骨干区域:backbone:区域0
  • 标准区域:标准区域全路由,LSA1,2,3,4,5 什么都不配的除了区域0的就是标准区域
  • stub区域:LSA1,2,3
  • Totally stub区域:LSA1,2
  • NSSA区域:LSA1,2,3,7
  • Totally NSSA区域:LSA1,2,7
  • 凡是带Totally的是思科私有的
  • 如果stub区域内存在ASBR,此时用NSSA区域
  • LSA7号类型只存在在NSSA和totally stub区域,所以有一个“7转5”的过程

LSA(Link State Advertisement ,链路状态通告)的类型:

LSA1 (router link)

内容:路由器直连接口和COST值

  • 任何一台OSPF路由器都会产生,每一台OSPF路由器的每一个OSPF接口都会有自己的链路状态产生,只能在单个区域内传递,本区域内有效,ABR不能将LSA1转发到另外一个区域,并且没有任何权利修改LSA1
  • 由谁产生:产生LSA1的路由器的router-id

LSA2 (network link) 网络LSA

内容:拓扑信息和掩码

  • 只存在于MA网络(广播,多路访问) ,只有需要在选举DR,BDR的网络类型中才会产生,并且只是DR产生,BDR没有权利产生,
  • 只能在本区域传播,DR去通告2类LSA,
  • 本区域内有效 O来表示
  • 由谁产生:因为LSA2是由DR产生的,所以LSA2的link state id是DR的接口地址。

Type-1 LSA( Router LSA ,路由器 LSA )和 Type-2 LSA( Network LSA ,网络 LSA )是描述区域内的网络拓扑和 IP 网段信息,只能在区域内泛洪。有了这两种 LSA ,区域内的路由器就可以计算出区域内各个网段的路由,这些路由叫做区域内部路由

LSA3 (summary link)

  • 是将一个区域的LSA1,LSA2发向另一个区域时的汇总和简化,ABR其实就是将LSA1,LSA2汇总和简化,变成LSA3汇总路由发往其他区域,产生oia。
  • 只能由ABR产生 OIA表示
  • 由LSA1,2类型转化而来
  • 由谁产生:把LSA的1,2号类型转化为3号类型,就类似于路由,由ABR产生

Type-3 LSA( Network Summary LSA ,网络汇总 LSA )用于描述一个区域内的路由信息,并在其它区域内传递。也就是说,这种 LSA 用来告诉其它区域到达生成 LSA 这个区域的路由,这些路由叫做区域间路由。

LSA4(ABSR summary link ) :告诉其它区域asbr在哪

  • Type-4 LSA( ASBR Summary LSA ,ASBR 汇总 LSA ),用于描述 ASBR 的 Router-ID 。它不会主动生成,触发条件是 ABR 收到一个 Type-5 LSA ,目的是让区域内的路由器知道如何到达 ASBR 。
  • 由ABR产生
  • 用来向其他区域通告本区域有一个ASBR,因为5类的LSA通告时,通告路由永远是ASBR,但是OSPF里其他区域的路由不知道ASBR在哪,需要4类LSA通告ASBR的位置
  • show ip ospf border-routers
  • 通过ASBR汇总LSA通告的目的地址总是一个主机地址,因为它是一条到达一台路由器的路由。
  • 由谁产生:ASBR的router-id,但是穿越ABR的时候,由LSA的1号类型变成LSA的4号类型,由ABR产生

LSA5 (EXTERNAL link) 外部路由

  • Type-5 LSA( AS External LSA ,AS 外部 LSA )用来描述 OSPF 域外的路由,它一旦生成,会在整个 OSPF 域内扩散。OSPF 域外的路由信息来源,通常是静态路由或其它路由协议的路由。
  • 外部路由重分布进OSPF时产生的,并且是由ASBR产生,LSA中包含ASBR的router-id,任何路由器都不允许更改该router-it,LSA5中还包含forward address,对于LSA的metric值计算与选路规则也有所不同。
  • 传播范围:整个OSPF域,但是不属于任何一个AREA域,
  • 通过ASBR通告
  • 通告域外路由
  • ASBR一开始并不是ASBR。当重分布的动作产生后,这个路由才能成为ASBR

通过show ip ospf border-routers看

重分布试验,看路由表是O E2,表示5类LSA的2类路由条目,OIA是3类LSA

OE1和OE2的区别:OE2不累加COST值,整个不同路由协议重分布进OSPF时间,有一个SEED COST值,是恒为20的,不进行累加,所以OE2没办法体现路由的路径开销。若想知道实际的COST值则改为OE1路由:redistribute rip subnets metric-type 1

在重分布的时候,如果命令为redistribute rip subnets 就为OE2

如果是redistribute rip subnets metric-type 1,就会成为OE1

串口COST会64的进行累加,以太网为10

(1)由ASBR产生 oe2

(2)整个OSPF域内有效(除了stub totally stub nssa)

R3(config)#router ospf 1

R3(config-router)#redistribute rip subnets 默认OE2

R3(config-router)#redistribute rip subnets metric-type 1 改成OE1

由谁产生:ASBR产生。可以穿越全网

LSA7 (NSSA Link)

  • 因为NSSA区域可以将外部路由重分布进OSPF进程,而NSSA不是一般的常规区域,所以在NSSA将外部路由重分布进OSPF时,路由信息使用7来表示,LSA7由NSSA区域的ASBR产生,也只能在NSSA区域内传递,若要传递到NSSA之外的其他区域需要同时连接NSSA与其他区域的ABR将LSA7转变成LSA5后再转发。
  • NSSA区域的ASBR产生的
  • 仅存在在NSSA区域和totally NSSA区域中 外部路由信息
  • ABR上有一个“7转5” (只有7转5,没有5转7)
  • 关于7转5:是在NSSA区域的ABR上实现的
  • 由谁产生:由NSSA区域的重分发设备产生,当穿越ABR的时候,由ABR变成5号类型。

LSA6 MOSPF中使用,思科的路由器不支持MOSPF 多协议ospf

LSA8 在BGP中作为扩展属性

LSA9-11 在MPLS中使用 多协议标签交换

区域内部路由器也有可能是ASBR

STUB区域:末节区域,隔离外部路由

区域规则:

  • 如果在你的区域边界有多个ABR的时候,有可能出现选路的原则。(过滤4类和5类路由,存在1类,2类和3类LSA)。当配置STUB区域,会在ABR上打入条默认路由。如果有多个ABR,那就不知道从哪走,这就需要COST值来起作用。走COST值小的那条路,
  • 如果把某个区域配置成STUB,这个区域所有的路由器都必须配置成STUB区域。
  • 在STUB区域中是不能出现ASBR的。
  • 不能把AREA0配置成STUB区域。
  • 作为STUB区域不能在外挂其他OSPF其他区域。因为已经是末节区域了。
  • 变成stub后,可以正常接收OSPF区域内的所有路由,但是收不到RIP,EIGRP等其他以LSA4,5号类型灌入的路由,但是这时ABR设备给STUB区域灌入一条缺省

区域的作用:

  • 过滤LSA4/5,由ABR下放默认路由为LSA3类的 COST值为1
  • stub区域的配置:E-bit为0
  • 所有stub区域内的路由器在进程下打:area 1 stub
  • 会产生一个O*IA

TOTALLY STUB区域:完全末节/梢区域(思科私有):

在STUB区域的基础上把区域间的路由也过滤掉

  • 其他区域的LSA3也收不到了,同时RIP,EIGRP的LSA4,5都收不到,但是由ABR给totally stub 区域灌入3号缺省
  • 不仅过滤5类LSA,连3类LSA也过滤掉。
  • 作用:过滤3/4/5类LSA和路由
  • 命令:在ABR上 area 区域 stub no-summay
  • 注意:首先此区域的路由器必须都先为STUB,然后只要在ABR上做完全末梢区域。

Totally stub区域的配置:

  • 在ABR上打:area 1 stub no-summary
  • 其他所有路由器上打:area 1 stub
  • 会产生一个O*IA

NSSA区域:(not-so-stubby area)完全非末节区域,在stub区域中有ASBR的存在。

  • 过滤4类和5类LSA,并且在此区域中可以有ASBR,并且产生7类LSA,7类LSA只在NSSA区域才有。
  • 和ASBR靠近的别的路由协议产生的5类LSA,是不会被过滤的,本来的5类LSA变成了7类LSA,当7类LSA到达NSSA区域边界的ABR上时,会变成5类LSA通过ABR发往OSPF其他区域。而远端的非OSPF的协议产生的5类LSA,会被过滤掉。
  • 命令:area 1 nssa (和stub区域一样,nssa区域中的所有设备都有打入这条命令)
  • 在此区域的ABR上可以看到,并没有一条默认路由下放,这是和stub区域的一个不同之处,在nssa区域的ABR上必须手动敲入一条默认路由。在NSSA区域的ABR上并在OSPF路由进程中敲入: area 区域 nssa default-information originate.

可以由SHOW看到,出现了一条默认路由为N2开头的路由,此为7类的路由。通过在ABR上SHOW 路由表可以看到,此条路由的COST值为一,由于不累加,此COST值得默认是恒为一。在ASBR上可以看到数据库,有7类的LSA,并且会显示所在区域,和5类LSA不同。

在show ip ospf border-routers?

可以看到,NSSA区域的ABR,在列表中显示变成ASBR,是因为虽然7类LSA变成了5类LSA,它也是通过这个ABR变的,只要这个设备发送了5类LSA,那它就是ASBR,所有ABR的设备会变成ASBR。虽然他仍然在OSPF中,也没外界不同的路由协议。

  • NSSA区域的配置:P-bit为1
  • 所有NSSA区域的路由器在进程下打:area 1 nssa
  • 默认情况下没有产生缺省路由----特别注意
  • NSSA作用:过滤4/5类LSA如果想让NSSA区域产生缺省路由,在NSSA区域的ABR上打:area 1 nssa default-information-originate ,此时产生的缺省路由标志为O*N2

TOTALLY NSSA:在NSSA基础上将域间的路由过滤掉

  • Area 区域 nssa no-summary,过滤了三类LSA,并生成一条3类的默认路由。
  • 如果在ABR上加上其他协议的环回口进来,通过ABR发往其他OSPF区域的,也为7类转5类。在ASBR上可以看到是7类。如果很多这样的环回口,在ABR上可以过滤7类的路由。在ASBR上可以看到效果。7类被过滤掉了。
  • 命令为:在ABR上的OSPF进程中,area 1 nssa no-redistribution default-information-originate (后面可以跟no-summary过滤3类)注意,不能单独打no-redistribution,要组合default-information-originate下放默认路由。或者因为no-summary参数也能下放路由,如果有过滤3类的需要,也可以命令打为nssa no-redistribution no-summary
  • 同样也会下放默认路由,3条都打也可以,不建议没有必要。
  • Totally NSSA区域的配置:在ABR上:area 1 nssa no-summary
  • 其他路由器上打:area 1 nssa
  • 会产生一个O*IA
  • show ip ospf border-routers

注意:

1.在末节区域下,ABR自动发出的默认路由,metric值默认为1,可通过命令area area-id default-cost cost修改,默认路由除了默认的cost以外,还会累加真实接口的cost值

2.骨干区域不能配置为任何末节区域

3.当将某个区域配置为末节区域后,则区域中所有路由器都必须为末节区域,因为配置为末节区域的路由器上所有接口发出的hello包中都会有末节标签,所以如果对方没有末节标签,则不能成为邻居

总结表:

作用

是否下放默认路由

接收区域间路由

是否可以重分布外部路由

Stub

过滤LSA4/5

是(LSA3)SEED COST=1

Totally Stub

过滤LSA3/4/5

是(LSA3)SEED COST=1

NSSA

过滤LSA4/5

否(defult:LSA7)COST=1

Totally NSSA

过滤LSA3/4/5

是(no-su:LSA3)COST=1

总结四种特殊区域:E-bit位设置为0

1.凡是带totally的是思科私有的

2.默认情况下,stub,totally stub,totally nssa区域默认会产生O*IA,nssa区域不会产生缺省路由

3.如果想让nssa区域产生缺省路由,在ABR上打:area 1 nssa default-information-originate

4.准则:特殊区域的ASBR不会告诉给其他区域,其他区域的ASBR也不会告诉给特殊区域

参考自:

https://zhuanlan.zhihu.com/p/463267606

https://blog.csdn.net/qq_47855463/article/details/115122239

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • AS自治系统
    • 路由协议按自治系统分为IGP 和 EGP:
      • IGP:
        • EGP:
          • 按协议类型分类
          • OSPF
            • 定义
              • 特点
                • OSPF工作过程
                  • OSPF工作原理
                    • 五种报文
                      • OSPF的3个表
                        • 三个阶段
                          • OSPF五种网络类型
                            • OSPF建立邻居的条件
                              • OSPF建立邻居的7个状态:
                                • OSPF报文格式:
                                  • Hello 报文:
                                    • DBD 报文格式:
                                      • LSR 报文格式:
                                        • LSU 报文格式:
                                          • LSAck报文格式
                                            • OSPF中的ROUTER-ID
                                              • 确定router-id的方法为:
                                            • DR和BDR
                                              • DR和BDR的选举方法
                                            • OSPF的组播
                                              • OSPF区域类型
                                                • 骨干区域area 0 :
                                                • 非骨干区域:
                                                • 标准区域 :
                                                • 末梢区域 :
                                                • 完全末梢区域:
                                                • 划分区域的好处
                                                • 区域划分规则
                                                • OSPF的设计原则
                                                • OSPF有6种区域:
                                              • LSA(Link State Advertisement ,链路状态通告)的类型:
                                                • LSA1 (router link)
                                                • LSA2 (network link) 网络LSA
                                                • LSA3 (summary link)
                                                • LSA4(ABSR summary link ) :告诉其它区域asbr在哪
                                                • LSA5 (EXTERNAL link) 外部路由
                                                • LSA7 (NSSA Link)
                                                • STUB区域:末节区域,隔离外部路由
                                                • TOTALLY STUB区域:完全末节/梢区域(思科私有):
                                                • Totally stub区域的配置:
                                                • NSSA区域:(not-so-stubby area)完全非末节区域,在stub区域中有ASBR的存在。
                                                • TOTALLY NSSA:在NSSA基础上将域间的路由过滤掉
                                              • 总结表:
                                              相关产品与服务
                                              负载均衡
                                              负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
                                              领券
                                              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档