HCIE面试知识:OSPF

OSPF的状态:

              

down

邻居的初始状态,在邻居关系失效时间间隔内没有收到来自邻居的hello报文

 

attempt

只在NBMA网络中,邻居网络在超时间隔时间后仍未收到回复的hello报文。

 

init

收到hello报文时的状态

 

2-way

收到的邻居发来的hello报文中包含自己的router-id,此时为two way状态。

如果不能形成邻居关系则停留此状态,否则进入exstar状态。

广播网络中2-way状态选举DR

作用:减少网络中LSA流量的泛洪

特点:1.不会减少Hello报文,较少的DD,LSR,LSU,LSAck报文

2.DRother只和DR以及BDR泛洪DD,LSR,LSU

3.DRother之间只互相发送Hello报文

4.DRother之间保持2-Way关系

5.DR和BDR负责收集网络LSA

6.DR负责向网络中其他DRother通告拓扑信息

7.BDR监控DR运行状态,准备随时取代

8.只存在MA网络

选举规则:

1先选出BDR,BDR发现网络中没有DR后,把自己变为DR,再选出BDR。.先比较优先级,默认为1,大的为DR次大为BDR。

优先级0表示不参与选举,如果两台路由器优先级都为0,则邻居状态为2-Way。DR和BDR不会被抢占。

2.优先级相同,比较Router-ID,大的为DR次大为BDR。

exstar

如果形成邻居关系,则从init状态转为此状态。开始协商主从关系和DD报文序列号。(发送空DD报文协商主从)

为什么需要协商主从关系:选出master和slave路由器,OSPF是基于IP工作的,IP是一个无连接的协议。同时,OSPF又没有其它的确认机制来保证DD报文可靠的传输。

所以,选举主从是为了保证DD报文有序、可靠的交互。另外DD的序列号还能充当确认的作用。以Master的DD序列号为初始序列号。Router ID大选为主

exchange

主从关系协商完成,开始交换DD报文(Database description)。

同时开始LSR,LSU以及LSACK报文,交互LSA的详细信息,进行数据库的同步

loading

DD报文交互完成。

 

full

LSR重传列表为空时,此时状态为full状态

 

OSPF的5种报文

(1)Hello报文:用于发现与维持邻居,后期还可用来进行广播以及NBMA网络中DR以及BDR的选取;根据网络结构的不同,Hello协议的工作方式也不同。

(2)DD(数据库描述)报文,描述本地LSDB(链路状态数据库)的情况;

(3)LSR(链路状态请求)报文,向对端请求本端没有或者对端更新的LSA;

(4)LSU(链路状态更新)报文,向对方更新LSA;

(5)LSAck(链路状态确认)报文,收到LSU后进行确认。

其中,Hello报文用于双向通信连接即发到对方路由器的Hello报文协议中的邻居路由器中必须具有源路由ID才能建立邻居状态,达到two-way状态,并且会在建立成功后每隔一段时间进行Hello报文的发送确认邻居路由器的变化情况。DD报文与LSR报文是形成邻接同步的过程,在这个阶段中邻接状态形成,根据路由器生成的LSA类型进行数据库汇总,向整个区域进行LSA的洪泛;而LSU和LSAck保证了报文交换的状态的确认刷新机制,对LSR报文发出的请求的LSA进行回复,假如未收到更新报文LSU,会在一定时间段内进行LSAck报文进行确认,确认到未收到更新报文或者更新失败,则要求重新发送。

 

OSPF 区域类型

普通区域

  • 标准区域:最通用的区域,它传输区域内路由,区域间路由和外部路由。
  • 骨干区域:连接所有其他OSPF区域的中央区域,用Area 0表示。骨干区域负责区域之间的路由,非骨干区域之间的路由信息必须通过骨干区域来转发。
  • 骨干区域自身必须保持连通。
  • 所有非骨干区域必须与骨干区域保持连通。

