HCIP笔记(第四章)

一、OSPF基础

1、技术背景(RIP中存在的问题)

  • RIP中存在最大跳数为15的限制,不能适应大规模组网
  • 周期性发送全部路由信息,占用大量的带宽资源
  • 路由收敛速度慢
  • 以跳数作为度量值
  • 存在路由环路可能性
  • 每隔30秒更新

2、OSPF协议特点

  • 没有跳数限制,适合大规模组网
  • 使用组播更新变化的路由和网络信息
  • 路由收敛快,可以触发更新
  • 以COST作为度量值
  • 采用SPF算法有效避免环路
  • 每隔30分钟周期性更新----LSA
  • 在互联网上大量使用,是运用最广泛的路由协议

注意:OSPF传递的是拓扑信息和路由信息,RIP传递的是路由表

3、OSPF三张表

邻居表:记录邻居状态和关系

拓扑表:链路状态数据库(LSDB)

路由表:记录由SPF算法计算的路由,存放在OSPF路由表中

dis ip routing-table pro ospf

4、OSPF数据包(可抓包)

OSPF报文直接封装在IP报文中,协议号89

头部数据包内容:

  • 版本(Version):对于OSPFv2,该字段值恒为2。
  • 类型(Type):该OSPF报文的类型。该字段的值与报文类型的对应关系是:1-Hello;2-DD;3-LSR;4-LSU;5-LSAck。
  • 报文长度(Packet Length):整个OSPF 报文的长度(字节数)。
  • 路由器ID (Router Identification):路由器的OSPF Router-ID。
  • 区域ID (Area Identification):该报文所属的区域ID,这是一个32bit 的数值。
  • 校验和(Checksum):用于校验报文有效性的字段。
  • 认证类型(Authentication Type):指示该报文使用的认证类型。
  • 认证数据(Authentication Data):用于报文认证的内容。
(1)hello:

作用:用来周期保活的,发现,建立邻居关系。

  • 网络掩码(Network Mask):一旦路由器的某个接口激活了OSPF,该接口即开始发送Hello报文,该字段填充的是该接口的网络掩码。两台OSPF 路由器如果通过以太网接口直连,那么双方的直连接口必须配置相同的网络掩码,否则影响邻居关系建立。
  • Hello间隔(Hello Interval):接口周期性发送Hello报文的时间间隔(单位为s)。两台直连路由器要建立OSPF邻居关系,需确保接口的Hello Interval相同,否则邻居关系无法正常建立。
  • 可选项(Options):该字段一共8bit,每个比特位都用于指示该路由器的某个特定的OSPF 特性。Options字段中的某些比特位会被检查,这有可能会直接影响到OSPF邻接关系的建立。(特殊区域的标记)
  • 路由器优先级(Router Priority):路由器优先级,范围:0-255,默认是1,也叫DR优先级,该字段用于DR、BDR 的选举
  • 路由器失效时间(Router Dead Interval):在邻居路由器被视为无效前,需等待收到对方Hello报文的时间(单位为s)。两台直连路由器要建立OSPF 邻居关系,需确保双方直连接口的Router Dead Interval相同,否则邻居关系无法正常建立。缺省情况下,OSPF路由器接口的Router Dead Interval为该接口的Hello Interval的4倍。
  • 指定路由器(Designated Router):网络中DR的接口IP地址。如果该字段值为0.0.0.0,则表示没有DR,或者DR尚未选举出来。
  • 备份指定路由器(Backup Designated Router):网络中 BDR的接口IP地址。如果该字段值为0.0.0.0,则表示网络中没有BDR,或者BDR尚未选举出来。
  • 邻居(Neighbor)。在直连链路上发现的有效邻居,此处填充的是邻居的Router-iD,如果发现了多个邻居,则包含多个邻居字段。
(2)DBD(数据库描述报文):

作用:仅包含LSA摘要

    1. 接口最大传输单元(Interface Maximum Transmission Unit):接口的MTU。
    1. 可选项(Options):路由器支持的OSPF可选项。
    1. DD报文置位符:

I:init位,I=1,这是第一次报文的第一个DD报文,没有携带任何LSA的信息

M:more位,M=1表示后续还有DD报文

MS:master位,MS=1,表示本端为主

    1. DD序列号(DD Sequence Number): DD报文的序列号,在DD报文交互的过程中,DD序列号被逐次加1,用于确保DD报文传输的有序和可靠性。值得注意的是,DD序列号必须是由Master路由器来决定的,而Slave路由器只能使用Master路由器发送的DD序列号来发送自己的DD报文。
    1. LSA头部(LSA Header):当路由器使用DD报文来描述自己的LSDB时,LSA的头部信息被包含在此处。一个DBD报文可能包含一条或多条LSA的头部。
