OSPF 协议基础


OSPF知识点
OSPF基本配置,OSPF 5种报文,7种邻居状态,4种网络类型,4种特殊区域,7类LSA,4种link type,标识一条LSA的3个要素,OSPF邻居域邻接关系,单区域,多区域,OSPF认证(keychain),DR的选举,OSPF被动接口,OSPF域间聚合,外部聚合,不规则区域的解决方法(虚链路),OSPF开销值,协议优先级及计时器的修改,OSPF外部路由引入,下放默认路由,OSPF在FR中的应用,OSPF协议中Forwarding Address 的理解

 
这里先提一下RIP
RIP是基于距离矢量算法的路由协议,应用在大型网络中存在收敛速度慢、度量值不科学、可扩展性差等问题

RIP特性带来的问题优化或解决方案
逐跳收敛收敛慢,故障恢复时间长收到更新-》计算路由-》发送更新 改为
收到更新-》发送更新-》计算路由
传闻路由更新机制缺少对全局网络拓扑的了解路由器基于拓扑信息,独立计算路由
最多有效跳数为15环形组网中,使远端路由不可达不限定跳数
以“跳数”为度量存在选择次优路径的风险将链路带宽作为选路参考值

 
OSPF的工作过程:邻居建立、同步链路状态数据库、计算最优路由

OSPF 邻接建立不起来的原因

①广播网络类型中子网掩码不匹配 dis ospf peer brief 查看
②router-id 相同
③网络类型不同,改了网络类型,缺省Hello时间也不同
④hello,dead 时间不同,改了hello,dead也会改。hello和dead是4倍关系
    hello时间相同,网络类型不同。 邻接能建立,但路由无法传递。
⑤MTU 值不同 (两端必须开启mtu enable,强制mtu检测)
    MTU作用:DD报文中,停留在ExStart(做一个主从选择,Master和Slave,比较Router ID 谁大谁做主)
⑥无 DR,(两端设置dr优先级为0,不参与选举),会停留在 2-way。 缺省dr优先级是1
⑦认证不同,一端做加密,另一端没加密。
⑧区域ID 不同,两台设备,一个区域0,一个区域1
⑨末节标志位不同 stub,totally stub,nssa,totally nssa
⑩接口设置为silent-interface

等等,主要是在这10个中进行检查

掩码:在MA/NBMA掩码要一致,P2P没限制
 

OSPF 8种状态机

OSPF共有8种状态机,分别是:Down、Attempt、Init、2-way、Exstart、Exchange、Loading、Full。

Down:邻居会话的初始阶段,表明没有在邻居失效时间间隔内收到来自邻居路由器的Hello数据包。

Attempt:该状态仅发生在NBMA网络中,表明对端在邻居失效时间间隔(dead interval)超时前仍然没有回复Hello报文。此时路由器依然每发送轮询Hello报文的时间间隔(poll interval)向对端发送Hello报文。

Init:收到Hello报文后状态为Init。

2-way:收到的Hello报文中包含有自己的Router ID,则状态为2-way;如果不需要形成邻接关系则邻居状态机就停留在此状态,否则进入Exstart状态。

Exstart:开始协商主从关系,并确定DD的序列号,此时状态为Exstart。

Exchange:主从关系协商完毕后开始交换DD报文,此时状态为Exchange。

Loading:DD报文交换完成即Exchange done,此时状态为Loading。

Full:LSR重传列表为空,此时状态为Full。

 

OSPF邻居建立过程

Down->Init->2-way
在这里插入图片描述
Down(没有运行OSPF,没有network)
init和2way描述:
从邻居收到一个Hello包,但在Hello包发现邻居是NULL的,没有我自己的Router ID ,所以状态设置为 init
从邻居收到一个Hello包,但在Hello包发现邻居的Router ID 和 自己的Router ID ,所以状态设置为 2 way

 
手动建立邻居(NBMA)
nbma,非广播的,也不支持组播
OSPF支持通过单播方式建立邻居关系。
在这里插入图片描述

四种网络类型:广播,点到点,点到多点,NBMA

typehellotypehello
p2p10自动
broadcast10DR自动
nbma(不支持广播、组播)30DR手工
p2mp30自动

缺省情况下 网络类型为Broadcast
P2P、Broadcast类型接口发送hello的时间间隔为10秒,死亡时间40秒;
P2MP、NBMA类型接口发送Hello报文的时间间隔为30秒,死亡时间120秒