Stub区域

  • Stub区域的ABR不向Stub区域内传播它接收到的AS外部路由,因此这些区域中路由器的路由表规模以及路由信息传递的数量都会大大减少。一般情况下,Stub区域位于自治系统的边界,是只有一个ABR的非骨干区域,为保证到自治系统外的路由依旧可达。
  • Stub区域的ABR将生成一条缺省路由,并发布给Stub区域中的其他非ABR路由器。
  • Stub区域内不能引入也不接收AS外部路由。
  • 虚连接不能穿越Stub区域。
  • 骨干区域不能配置成Stub区域。
  • Stub区域内不能存在ASBR,因此自治系统外部的路由不能在本区域内传播。
  • 虚连接不能穿过Stub区域。

Totally Stub区域

继承Stub区域属性,同时

Totally Stub区域允许ABR发布Type3缺省路由,不允许发布(和不接收)自治系统外部路由和区域间的路由,只允许发布区域内路由。

area 1

stub  no-summaryABR上配置后实现完全末梢区域)

NSSA

 

Not-So-Stubby Area

  • NSSAStub区域的一个变形,它和Stub区域有许多相似的地方。
  • NSSA区域不允许存在其他区域Type5 LSANSSA区域允许引入自治系统外部路由,携带这些外部路由信息的Type7 LSANSSAASBR产生,仅在本NSSA内传播。
  • Type7 LSA到达NSSAABR时,由ABRType7 LSA转换成Type5 LSA,泛洪到整个OSPF域中。
  • 该区域的ABR发布Type7 LSA缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。
  • NSSA区域的ABR会发布Type7 LSA缺省路由传播到本区域内。
  • 所有域间路由都必须通过ABR才能发布。
  • 虚连接不能穿过NSSA区域。

Totally NSSA

继承NSSA区域属性,同时

Totally NSSA区域不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。

NSSA  no-summaryABR上配置后实现Totally区域)

缺省路由为:3(NSSA7)

 

1LSA

2LSA

其他区域3LSA

4LSA

能否引入外部路由

5LSA

7LSA

普通区域

×

stub区域

×

×

×

×

Totally Stub

×

×

×

×

×

NSSA

×

×

Totally NSSA

×

×

×

OSPF LSA类型

 

 

 

 

名称

产生者

作用

Metric

传递范围

防环

1类

LSA

router-LSA

每个路由器

OSPF网络里的每一台路由设备都会发布Type1 LSA。这种类型的LSA用于描述设备的链路状态和开销

本接口cost,默认为1

本区域

SPF

2类

LSA

network LSA

DR

由DR(Designated Router)产生,描述本网段的链路状态,列出了所有与DR形成完全邻接关系的路由器的Router ID

无metric字段

本区域

SPF

3类

LSA

Network-summary-LSA

ABR产生

用来描述区域间的路由信息。

ABR到该路由的开销

区域内/区域间

三类LSA防环规则

4类

LSA

Sum-Asbr-LSA

ABR发布

描述ABR到ASBR的路由信息,并通告给除ASBR所在区域的其他相关区域。只出现在OSPF LSDB数据库中,不出现在路由表中

ABR到ASBR的开销

区域内/区域间

与3类相同

5类

LSA

外部LSA

ASBR产生

描述到AS外部的路由,通告到除Stub区域和NSSA区域以外所有的区域。

Type1=本设备到ASBR开销+ASBR到该路由开销;

Type 2=ASBR到该路由开销

OSPF网络

与3类相同

7类

LSA

NSSA LSA

ASBR产生

描述到AS外部的路由,仅在NSSA区域内传播。NSSA区域的ABR收到NSSA LSA时,会有选择地将其转化为Type5 LSA,以便将外部路由信息通告到OSPF网络的其它区域。

因为7类LSA只允许在NSSA区域泛洪。为了将NSSA区域引入的外部路由发布到其它区域,需要将7类转5类的操作

Type1=本设备到ASBR开销+ASBR到该路由开销;

Type 2=ASBR到该路由开销

nssa区域内

P位

8类

LSA