(3)LSR:

作用:请求自己没有的或则比自己更新的链路状态详细信息

链路状态类型,链路状态ID,通告路由器 ---- "LSA三元组" --- 通过着三个参数可以唯一的标识出一条LSA

(4)LSU:链路状态更新信息

作用:把对方所需的几条LSA的详细信息,打包成一条LSU发给对方

一个LSU报文可以包含多个LSA

当路由器感知到网络发生变化时,也可以触发LSU报文的泛洪,以便将该变化通知给网络中的其他OSPF 路由器。

在MA网络中,DROTHER路由器向224.0.0.6这个组播地址发送LSU报文,而DR及 BDR会侦听这个组播地址,DR在接收LSU报文后向224.0.0.5(网络中运行ospf协议的路由)发送LSU报文,从而将更新信息泛洪到整个OSPF区域,所有的OSPF 路由器都会侦听224.0.0.5这个组播地址。

总结:

224.0.0.5所有运行OSPF的接口的路由器会监听,HELLO的目标地址:224.0.0.5

224.0.0.6所有DR\BDR的接口会监听

(5)LSAck:

对LSU的确认

报文中包含着路由器所确认的LSA的头部(每个LSA头部的长度为20byte)

5、OSPF工作过程

邻居:双方通过hello报文,相互认识

邻接:邻居关系建立好后,进行一系列报文交互,当两台路由器LSDB同步完成,开始独立计算路由时,这两台路由器形成了邻接关系

(1)确认可达性,建立邻居

router ID :

标明的是路由器身份

手工配置:IPV4地址格式

自动选举:

环回口:IP地址大的优先

物理口:IP地址大的优先

2-way前,确认DR/BDR

选举原因:广播网络中使路由信息交换更加高速有序,可以降低需要维护的邻接关系数量

邻居或者邻接关系过多缺点:

(1)大量产生hello包,消耗CPU性能

(2)产生重复路由通告,消耗CPU性能

(3)任何一台路由器的路由变化都会导致多次传递,浪费了带宽资源

选举范围:每个网段都需要选出一个DR和BDR

选举规则:1.优先级大的优先,默认优先级是1,(0-255);2.router-id大的优先

注:DR/BDR的选举没有抢占性

关系状态:DRother与DR建立邻接关系;---full

DRother与BDR建立邻接关系;

DR /BDR建立邻接关系;

DRother之间保持邻居关系----2-way

(2)邻接路由器之间交换链路状态信息,实现区域内链路状态数据库同步
  • 向邻接路由器发送DBD报文,通告本地LSDB中所有LSA的摘要信息
  • 收到DBD报文后,与本地LSDB对比,向对方发送LSR报文,请求发送本地所需要的LSA的完整信息
  • 收到LSR后,把对方所需的LSA的完整信息打包为一条LSU报文,发送至对方
  • 收到LSU后,向对方回复LSAck报文,进行确认
(3)完整信息同步,完全邻接关系建立

完全邻接关系建立,LSDB表与路由表形成

6、OSPF的状态机

邻居关系开始建立

(1)down:关闭状态(稳定状态),这种情况处于手动指定邻居的情况下,发送hello包之后进入下一个状态

(2)INIT:初始化状态,收到对方的hello报文,但没有收到对方的hello确认报文

(3)Attempt:一般不会出现,只出现在NBMA网络中,发出hello,但收不到对方的hello包

(4)2-way(稳定状态):双方互相发现,邻居状态稳定,并确认了DR/BDR的角色;

当选举完毕后,就算出现一台优先级更高的路由器,也不会替换成新的DR\BDR;

需要原DR\BDR失效,或重置OSPF进程才会成为新的DR\BDR;

2-way的前提:

  • Router-id无冲突,修改router-id需要重置ospf进程使生效;
  • 掩码长度一致(MA网络中);
  • 区域ID一致;
  • 验证密码一致;
  • hello-time一致;
  • dead-time一致;
  • 特殊区域类型一致;
邻接关系开始建立

(5)Exstart:交换开始状态;发送第一个DD报文,但不发送LSA摘要,仅用于确定LSDB协商的主从,ROUTER-ID大的成为master

(6)Exchange:交换状态;发送后续DD报文,用于通告LSDB摘要