OSPF的度量方式
某接口cost=参考带宽/实际带宽。取整,0.1取1    参考带宽 100M
更改cost的两种方式:
·直接在接口下配置
·修改参考带宽(所有路由器都需要修改,确保选路一致性)

OSPF 5种报文

Type报文名称报文功能
1Hello发现和维护邻居关系
2Database Description交互链路状态数据库摘要
3Link State Request请求特定的链路状态信息
4Link State Update发送详细的链路状态信息
5Link State Ack发送确认报文

发现、建立、维护邻居 - Hello 报文
Hello报文的作用:
· 邻居发现:自动发现邻居路由器
· 邻居建立:完成Hello报文中的参数协商,建立邻居关系
· 邻居保持:通过Keepalive机制,检测邻居运行状态 (dead interval 40s)

DD报文的I,M,MS    第一个DD报文是没有LSA信息的
在这里插入图片描述
所以第一个DD报文,都各自认为自己是主,所以MS都置1。 随后比较router id 确定了主从。 优先级大的为主

OSPF LSDB同步,互相发送DD报文
在这里插入图片描述
主从设备选举完后,设备的状态从Exstart状态变为Exchange状态,从设备会使用主设备的序列号,发送携带摘要信息的DD报文。

LSA是OSPF链路状态信息的载体
标识一条LSA的三要素:LS type、Link State ID、Advertising Router

 

DR和BDR

有DR和BDR的原因:重复的LSA泛洪,造成资源浪费。 为了减少资源浪费,降低OSPF协议流量
选举规则:DR/BDR的选举是基于接口的。(不抢占)
· 接口的DR优先级越大越优先。 DR priority 默认为1
· 接口的DR优先级相等时,Router ID越大越优先
接口优先级为0代表状态永远为 DRother
当选举出DR后,网络内的DR-Other和DR开始建立邻接关系,进入下一个状态Exstart

当链路两端的设备都进入2-way状态后,如果是MA或NBMA网络,会进行DR/BDR的选举。该选举是为了减少广播型网络和NBMA网络中建立邻接关系的数量。

如果存在DR的情况下,其他DR-Other只会和DR建立邻接关系,DR-Other之间建立邻居关系,但是不会建立邻接关系,状态一直处于2-way状态。
 

OSPF的邻居和邻接的关系

邻居关系:OSPF设备启动后,会通过OSPF接口向外发送Hello报文。当双方收到对方的hello报文的时候,报文里面的参数(hello time.dead interval , area id.authentication ,mask 等)一致的时候,并且邻居关系为2-way的时候,这个就可以成为是建立了邻居关系,但是还不是邻接关系。

邻接关系:在建立的邻居关系之后继续发送DD,LSR,LSU等报文,最终双方的LSDB达到同步之后,邻居状态为FULL时,才成为邻接关系。

邻居关系为双方只交互HELLO报文,不交互链路状态数据库,而邻接关系就要交互所有的信息
在这里插入图片描述
DRother之间是 2-way
 

OSPF更新机制

定时更新: LSA每30分钟更新一次,60分钟失效
触发更新: 当链路状态发生变化之后,立即发送链路状态更新

 

OSPF认证

简单认证:
接口认证
[R3]int g0/0/1
[ ]ospf authentication-mode simple huawei 明文认证
[ ]ospf authentication-mode md5 1 cipher huawei MD5

区域认证
ospf 1
area 0
authentication-mode md5 1 cipher abc

keychain认证
为了增强网络的安全性,需要不断地来更新密钥,但是其操作十分复杂,并且会出现BGP连接中断的危险。我们可以使用基于keychain的认证方式来实现密钥的周期性变换。使用keychain方式可以定义密钥的存活期,但需要注意的是要保证系统时间的一致,避免认证失败。
[R3]keychain key mode periodic daily
[R3-keychain]key-id 1
[R3-keychain-keyid-1]key-string huawei 密钥
[R3-keychain-keyid-1]algorithm sha-1 对密钥进行加密
[R3-keychain-keyid-1]receive-time daily 09:00 to 18:00 接收时间
[R3-keychain-keyid-1]send-time daily 09:00 to 18:00 发送时间
[ ]int g0/0/1
[ ]ospf authentication-mode keychain key

 

OSPF域内路由

Router LSA 和 Network LSA
熟悉Router-LSA内容及作用
熟悉Network-LSA内容及作用

1类LSA Router-LSA(只要是一台运行OSPF的路由器都会产生1类的LSA)
Router LSA 4种链路类型:p2p、stubnet(描述网段)、transnet(描述DR和BDR)、vlink
在这里插入图片描述
1类LSA的LS type、Link State ID、Advertising Router
Link State ID = Router ID
Advertising Router = Router ID