Link-LSA

每台路由器

描述到此Link上的link-local地址、IPv6前缀地址,并提供将会在Network-LSA中设置的链路选项

本接口cost,默认为1

本链路

SPF

9类

LSA

intra-area prefix LSA区域内前缀

每台路由器

设备产生的此类LSA,描述与Route-LSA相关联的IPv6前缀地址。

DR产生的此类LSA,描述与Network-LSA相关联的IPv6前缀地址。

本接口cost,默认为1

本区域内

SPF

 

Router-LSA详解

Router-LSA的信息字段有三个,用于将自己连接的所有链路的状况以及开销告诉该LSA泛洪区域的其他路由器。

其中,Link Type有四种类型,并且IDData的值会根据Link Type而有不同:

  • 1-P2P(点对点):

此时ID表示邻居路由设备的Router IDData表示和网络相连的通告路由器接口的IP地址

  • 2-Transit(传送网络)

此时ID表示DR接口的IP地址,Data表示和网络相连的通告路由器接口的IP地址

  • 3-Stub(末梢网络)

此时ID表示IP网络或子网地址,Data表示网络的IP地址或子网掩码

  • 4-Virtual Link(虚链路)

此时ID表示邻居路由设备的Router IDData表示通告路由器接口的MIB-II ifIndex值。

OSPF的组播地址

DRother向DR/BDR发送DD;LSA request或者LSA UPdate时目标地址是All_DRouter(224.0.0.6)

DR/BDR向DRother发送DD;LSA Request或者LSA Update时目标地址是All_OSPFRouter(224.0.0.5)

  1. 所有的OSPF Router 监听加入组播地址224.0.0.5
  2. OSPF的DR和BDR监听加入224.0.0.6

5类LSA和7类LSA有什么不同?

1)防泛洪范围,LSA5是在整个OSPF域泛洪(除了特殊区域),而LSA7只在NSSA区域内防洪;

27LSAFA地址永不为0,而5LSAFA地址是可能为0的。

为什么需要在ABR上进行7类转5类的操作?

因为7LSA只允许在NSSA区域泛洪。为了将NSSA区域引入的外部路由发布到其它区域,需要把Type-7 LSA转化为Type-5 LSA以便在整个OSPF网络中通告。

两端的网络类型不一致时,会不会建立邻居?能建立邻居,路由是否正常?

1NBMA只能与NBMA建立full 邻接关系,与其他网络类型都无法建立FULL的邻居关系;(单播发现邻居)

2broadcastP2P,能建立full邻接关系,但不能正常计算路由;(构建的拓扑不一致)

3broadcas P2MP,通过修改hello/dead timer可以建立full邻接关系,但也不能计算路由;

4P2PP2MP,通过修改hello/dead timer可以建立full邻接关系,路由计算也正常。

​​​​​​OSPF防环的方法:

1)区域内。

根据12LSA,结合SPF算法,百分百无环路。之所以能做到无环,是因为路由器能够通过LSA描绘出区域的完整拓扑(包括所有接口的Cost)及网段信息。

Type-1 LSAType-2 LSA,路由器能够描绘出区域内的拓扑及网段信息,从而运行SPF算法,计算出到达每个网段的最优路径,并将这些路径安装到路由表中,因此区域内的路由(Intra-Area Route)可以实现无环路。

2)区域间。

OSPF要求所有的非0区域必须与骨干区域直接相连,区域间路由需经由骨干区域中转。

  • OSPF从非骨干区域收到的3LSA只接收不计算

  • 1类、2LSA路由优于3LSA的路由。

3)区域外。

五类LSA没有防环机制,它并不需要防环机制,因为它可以依赖Type-1 LSAType-4 LSA来实现防环。

ABR通过优先使用区域04LSA计算外部路由,区域04类优于非骨干区域4类。

通过多个区域的1类都能到达ASBR,并且cost相同则优先选择区域ID大的1类,如果cost不同则优先选择cost小的。

LSA如何比较新旧:

