OSPF协议知识汇总

OSPF(开放式最短路径优先)是一种内部网关协议,用于自治系统内的路由选择。它基于Dijkstra算法计算最短路径树,支持负载均衡和服务类型选路。OSPF包括Hello包、数据库描述包、链路状态请求、链路状态更新和确认包,通过7个状态机建立和维护邻居关系。OSPF的配置涉及区域划分、邻居发现、数据库同步和路由计算。在异常情况如网络变更时,OSPF会触发更新以保持路由信息的准确性。
摘要由CSDN通过智能技术生成

什么是OSPF?

OSPF:(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),其核心思想是SPF,使用著名的迪克斯彻(Dijkstra)算法来计算最短路径树。OSPF支持负载均衡和基于服务类型的选路,也支持多种路由形式,如特定主机路由和子网路由等。

开放式最短路径优先协议     无类别链路状态型路由协议

公有协议;跨层封装到IP报头,协议号89; 组播更新:224.0.0.5  224.0.0.6

触发更新、周期更新(30min)

需要结构化的部署:区域划分  地址规划

OSPF的5个数据包

数据包结构

数据包类型 

Hello:用于邻居、邻接    发现、建立、保活    hello time 默认10s或30s

DBD:数据库描述包

LSR:链路状态请求

LSU:链路状态更新  

LSack:链路状态确认

OSPF的7个状态机

Down:一旦本地发出hello包进入下一个状态

Init:初始化  收到的hello包若存在本地的RID进入下一个状态

2way:双向通讯   邻居关系建立的标志  

条件匹配:点到点网络将直接进入下一个状态; MA网络类型将进行DR/BDR选举,非DR/BDR间将无法进入下一状态;

Exstart:预启动   使用类似hello的DBD进行主从关系的选举,RID大为主优选进入下一状态

Exchange:准交换   使用真正的DBD进行数据库目录的共享,需要使用ACK确认

Loading:加载      使用LSR/LSU/LSAck来获取未知的LSA信息;

Full:转发    邻接关系建立的标志

OSPF的工作过程

OSPF协议启动后,A向本地所有启动了OSPF协议的直连接口组播224.00.5发送hello包;本地hello包中携带本地的全网唯一的router-id

之后对端B运行OSPF协议的设备将回复hello包,该hello包中若携带了A的routerid,那么A/B建立为邻居关系,生成邻居表

邻居关系建立后,邻居间进行条件匹配,匹配失败就停留于邻居关系,仅hello包周期保活 

条件匹配成功可以开始建立邻接关系:

邻接间共享DBD包,将本地和邻接的DBD包进行对比,查找到本地没有的LSA信息目录;

之后使用LSR来询问,对端使用LSU应答具体的LSA信息,之后本地再使用ack确认,可靠;

该过程完成后,生成数据库表

再之后本地基于数据库表,启用SPF选路规则,计算到达所有未知网段的最短路径,然后加其加载到本地的路由表中,收敛完成,hello包周期保活,每30min再周期收发一次DBD来判断和邻接间数据库是否一致

结构突变

1、新增网段 直连新增网段的设备,将直接使用LSU包来告知本地所有邻接,之后邻接传邻接扩散到全网,需要ACK确认

2、断开网段 直连断开网段的设备,将直接使用LSU包来告知本地所有邻接,之后邻接传邻接扩散到全网,需要ACK确认

3、无法沟通    dead time 为hello time 的4倍;当dead time到时时,断开邻居关系,删除通过该邻接生成的路由条目

OSPF的基础配置

[r1]ospf 1 router-id 1.1.1.1  启动时,需要定义进程号,进程号仅具有本地唯一性, 建议同时配置全网唯一的router-id, 生成顺序:手工 >本地环回接口中最大ip地址数值>本地物理接口中最大数值的ip地址  

[r1-ospf-1]

宣告:ospf协议在宣告的同时需要进行区域划分

区域划分规则

1、星型拓扑结构,区域0为中心骨干区域,其他大于0为非骨干站点区域;

2、必须拥有ABR--区域边界路由器

[r2-ospf-1]area  0     先进入区域,之后再该区域内宣告属于该区域的接口,宣告时必须携带反掩码

[r2-ospf-1-area-0.0.0.0]network 12.1.1.2 0.0.0.0