2类LSA Network LSA (有DR才会有2类)
MA和NBMA网络会产生2类LSA
在这里插入图片描述
2类LSA的LS type、Link State ID、Advertising Router
Link State ID = DR的IP
Advertising Router = DR的Router ID

SPF计算过程
第一步:构建SPF树
根据Router-LSA和Network-LSA中的拓扑信息,构建SPF树干

第二步:计算最优路由
基于SPF树干和Router-LSA、Network-LSA中的路由信息,计算最优路由
 

OSPF域间路由

熟悉区域间路由传递过程
理解区域防环机制
掌握虚连接配置过程
必须 骨干区域 + 非骨干区域

单区域过大,如果区域内某处发生故障,整个区域内的路由器都要重新就散路由,这将大大增加路由器的负担,降低网络运行的稳定性

区域间路由传递过程 —— 3类LSA Summary-network
在这里插入图片描述
一个路由器所有的接口都在同一个区域内 就叫内部路由器 IR
当一个路由器引入外部路由(import-route direct)后,就成为了ASBR
查看路由器是什么角色:dis ospf abr_asbr
在这里插入图片描述在这里插入图片描述
LS id:路由
Adv rtr:ABR的Router ID

区域防环机制

· 骨干区域与非骨干区域(必须紧密相连,直接相连),不符合的不会传递路由
· 三类LSA的传递规则(从骨干区域发出去的三类LSA,不回传给骨干区域)
 

虚连接

· 解决不规范的OSPF区域设计,违背了OSPF 骨干区域与非骨干区域必须相连,物理上没相连,进行逻辑上的相连 —— 虚连接

虚连接一定属于区域0

虚链路上Hello时间为30秒,死亡时间120秒;

[RTB]
[RTB]ospf 1
[RTB-ospf-1]area 1
[RTB-ospf-1-area-0.0.0.1]vlink-peer 3.3.3.3
在这里插入图片描述
在这里插入图片描述
不规则的三种情况。前面两种能用虚链路解决
 

虚链路可以配置 备份和认证
在这里插入图片描述
可以通过虚连接(看成逻辑连接) 连在一起,可以防止192.168.12.0这个网段断了,起到备份作用

 

OSPF域外路由

o_ase ,外部类型有两类。 第五类属于外部的2类
理解AS-External-LSA及ASBR-Summary-LSA的作用
熟悉OSPF外部路由计算原理
理解次优外部路由的产生原因 (FA避免)

外部路由引入 import-route direct 完成之后 就会成为 ASBR,产生5类LSA
5类LSA AS-External-LSA 在ASBR路由器上产生的

ASBR所在的区域不产生4类LSA(不产生的原因在下面有提到)
4类LSA是为5类LSA服务的,4类作用是告诉其他路由器ASBR在哪。
在这里插入图片描述
4类LSA ASBR-Summary-LSA
在这里插入图片描述
在这里插入图片描述因为area0,1类和2类LSA 把4类做的事情完成,所以在ASBR的区域里不需要产生4类LSA。
 

OSPF外部路由计算原理

外部路由类型

TypeCost
第一类外部路由AS内部开销值+AS外部开销值(真实路径)
第二类外部路由AS外部开销值(每经过一个路由默认是10)

默认采取第二类外部路由。 但一类和二类都存在的话,优先选取一类
 

次优外部路由的产生原因 (FA避免)

OSPF不能避免次优外部路由问题,为了解决次优外部路由问题,设置了Forwading Address,有转发地址就代表不是次优,表示是最短路径。
dis ospf lsdb ase External的路由ID
Forwarding Address : 0.0.0.0 表示次优

要想非0,同时满足以下3个条件,则产生的Type 5 LSA,其FA地址非0,等于该引入的外部路由的下一跳地址
①引入的这条外部路由,其对应的出接口的OSPF网络类型为broadcast
②引入的这条外部路由,其对应的出接口要启动OSPF,network 网段
③引入的这条外部路由,其对应的出接口未设置为silent-interface
 

OSPF 特殊区域

OSPF通过划分区域可以减少网络中LSA的数量。而可能对于那些位于自治系统边界的非骨干区域的低端路由器来说仍然无法承受,所以可以通过OSPF的特殊区域特性进一步减少LSA数量和路由表规模。

特殊区域主要是为了减少4类和5类LSA条目,减少数据库的大小