(1)比较Sequence Number,越大越新

(2)比较Checksum,越大越新

(3)比较Age,3600s最优

(4)Age Time之差小于900s,不比较,先收到先放入LSDB数据库(保留旧的LSA)

(5)Age Time之差大于900s,越小越优(保留新的LSA)

SPF算法

1:构建SPF树

  • 路由器将自己作为最短路径树的树根,根据Router-LSA和Network-LSA中的拓扑信息,依次将Cost值最小的路由器添加到SPF树中。路由器以Router ID或者DR标识。
  • 广播网络中DR和其所连接路由器的Cost值为0。
  • SPF树中只有单向的最短路径,保证了OSPF区域内路由计算不会出现环路。

2:计算最优路由。

  • 将Router-LSA、Network-LSA中的路由信息以叶子节点形式附加在对应的OSPF路由器上,计算最优路由。
  • 已经出现的路由信息不会再添加到SPF树干上。

​​​​​​​路由过滤:

过滤方式

可以调用的方式

注意点

用途

进程下

filter-policy import

ip-prefix

acl

route-policy

用来控制进入全局路由表的路由,该命令对本地计算出来的路由执行过滤。

命令对接收的路由设置过滤策略,只有通过过滤的路由才被添加到路由表中并被发布,没有通过过滤的路由既不会被添加进OSPF路由表中,也不会被添加到路由表RIB

进程下

filter-policy export

ip-prefix

acl

route-policy

此命令仅在ASBR上配置

import-route引入外部路由后,为了避免路由环路的产生,通过filter-policy export命令对引入的路由在发布时进行过滤,只将满足条件的外部路由转换为Type-5 LSAAS-external-LSA)并发布出去。

OSPF 区域下

filter export方向

filter import方向

ip-prefix

acl

route-policy

过滤区域中的3类LSA

这两条命令是用来过滤3类LSA

filter export命令用来对从本区域通告出去的Type 3LSA珞由进行过滤

filter import命令对进入本区域的Type3 LSA路由执行过滤

接口下

ospf filter-lsa-out

acl

接口下配置

type3、type5、type7、all

type3、type5、type7、all(all可以连1、

2类LSA过滤)

 

加快OSPF收敛的方法:

划分多区域

减小区域内的1、2类LSA,加快了区域内的路由计算,区域间路由通告3类LSA传递

配置特殊区域

减少5类LSA,减小LSDB大小,加快路由收敛

路由过滤/路由聚合

减少非必要LSA传递,减小LSDB大小,加快路由收敛

I-SPF算法

只对受影响的节点进行拓扑计算(i-SPF);只第一次计算全部节点拓扑(full SPF)。

RPC

只对发生变化的路由进行重新计算;根据I-SPF 算出来的SPT 来更新路由

智能定时器

智能定时器可以根据用户的配置和触发事件的频率动态调整时间间隔对路由计算、LSA 的产生、LSA 的接收进行控制,使网络快速稳定,缺省情况下,OSPF 智能定时器已经打开并且配置了缺省值。

调整路由收敛的优先级

3个优先级对应不同ip-prefix,更高优先级路由最先计算收敛

hello 和dead间隔

更快的感知邻居故障

非广播以太网链路改为P2P网络类型

可以减少邻居建立时间,因为MA网络要等待40S来DR选举完成,在40秒内等待其他路由器的加入

与BFD联动

接口下配置ospf bfd enable

配置

OSPF Smart-discover

通常情况下,路由器会周期性地从运行OSPF协议的接口上发送Hello报文。通过一个Hello Timer定时器控制Hello报文的发送。这种按固定周期发送报文的方式减缓了OSPF邻居关系的建立。

使能了Smart-discover特性的接口(广播型或NBMA)上的DR、BDR发生变化时不需要等待Hello Timer到时,就立刻主动的向邻居发送Hello报文。​​​​​​​

​​​​​​​减小LSDB的大小

划分多区域

 

配置特殊区域

 

路由过滤

 

路由汇总

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值