(7)Loading:读取状态,进行LSA的请求、加入和确认

(8)Full:邻接状态(稳定状态),两端同步LSDB;

FULL的前提:两端MTU一致,否则可能卡在EXSTART\Exchange状态

能够计算路由的前提:两端网络类型一致,否则邻居状态full,但无法学习路由

7、LSDB的更新

网络正在第一次收敛的时候,路由器会把自己LSDB表中的所有LSA发给邻接路由器。

注:广播网络中的更新:只由DR发起----当网络拓扑有变化的时候,路由器先把变化后的LSA发给监听224.0.0.6的的路由器,DR会把变化的LSA发给监听224.0.0.5的路由器。

8、OSPF开销计算

(1)参考带宽:
  • 默认是100M
  • 计算开销的基准带宽值
  • 参考带宽仅本地有效
  • 建议把网络中最高的链路带宽设置为参考带宽(不然 千兆链路和百兆链路的开销值都是1,无法判断哪条线路最优)
(2)计算方法:

链路带宽大于等于参考带宽 cost=1

反之,cost=参考带宽/链路带宽(Mb)

注:在路由器上。千兆以太网、百兆以太网、十兆以太网的缺省OSPF链路开销值分别是:1、1、10

二、OSPF的区域划分

1、区域产生背景

  • OSPF路由器在同一个区域中泛洪LSA。为了确保每台路由器都拥有对本区域的网络拓扑的一致认知,LSDB需要在区域内进行同步。
  • 如果OSPF域仅有一个区域,随着网络规模越来越大,OSPF路由器的数量越来越多,这将导致诸多问题。

2、分区好处

  • 减少LSA泛洪范围;
  • 提高网络扩展性,有利于组建大规模的网络;

3、区域类型

骨干区域:

非骨干区域:

特殊区域:优化路由表、优化LSDB表

多区互连原则:

非骨干区域与非骨干区域不能直接相连;

所有非骨干区域必须与骨干区域相连;

此设计是为防止区域间环路;

区域内依靠SPF算法防环

4、OSPF的路由器类型

区域内路由器(IR):所有接口在同一区域

骨干路由器(BR):有接口都在骨干区域

区域边界路由器(ABR):连接骨干区域和非骨干区域

自治系统边界路由器(ASBR):连接外部自治系统并引入外部路由;ASBR设备上要运行多种路由协议或者运行同一个路由协议的多个进程。

三、LSA的头部

LSA是OSPF的一个核心内容,如果没有LSA,OSPF是无法描述网络的拓扑结构及网段信息的,也无法传递路由信息,更加无法正常工作,在OSPFV2中,需要我们掌握的主要有6种。

LSA头部一共20byte,每个字段的含义如下。

  • 链路状态老化时间(Link-State Age):指示该条LSA的老化时间,即它存在了多长时间,单位为秒,

1800s周期归0,触发当下归0

MAX age --- 3600S ------ 当一条LSA的老化时间到达最大老化时间时,将被认定失效,将从本地的LSDB中删除掉。

  • 可选项(Options):每一个比特位都对应了OSPF 所支持的某种特性。 ------ 和hello包中的一样,包含特殊区域标记
  • 链路状态类型(Link-State Type): 指示本条LSA的类型。每种 LSA用于描述OSPF 网络的某个部分,所有的LSA类型都定义了相应的类型编号。
  • 链路状态ID(Link-State ID): LSA的标识。不同的LSA类型,对该字段的定义是不同的。
  • 通告路由器(Advertising Router): 始发路由器, 产生该LSA的路由器的Router-ID
  • 链路状态序列号(Link-Sate Sequence Number)

该LSA的序列号,该字段用于判断LSA的新旧或是否存在重复

  • 链路状态校验和(Link-State Checksum):校验和会参与LSA的新旧比较。当两条LSA三元组相同,并且序列号也相同时,则可以使用校验和比较,和大的认定为新。
  • 长度(Length):一条LSA的总长度

四、6种类型的LSA

1、type1-LSA:----重要且复杂

(1)定义:router LSA

  • 描述区域内部与路由器直连的链路信息(链路类型、开销值等)
  • 仅在区域内部传输
  • 每台路由器都会产生Type1 LSA