Stub区域和Totally Stub 区域 —— 用于 中央和分支的拓扑结构
Stub区域
在这里插入图片描述
一条缺省的三类LSA:lsdb中的sum-net 0.0.0.0

Totally stub
从stub改为totally,要在RTB——ABR路由器
在这里插入图片描述
RTD缺省指向RTB。 当RTD想去RTD路由条目没有的地方,就找缺省路由,指向RTB。 通过RTB——ABR 到达目的地

 
NSSA区域和Totally NSSA区域
在这里插入图片描述
以最优的路径 和 保留引入外部路由的功能。 —— NSSA ,7类LSA
7类LSA只存在NSSA区域
ASBR引入七类LSA,ABR将 7类LSA 转 5类LSA
not-so-stub area
NSSA:1 2 3 7 Totally NSSA:1 2 7

配置了stub区域的路由器再引入外部路由,是不成功的,学习不到的。
因此要配置nssa [R4-ospf-1-area-0.0.0.1]nssa
totally nssa 只需要在 ABR上配置,和stub一样的。 nssa no summary

stub\totally stub\nssa\totally nssa
· stub和nssa的区别:是否存在ASBR
· 哪个lsdb数据库最小? totally stub
 

7种LSA类型

在这里插入图片描述
比较一条新旧LSA:看序列号,再看校验和、之后再看 LS age
如果是新的,就更新到本地。如果是旧的,就把自己的更新过去。
如果一模一样的,直接忽略,丢弃。
如果是没有的,就学习。

思考:特殊区域的局限性在哪里?减少LSA还有没有其他方法?
①特殊区域不仅有效减少了区域内LSA的数量以及路由计算的压力,而且一定程度上也缩小了网络故障的影响范围。但特殊区域的局限性在于其作用范围只在本区域内
②减少LSA还可以通过路由聚合。 路由聚合分为两种:区域间和外部路由
 

 

OSPF路由汇总

区域间路由汇总和外部路由汇总 —— 减小LSDB数据库条目
OSPF不支持自动路由聚合,仅支持手动路由聚合。
区域间路由汇总
abr上做聚合,有多个ABR则在Router ID大的做

在这里插入图片描述
外部路由汇总
asbr上做聚合

在这里插入图片描述

在这里插入图片描述
第一个,ospf区域2中做虚链路
第二个,totally nssa
第三个,RTE和RTF做 接口认证 或 区域认证
第四个,import-route direct type 1
在这里插入图片描述在这里插入图片描述

OSPF默认路由

第一种方式:缺省路由 + 下放
第二种:没有缺省路由,强制下放

在这里插入图片描述
第一种方式:缺省路由 + 下放

R4 下放默认网关路由。 静态路由
[R4]ip route-static 0.0.0.0 0 202.103.68.5
[R5]ip route-static 0.0.0.0 0 202.103.68.4
如果R4 去ping一个全网不存在的接口。 会出现环路。 [R4]tracert 6.6.6.6
最后因为TTL值超时,丢弃结束。
但这里不做这个讨论,继续以缺省静态路由
R4下放一个默认路由
[R4]ospf
[R4-ospf-1]default-route-advertise

第二种:没有缺省路由,强制下放
·运营商规定不允许你用缺省路由指向他,因为容易产生其他问题。 要求 指定明细
[R4]ip route-static 202.68.1.0 24 202.103.68.5
[R4]ip route-static 202.68.2.0 24 202.103.68.5
不是缺省路由,但又想下发路由 —— ①R4上引入静态 ②强制下放
[R4]ospf
[R4-ospf-1]default-route-advertise always
当R5接口down掉了,R4路由表也不会消失

大总结