[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0

[r2-ospf-1-area-0.0.0.0]q

[r2-ospf-1]area  1

[r2-ospf-1-area-0.0.0.1]network 23.1.1.1 0.0.0.0

启动配置完成后,邻居间收发hello包,建立邻居关系,成邻居表

[r2]display  ospf peer                (查看邻居表)

[r2]display  ospf peer  brief            (摘要)

邻居、邻接关系的发现、建立、保活均依赖hello包进行

Hello包中邻居间必须完全一致的参数:任意参数不同,均导致邻居关系无法建立

1、子网掩码(华为)发送hello包接口的源ip地址其掩码

2、Hello dead time      -- OSPF接口网络类型相关

3、认证字段                 -- 更新安全

4、区域ID                     -- 要求区域间存在ABR

5、末梢区域标记          --特殊区域

邻居关系建立后,邻居间进行条件匹配,匹配成功者间可以建立为邻接关系;邻接关系间将使用DBD包进行主从关系选举,之后由主优先使用DBD进行数据库目录信息的共享,从而最终基于LSR/LSU/LSAck来获取未知的LSA信息;当收集到全网的LSA信息后,装载于本地的LSDB(链路状态数据库)--数据库表

<r2>display  ospf lsdb  (查看数据库表)

<r1>reset ospf process   (重启OSPF)

OSPF邻居成为邻接

在点到点网络中,所有的OSPF邻居将直接建立为邻接关系;

在MA网络中,为了避免大量的重复的LSA更新—因为OSPF需要邻接间进行DBD对比,故没有接口水分割机制;故必须进行DR/BDR选举,非DR/BDR间仅建立邻居关系;---在每一个MA网络中均需要进行一次选举;

选举规则:

1、比较优先级,数值大优,默认为1,若为0为放弃选举

2、优先级一致,比较参选接口所有设备的router-id,数值大优

[r1-GigabitEthernet0/0/1]ospf dr-priority 2  (修改参选接口的优先级)

切记:DR选举非抢占 ,故在修改优先级后,必须重启参选设备ospf进程来重新选举

OSPF的不规则区域

一台ABR设备若没有连接到骨干区域0,那么默认不能进行区域间路由的共享

1、离了骨干的非骨干区域   2、不连续骨干

解决方案:多进程双向重发布

多进程--- 同一台设备上,不同的进程可以工作在不同的接口上,建立各自的邻居关系,生成各自的数据库(不共享);仅将各自计算所得路由加载于同一张路由表内;一个接口只能被一个进程来宣告;

双向重发布,ASBR(自治系统边界路由器、协议边界路由器),将不同进程或不同协议产生的路由进行双向共享;

[r2]ospf 1

[r2-ospf-1]import-route ospf  2

[r2-ospf-1]q

[r2]ospf 2

[r2-ospf-2]import-route ospf  1

OSPF常见7类LSA--数据库表

<r1>display  ospf lsdb (查明看数据库表)

<r1>display ospf lsdb router 1.1.1.1

类别名  link-id(在目录中的编号)

所有类别的LSA,均携带以下信息

  Type     : Router    类别名  此处为1类

  Ls id     : 1.1.1.1     link-id  在目录中的编号

  Adv rtr   : 1.1.1.1     通告者 --- 该LSA的更新源设备的RID

  Ls age   : 1359    老化时间   1800s周期刷新为0   触发更新归0  最大3609s

  Len        : 48

  Options  :  E 

  seq#       : 8000000c   序列号

  chksum   : 0x818c     校验码

 LSA的新旧比较

1、会先比较序列号,序列号越大越优,

2、如果序列号相同,会比较校验值(checksum)越大越优

3、如果校验值也相同,会比较LSA Age时间,是否等于MAX-age时间(3600)

4、如果age时间不等于max-age时间,会比较他们的差值,如果差值大15分钟(900秒),小的优

5、如果age时间不等于max-age时间,会比较他们的差值,如果差值小于15分钟,说明是同一条LSA,忽略其中一条

什么情况下LSA会更新:

1、1800到期会周期更新

2、触发更新(接口地址变化(增加,或删除),修改接口开销值,删除接口,或者删除通告)

常见的7中类型

类别名类别名 通告者携带的信息link-id
1类LSA-router  本区域内本区域内的每台路由器该区域每台设备的直连拓扑通告者的RID
2类LSA-Network本区域内每个MA网段中的DR该网段的拓扑DR接口的ip地址
3类LSA-summary 整个OSPF域ABR,在经过下一台ABR时,修改为新的ABRO IA 域间路由域间路由的目标网络号
4类LSA-asbr 除ASBR所在区域外的ABR,在经过下一台ABR时,修改为新的ABRASBR的位置ASBR的RID 
5类LSA-ase整个OSPF域 ASBR 在ospf内部传递时不变O E  域外路由域外路由的目标网络号  
7类LSA-nssa单个的NSSA区域内 ASBR

 O N 域外路由

域外路由的目标网络号

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不大聪明¿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值