R1\]dis ospf lsdb router 查看Type1 LSA的具体信息 ![](https://i-blog.csdnimg.cn/direct/15d25048e2354cc9af1baffc7ffc2a41.png) (2)LS ID:发出该LSA的路由器的router-id (3)Adv Rtr:始发路由器,产生该LSA的路由器的router-id (4)链路ID:不同的链路类型,对链路ID值的定义是不同的。 (5)链路数据(Link Data):不同的链路类型对链路数据的定义是不同的。 (6)link-type:链路类型,描述该接口的二层类型 * transnet:在广播网络中出现,连接了多个运行ospf协议的路由器,承载过路流量 类型:广播网络或者NBMA link-id:本网段的DR的IP地址 Date:本路由器在该网段的IP地址 * P2P:适用于P2P网络 类型:ppp link-id:该网段对端路由器的router-id Date:本路由器在该网段的与对端路由器相连的接口的IP地址 * stubnet(末梢网络):运行OSPF协议的路由器连接一个直连网段,(比如连接PC的接口,这个接口被宣告进OSPF。),这个直连网络不承载任何过路流量 类型:p2p\\环回口 link-id:该网段的网络地址 data:该网段的子网掩码 * Virtual(虚链路): 类型:虚链路 link-id:虚链路邻居的router id data:去往该虚连接邻居的本地接口的IP地址 (7)VEB标志位: * V位(Virtual Link Endpoint Bit):如果该比特位被设置为1,则表示该路由器为Virtual Link的端点。 * E位(External Bit):如果E比特位被设置为1,则表示该路由器为ASBR。在Stub区域中,不允许出现E比特位被设置为1的Type-1 LSA,因此Stub区域内不允许出现ASBR。 * B位(Border Bit):如果B比特位被设置为1,则表示该路由器为两个区域的边界路由器,字母B意为Border(边界)。 #### 2、type2-LSA: ###### (1)定义: network LSA 描述区域内的MA网络(广播网络、NBMA网络)链路的路由器及掩码信息 仅在区域内部传输 只有DR才会产生type2_LSA \[R1\]dis ospf lsdb network 查看Type2 LSA的具体信息 ###### (2)内容: LS ID:该网段的DR的IP地址 Adv Rtr:该网段DR的router-id network mask:该网段DR的IP地址的子网掩码信息 #### 3、type3-LSA: ###### (1)定义: Summary LSA(聚合LSA) 在整个OSPF区域内,描述其他区域的链路信息 以子网形式传播,类似直接传递路由 只有ABR会产生type3_LSA \[R1\]dis ospf lsdb summary 查看Type3 LSA的具体信息 ###### (2)内容: LS ID:其他区域某个网段的网络地址 SubAdv Rtv:通告该LSA的ABR的router-id net mask:该网段的子网掩码 注:3类LSA的传递范围在ABR相邻的单区域中进行,跨区域传递时,需要进行通告者的转换,通告者变了,则将不是同一条LSA #### 4、type4-LSA: ###### (1)定义: Asbr-summary LSA 描述ASBR的信息 只有ABR才会产生TYPE4 LSA ###### (2)内容: LS ID:ASBR的router-id Adv Rtv:通告描述该ASBR的ABR的router-id \[R1\]dis ospf lsdb asbr 查看Type4 LSA的具体信息 注:在ASBR本区域的内部路由器,不会产生到达该ASBR的4类LSA #### 5、type5-LSA: ###### (1)定义: AS_extenal LSA,传递域外 路由信息 描述AS外部引入的路由信息,会传播到所有区域(特殊区域除外) 只有ASBR才会产生type5_LSA ###### (2)内容: LS ID:外部路由的目的网络地址 Adv Rtv:引入该网络路由的ASBR的router-id net mask:引入的该目标网段的子网掩码 \[R1\]dis ospf lsdb ase 查看Type5 LSA的具体信息 #### 6、type7-LSA: ###### (1)定义: NSSA LSA 描述在NSSA区域引入的AS外部路由信息 只会出现在NSSA和totolly NASS区域,不能进入area 0 7类LSA生成路由信息的标记位,O_NSSA,优先级150 ###### (2)内容: LS ID:外部某个网段的网络地址 Adv Rtv:引入该网络路由的ASBR的ABR的router-id 区域内传拓扑,区域间传路由 ## 五、OSPF的网络类型 #### 1、定义: 对于不同的二层链路类型的网段,OSPF会生成不同的网络类型 不同的网络类型,DR\\BDR选举,LSA细节,协议报文发送形式等会有所不同 #### 2、类型: ###### (1)NBMA(非广播多点可达网络) * 非广播多点可达网,帧中继默认的网络类型 * 单播发送协议报文,需手动指定邻居 命令:\[r2-ospf-1\]peer 192.168.1.1 (邻居IP地址) * 需要选举DR\\BDR,为了减少LSA的泛洪,减少网络负担 * hello-time 是30秒,dead-time 是120秒 ###### (2)P2MP(点到多点网络) * 点到多点网络,由其他网络类型手动更改:例如在ospf接口下:ospf network-type 网络类型 * 模拟组播发送协议报文,需要手动指定邻居; ![](https://i-blog.csdnimg.cn/direct/f17c4ae91f6741d2b26f63bacc094e11.png) * 不选举DR\\BDR * hello-time 是30秒,dead-time 是120秒 ###### (3)broadcost * 广播网络,以太网默认的网络类型 * 组播发送协议报文 * 需要选举DR\\BDR * hello-time 是10秒,dead-time 是40秒 ![](https://i-blog.csdnimg.cn/direct/4ceca05cebcd49b2992d1bf596e371f5.png) ###### (4)P2P(点到点网络) * 点到点网络,ppp默认网络 * 组播协议发送报文 * 不选举DR\\BDR * hello-time 是10秒,dead-time 是40秒 * 环回接口:华为设备定义为P2P类型,但实际上无数据收发。环回接口默认学习32位的主机路由 ![](https://i-blog.csdnimg.cn/direct/2f1a959bb29442faa4cff37b0896a741.png) \[R2-LoopBack0\]ospf network-type broadcast ![](https://i-blog.csdnimg.cn/direct/bcfc1d622f8e487bbe9125e3eecc7947.png) ## 六、基于OSPF的MGRE实验 ![](https://i-blog.csdnimg.cn/direct/fc0e453b2fbf44cea48391d2bc402b4f.png) 基于ospf的MGRE出现问题:ospf的路由表学习不全 **问题1**:Tunnel接口类型为P2P类型,不选举DR/BDR,使得设备无法正常建立邻接关系, 解决方法:更改网络中tunnel接口类型为广播或者P2MP \[R2\]interface Tunnel 0/0/0 \[R2-Tunnel0/0/0\]ospf network-type broadcast **问题2**:DR和BDR选举混乱,无法正常建邻 更改网络类型后,广播网络中中心站点和分支站点处于同一个广播域,此时需要进行DR和BDR的选举,但是在分支站点的世界里只和中心站点认识,分支站点和分支站点不认识,这就会发生多个分支站点和一个中心站点互相竞选DR和BDR,这样会造成选举结果混乱,可在中心站点看到混乱的场景 解决方法:将分支站点的dr选举优先级变0,这样就能保证中心站点是整个广播网络中唯一的DR ## 七、OSPF不规则区域类型 产生原因:区域划分不合理,导致的问题 #### 1、非骨干区域无法和骨干区域保持连通 ![](https://i-blog.csdnimg.cn/direct/dd582a30f31d4cacb5550381df7f2b12.png) #### 2、骨干区域被分割 ![](https://i-blog.csdnimg.cn/direct/76a71f995b3a4ca789e280b7e2f6f841.png) 造成后果:非骨干区域没和骨干区域相连,导致ABR将不会帮忙转发区域间的路由信息。非骨干区域无法和骨干区域保持连通 ## 八、解决方案 #### 1、使用虚连接 ###### 非骨干区域无法和骨干区域保持连通 方法1:虚连接 ![](https://i-blog.csdnimg.cn/direct/4a677bdf29514c5f99a68661fb711c73.png) ![](https://i-blog.csdnimg.cn/direct/0b804c5414e647d6b527eb8ae033f450.png) 方法2:路由引入(重发布), 重发布:在运行不同协议或不同进程的边界设备(ASBR --- 自治系统边界路由器,协议边界路由器)上,将一种协议按照另一种协议的规则发布出去 R4充当ASBR的角色,在其上运行两个OSPF协议。然后利用重发布进行共享。 \[R4-ospf-1\]import-route ospf 2 \[R4-ospf-2\]import-route ospf 1 ###### 骨干区域被分割 ![](https://i-blog.csdnimg.cn/direct/909fb4d2bb67495e9bd7ae578705f3b2.png) ![](https://i-blog.csdnimg.cn/direct/21dba6d42b4546c48274b5d44a4342a9.png) 显示虚连接信息 ![](https://i-blog.csdnimg.cn/direct/ee9117de31564e92aadccf732c591c8a.png) 特征: 只能在两个区域的边界路由器上配置; 在中间区域的区域视图下配置; 只能穿越一个区域; 注:虚连接不能穿越stub区域、NSSA区域 友情提示提示:虚连接的配置会给路由器带来一些额外的负担,尽量在早期规划的区域的时候,合理规划 ## 九、特殊区域 定义:特殊区域是指人为定义的一些区域,它们在逻辑中一般位于ospf区域的边缘,只与骨干区域相连。 特殊区域的条件:不能是骨干区域;不能存在虚链路; #### 1、STUB区域:末梢区域 ![](https://i-blog.csdnimg.cn/direct/332cb1604a934d589bd7119e2e650ade.png) (1)定义: 末梢区域,适用于区域中路由器性能较低,目的是为了减少区域中路由器的路由表规模以及路由信息传递的数量。不希望接收大量的AS以外路由 (2)特征: 不接受4类5类LSA; 不允许出现ASBR; 区域0不能被配置为STUB区域; 虽然拒绝学习域外路由信息,但依然有访问域外路由的需求;故会由ABR设备自动下发一条指向骨干区域的3类缺省; (3)命令:\[r5-ospf-1-area-0.0.0.2\]stub ![](https://i-blog.csdnimg.cn/direct/0415f3c6271d4b71bd7e3081de63d224.png) (4)实验测试:将R3和R4设置为stub区域,观察R3和R4的ospf路由表 ![](https://i-blog.csdnimg.cn/direct/6cba66605bda4e1787c0d07d688beaba.png) ![](https://i-blog.csdnimg.cn/direct/8e3c34820d134678b4b59e05f89a87f0.png)![](https://i-blog.csdnimg.cn/direct/42313223ad004ac0a2aaa8f7c0548743.png) #### 2、totally stub区域----完全末梢区域 ![](https://i-blog.csdnimg.cn/direct/ee56fbac0b2e4800bac80d931cefc9a6.png) (1)定义:完全末梢区域,拒绝学习域外和其他区域的路由信息 (2)特征: 不接受3类4类5类LSA; 不允许出现ASBR; 区域0不能被配置为totally STUB区域; 虽然拒绝学习域外路由信息,但依然有访问域外路由的需求;故会由ABR设备自动下发一条指向骨干区域的3类缺省; (3)命令:\[r5-ospf-1-area-0.0.0.2\]stub no-summary ![](https://i-blog.csdnimg.cn/direct/6b57a256f1324542b51f500365a8cbae.png) (4)实验测试:将R3和R4设置为totally stub区域,观察R3和R4的ospf路由表 ![](https://i-blog.csdnimg.cn/direct/a83595dd74904ce9ac0858fc90e74b90.png)![](https://i-blog.csdnimg.cn/direct/1437d14ccbbc40aba2c1cc8a5e93606a.png)![](https://i-blog.csdnimg.cn/direct/81c87fe8229d43269f1c0112350e6269.png) **3、NSSA区域(Not-So-stubby Area)----非纯末梢区域** ![](https://i-blog.csdnimg.cn/direct/e17ab604f17f447aac6b4266700b35aa.png) (1)定义:非纯末梢区域,是STUB区域的变形,拒绝学习域外(主要是5类)路由信息,但需要引入后面的域外路由信息 (2)特征:不接受4类5类LSA; 本区域引入的外部路由以7类LSA存在; 本区域的ABR会 把引入的7类LSA转换为5类 LSA通告给其他区域; 华三中:NSSA区域的默认路由需要手动配置下发,在ABR下发的是7类默认路由的LSA; 命令:nssa default-router-advertise 华为中:自动生成一条指向骨干区域的7类缺省,在ABR下发的是7类默认路由的LSA; 命令:nssa 区域0不能被配置为NSSA区域; 存在asbr设备 (3)命令:\[r5-ospf-1-area-0.0.0.2\]nssa ![](https://i-blog.csdnimg.cn/direct/1aca05fd2d56446da9c4e17c488072d2.png) (4)实验测试:将R3和R4设置为NSSA区域,观察R1和R2的ospf路由表 ![](https://i-blog.csdnimg.cn/direct/1e951095521e4ddba71431522c30ba20.png) ![](https://i-blog.csdnimg.cn/direct/86cd77cf528b464d8f4ba5b3cc1e5265.png) ![](https://i-blog.csdnimg.cn/direct/9442a72bd7544d90addfe4542663a17b.png) #### 4、totally NSSA区域---完全非纯末梢区域 (1)定义:完全非纯末梢区域 (2)特征:不接受3类4类5类LSA 本区域引入的外部路由以7类LSA存在 本区域的ABR会把引入的7类LSA转换为5类 LSA通告给其他区域 本区域默认路由由ABR发送3类LSA产生 区域0不能被配置为totally NSSA区域 命令:\[r5-ospf-1-area-0.0.0.2\]nssa no-summary (3)实验测试:将R3和R4设置为totally nssa区域,观察R3和R4的ospf路由表 ![](https://i-blog.csdnimg.cn/direct/40734cfb143543f2b960e5a0d998968f.png) ![](https://i-blog.csdnimg.cn/direct/4c17222cf6b54c7c8d909b9cf2281047.png) ![](https://i-blog.csdnimg.cn/direct/0df310c330f1478fb84281cc4525447d.png) ## 十、OSPF路由聚合 #### 1、定义 OSPF路由只能手动聚合(LSA),将具有相同前缀的路由信息聚合后发布到其他区域 ![](https://i-blog.csdnimg.cn/direct/c05772c7819443e39bd8e51c5b07b399.png) #### 2、聚合条件: 针对3类、5类、7类LSA;OSPF路由只能手动聚合(LSA) #### 3、聚合类型: ###### (1)ABR聚合(3类) * 把一个区域的LSA聚合后发布到相邻区域; * 在传入区域的区域试图配置:命令:\[r1-ospf-1-area-0.0.0.0\]abr-summary 192.168.0.0 255.255.252.0 * ABR聚合不会影响ABR本机的路由,只会影响相邻区域的下游路由器的路由; * ABR 聚合后,会在ABR本机上产生一条该聚合的黑洞路由,来防止环路出现; ![](https://i-blog.csdnimg.cn/direct/fd1339d742564fc2b60f6fe8d3f628cc.png) ABR上路由聚合示例: ![](https://i-blog.csdnimg.cn/direct/fa6ef689260f459491f9ad2d6c71d047.png) ![](https://i-blog.csdnimg.cn/direct/d370c3ab7def4e309050a9a7b9d041bb.png) ###### (2)ASBR聚合(5类、7类) * 把引入的AS外部路由聚合后发布到OSPF内部; * 在协议视图配置.命令:\[r4-ospf-1\]asbr-summary 172.16.0.0 255.255.252.0 * 只对5类、7类的LSA 进行聚合; * ASBR聚合不会影响ASBR本机的路由,只会影响OSPF内部的其他路由器; * ASBR 聚合后,会在ASBR本机上产生一条该聚合的黑洞路由,来防止环路出现; 注:使用聚合实现路由过滤,在聚合后加入not-advertise参数 ![](https://i-blog.csdnimg.cn/direct/81cd20b248a14512b4e058c41500a2a0.png) ![](https://i-blog.csdnimg.cn/direct/41a84beb3f584cdfa1ab161dc780675e.png) **十一、OSPF安全特性** #### 1、OSPF报文验证: 区域验证模式:在区域下配置一致的密码才能加入同一个区域。\[r3-ospf-1-area-0.0.0.0\]authentication-mode md5 1 cipher 123456 接口验证模式:链路两端的接口必须配置一致的密码才能建立邻居关系 \[r5-GigabitEthernet0/0/0\]ospf authentication-mode md5 1 cipher 123456 虚链路认证(本质接口认证):\[r4-ospf-1-area-0.0.0.1\]vlink-peer 3.3.3.3 md5 1 cipher 123456 注:接口认证高于区域认证,只要接口验证通过,区域验证哪怕失败,也不影响邻接关系建立 #### 2、禁止端口发送OSPF报文: 为了使OSPF路由信息不被其他路由器获得,配置静默接口:\[r5-ospf-1\]silent-interface GigabitEthernet 0/0/2 #### 3、路由过滤 (1)特点:影响本机及下游路由器的OSPF表的学习,过滤本机及下游路由器的LSDB表中的LSA,在协议视图下配置进方向 ![](https://i-blog.csdnimg.cn/direct/4013d4195a8f485c896309c2a610f8ca.png) 方法2:在传入区域的区域视图下配置出方向,不影响本机ospf表的学习,但影响下游路由器ospf表的学习,过滤本机及下游路由器的LSDB表中的LSA ![](https://i-blog.csdnimg.cn/direct/b18d71d8593c4d7691aa944abb882be7.png) (3)过滤3类5类/7类LSA:not-advertise 实现-----见高级特性课件2 ## 十二、加快收敛 1、修改hello时间:\[r5-GigabitEthernet0/0/0\]ospf timer hello 5 2、修改死亡时间:\[r1-GigabitEthernet0/0/0\]ospf timer dead 20 3、其他计时器: 重传时间默认5S:\[r5-GigabitEthernet0/0/0\]ospf timer retransmit ?-----重传LSA的 INTEGER\<1-3600\> Second(s) 4、修改ospf的网络类型:\[R2-GigabitEthernet0/0/0\]ospf network-type ? 注:两端网络类型不一致,导致邻居关系建不起来 ## 十三、缺省路由 (1)3类缺省:特殊区域自动下发,优先级10 (2)5类缺省:手工配置,优先级150 命令:\[r2-ospf-1\]default-route-advertise --- 相当于将本设备上通过其他方式学到的缺省路由,重发布到OSPF网络当中 (3)7类缺省: 自动下发,通过配置特殊区域自动下发,优先级150-----nssa 手工下发,优先级150 命令:\[r2-ospf-1\]default-route-advertise always --- 在设备上没有其他网络学来缺省信息时,可以强制下发一条7类缺省。 ## 十四、路由控制 #### 1、优先级 \[r3-ospf-1\]preference 50 --- 修改OSPF路由默认优先级,只影响本机OSPF路由的学习 \[r3-ospf-1\]preference ase 100 --- 修改域外导入的路由的默认优先级。 #### 2、开销值 \[r3-ospf-1\]bandwidth-reference 1000 --- 修改参考带宽需要将所有OSPF网络中的设备都改成相同的。 \[r3-GigabitEthernet0/0/0\]undo negotiation auto --- 关闭自动协商 \[r3-GigabitEthernet0/0/0\]speed 10---修改接口真实传输速率 ![](https://i-blog.csdnimg.cn/direct/cb643bf20aa04351920926407466c524.png) \[r3-GigabitEthernet0/0/0\]ospf cost 1000 --- 修改接口开销值 ## 十五、显示OSPF的错误统计信息 \[R1\]dis ospf error ![](https://i-blog.csdnimg.cn/direct/7c3140db295649db993e048ab1da5ddd.png) ## 十六、附录E(了解) 当ASBR引入多条网络地址一致,掩码不一致的外部路由时,路由器会把除了第一条以外的,外部路由产生的5类LSA的LS ID的主机位做全反(0变255)操作,来防止LS ID冲突 ![](https://i-blog.csdnimg.cn/direct/d45ed2ac61474b8b9edf37362cc2fdec.png) ![](https://i-blog.csdnimg.cn/direct/5fb15a8810ab493baf573769975eb873.png) ## 十七、OSPF防环 区域间防环:牢记区分划分原则,就可避免环路 区域内防环:OSPF区域内部计算出的路由信息是不会存在环路的,这主要得益于OSPF使用的算法 --- SPF(最短路径优先)算法。 ## 十八、OSPF选路原则 ![](https://i-blog.csdnimg.cn/direct/d56cffe672244c90b8be4a0038ca45d1.png) 选路示例: ![](https://i-blog.csdnimg.cn/direct/3a7f9c49210941cfa28cf2c05f79e696.png) 域外路由引入 ![](https://i-blog.csdnimg.cn/direct/5ea6a33c5c244afbbad23e13ed6a6800.png) ![](https://i-blog.csdnimg.cn/direct/63d584b359c845dfa669723a7f124585.png) 发现在R3上学到了两条了引入的外看AS内部的cost有没有变化 ![](https://i-blog.csdnimg.cn/direct/7545e37209d441929c4ca5c11188398c.png) ![](https://i-blog.csdnimg.cn/direct/47ae31538e4a447fadf76aa43727012c.png) 测试:在R1和R2上更改引入静态路由的类型为1类,查看R3路由表的变化,此时cost值明显被改变,会计算内部cost值,这就说明此时引入的是第1类外部路由 ![](https://i-blog.csdnimg.cn/direct/211d6a218a0241ed9854927c3fac071d.png) 测试:为啥要有1类和2类外部路由的区分 如果内部cost,走移动的cost值\>走电信的,那去往192.168.1.0/24网段的,优先选择走电信,但现在我们就想让它走移动,这时需要通过2类路由引入,才能达到这个效果。即在做引入的时候就改变原始的引入的cost值。 ![](https://i-blog.csdnimg.cn/direct/93a3e140803f442da9aa820a243cfd82.png) ![](https://i-blog.csdnimg.cn/direct/c416c9e1703c413083dc3f22128116fa.png)![](https://i-blog.csdnimg.cn/direct/2504f96a4d224916b83d35f501e89b92.png)