总结:
1.OSPF 5种报文:hello、DD、LSR、LSU、LSAck
2.OSPF 3张表:邻居表 dis ospf peer、数据库表 dis ospf lsdb、路由表 dis ospf roting
3.7种邻居状态:Down、init、2-way、Exstart、Exchange、Loading、Full
4.网络类型4种和hello时间:broadcast、NBMA、P2P(10s)、P2MP
5.OSPF 4种特殊区域: stub、totally stub、nssa、totally nssa
6.OSPF 4种链路状态:P2P、transnet、subnet、vlink
7.识别一条LSA的3个要素:type、link state id、adv router
8.域间汇总 abr-summary、外部汇总 asbr-summary
9.选路优先规则:域内>域间>外部type1>外部type2
10.引入路由默认:cost 1,tag 1,type 2,优先级150
·type 1,type 2:type 1 内部+外部cost(真实),type2只计算外部cost
11.认证范围:接口,区域,虚链路(骨干)
·区域类型:骨干(area 0),非骨干(常规),特殊
12.DR选举:先看优先级(默认为1,取值范围0-255,0就代表放弃的意思),再看router-id。 不抢占
router-id选举:1、手工指定  2、环回接口  3、物理接口  4、0.0.0.0
先后顺序,会影响router-id,先配物理口,再配环回口。 因此建议是手工指定
13.OSPF邻居建立不起来的原因
①广播网络类型中 子网掩码不匹配 建立不起OSPF邻接 dis ospf peer brief
②router-id 相同
③网络类型不同,改了网络类型,缺省Hello时间也不同
④hello,dead 时间不同,改了hello,dead也会改。4倍关系
hello时间相同,网络类型不同。 邻接能建立,但路由无法传递。
⑤MTU 值不同 (两端必须开启mtu enable,强制检测),MTU是在DD报文中,停留在ExStart(做一个主从选择,Master和Slave,比较Router ID 谁大)
⑥无 DR,(两端设置dr优先级为0),会停留在 2-way。 缺省dr优先级是1
⑦认证不同,一端做加密,另一端没加密。
⑧区域ID 不同,两台设备,一个区域0,一个邻居路由器为区域1
⑨末节标志位不同 stub,totally stub,nssa,totally nssa
⑩接口设置为silent-interface

实验部分,单独创建,后续…

  • 12
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是对OSPF协议基础分析: 1. OSPF协议简介 OSPF(Open Shortest Path First)是一种开放式最短路径优先协议,是由IETF定义的一种链路状态路由协议OSPF协议通过建立链路状态数据库(LSDB),计算每个路由器到达目的网络的最短路径,并通过洪泛算法将路由信息传递到整个网络中,实现路由信息的动态更新和路由的动态选择。 2. OSPF协议特点 OSPF协议具有以下特点: (1)基于链路状态:OSPF协议通过建立链路状态数据库(LSDB),存储网络中每个路由器与邻居路由器之间的链路状态信息。每个路由器都会维护自己的链路状态数据库,并计算到达目的网络的最短路径。 (2)支持分层设计:OSPF协议网络划分为多个区域,每个区域内部使用独立的SPF计算,减少LSA的洪泛范围,提高网络的可伸缩性和稳定性。 (3)支持路由重分发:OSPF协议可以将其他协议(如BGP、RIP等)学习到的路由信息导入到OSPF中,在OSPF网络中进行进一步的选择和分发。 (4)支持路由汇聚:OSPF协议可以将多个分散的OSPF区域汇聚到一个中心区域中,以便进行更加集中的管理和优化。 (5)支持多路径路由:OSPF协议可以配置多条等价路径,实现网络的负载均衡和容错。 3. OSPF协议工作原理 OSPF协议的工作原理如下: (1)邻居关系建立:OSPF协议通过Hello消息来发现邻居路由器,并建立邻居关系。路由器之间需要满足一定的条件,如IP地址在同一子网内、Hello消息中的参数匹配等等。 (2)链路状态数据库建立:OSPF协议在邻居关系建立后,通过LSA(链路状态广告)消息来交换链路状态信息,建立链路状态数据库。每个路由器都会维护自己的链路状态数据库,并计算到达目的网络的最短路径,生成SPF树。 (3)路由计算:OSPF协议通过SPF算法计算每个路由器到达目的网络的最短路径,并将路由信息存储在路由表中。 (4)路由信息传递:OSPF协议通过洪泛算法将路由信息传递到整个网络中,实现路由信息的动态更新和路由的动态选择。 4. OSPF协议的优缺点 OSPF协议具有以下优点: (1)支持分层设计,可以减少LSA的洪泛范围,提高网络的可伸缩性和稳定性。 (2)支持路由重分发,可以将其他协议学习到的路由信息导入到OSPF中,在OSPF网络中进行进一步的选择和分发。 (3)支持路由汇聚,可以将多个分散的OSPF区域汇聚到一个中心区域中,以便进行更加集中的管理和优化。 (4)支持多路径路由,可以实现网络的负载均衡和容错。 但是OSPF协议也有一些缺点,如: (1)复杂性较高,需要耗费较多的计算资源。 (2)需要占用较多的带宽和存储空间,特别是在大型网络中。 (3)对网络拓扑结构较为敏感,调整网络结构可能会导致路由信息的变化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值