ospf基础知识

ISIS OSPF-链路状态路由协议:

开放式的最短路径优先协议 每台运行了OSPF协议的设备均会共享自身的接口连接情况(LSA---拓 扑信息),所以设备互相共享这些信息之后就可以获取到整个OSPF网 络的拓扑信息,随之依靠SPF算法计算得出路由。 Eigrp RIP--距离矢量路由协议--共享路由表

动态协议

--由运行同一种动态路由协议的路由器通过沟通协商最终计 算得出的路由信息

1.占用资源少---

2.收敛速度快--- 收敛---首次收敛 拓扑结构发生变化重新收敛

3.选路优--- 通过范围划分 外部网关协议---EGP BGP 内部网关协议---IGP---OSPF RIP ISIS EIGRP

根据协议本身的特点 有类别的动态路由协议:

在传递路由信息时不携带子网掩码

RIPv1 无类别的动态路由协议:

在传递路由信息时携带子网掩码

RIPv1--采用广播的方式传递数据包 剩下所有的协议均使用组播发送自身的数据包(IGP)

RIP---224.0.0.9

Ospf--224.0.0.5 224.0.0.6

RIP实际上只能适用在中小型网络环境---16跳的限制 而OSPF能够适应中大型的网络环境

OSPF为了适应中大型的网络环境采用了结构化部署的思想 (区域划分)

区域ID--32位二进制组成,用点分十进制表示 标准的区域划分要求:

区域之间必须存在ABR设备

ABR设备—同时属于两个区域的设备---一台ABR设备可以同时属于多 个区域

区域划分必须按照星形拓扑结构部署

一般把OSPF的中间区域称为骨干区域,=并且要求骨干区域的区域ID 必须是0.0.0.0(area 0)

OSPF网络如果进行了区域划分,这样的网络称为多区域OSPF网络,如 果没有进行区域划分称单区域OSPF网络

五个数据包

OSPF的hello包作用:

周期性的发现建立和保活邻居关系

周期保活---运行了OSPF协议的路由器会以10S为周期发送HEELO报 文,hello报文中会携带本设备的RID,对端收到后就可以判断本设备 存活,如果40s没有收到HEELO包,就认为该设备故障,会清空从该 设备学到的LSA。

OSPF的计时器

hello时间--默认是10s/30S

Dead-time死亡时间---默认是四倍的hello时间

RID---运行了OSPF的路由器设备为了区分和标识不同的路由器身份设 计的路由器编号--本质是32位二进制,用点分十进制表示  获取R-ID的方式有两种

手工配置--由工程师自行配置,符合要求即可(IP地址格式,不能重 复)

自动生成--设备会选择自身环回接口数值最大的作为自身的RID-如果 设备没有配置环回会选择接口IP地址数值最大的作为RID

DBD包-

数据库描述包:会携带数据库中收集到的LSA信息的摘要值 LSDB--链路状态数据库--存储收集到的LSA信息

LSR-

链路状态请求包

LSU-

链路状态更新包

LSACK-

-链路状态确认包

OSPF的状态机

邻居建立的过程 当收到对端发送的hello报文中携带自身的RID,才可以进入2-way 确保hello报文的可靠传递,保证对端一定收到了我发送的hello报文

2-way--必须收到对端发送的hello报文中携带本地的RID才可以进入 该状态,该状态标志着邻居关系的建立

条件匹配——只有条件匹配成功的路由器才可以进入下面的状态,如 果条件匹配失败则停留在邻居状态,仅使用heelo包进行周期保活。

预启动状态--主从关系的选举--OSPF协议并不希望同时共享LSA信 息,因为这样会在某一时刻很多设备同时共享这样会导致链路带宽被 占用过多,导致数据传输收到影响

选举规则:会比较设备RID的大小,rid大的设备将成为主设备 进行主从关系选举的OSPF数据包是DBD包,并且该DBD包没有携带真正 的LSA摘要信息

准交换状态---使用真正携带摘要信息的DBD包传递LSA摘要信息

1.建立邻居:启动配置之后,ospf将向本地所有的运行了ospf 协议的端口发送hello包(224.0.0.5),hello包中携带自己的 RID用来区分不同路由器的身份(不携带路由信息),同时携带 自己已知的邻居RID,之后会将这些RID存储在自己的邻居表 中。

2.条件匹配:邻居表建立完成之后,会进行条件匹配,如匹配 成功则开始进入下一个状态,如果匹配失败则会停留在邻居关 系。---之后仅hello包进行保活。

3.如果匹配成功,则开始建立邻接关系-之后会使用未携带数据 DBD包(并没有携带LSDB的摘要信息)进行主从关系的选举。主 路由器会优先进入下一个状态,会优先发送摘要进行比对,比 对之后,会请求自己本地没有的lsa信息。对端会发送真正携带 lsa信息的LSU包,会利用LSACK进行确认。本地的链路状态数据 库建立完成,生成本地链路数据库表。---Full 分区 新分区 1 的第 7 页 库建立完成,生成本地链路数据库表。---Full

4.完成收敛----基于本地的链路状态数据库收集的lsa,根据自 己的spf算法计算得出最短路径树。生成路由表。

5.收敛完成后,会使用hello包每10s发送一次,用来保活邻居 关系。ospf会每30min进行一次周期更新。

条件匹配---在一个广播域中需要选择一台路由器(DR)和剩下所有路 由器建立邻接关系,同时需要选择一台备份设备,充当DR的备份,当 DR设备出现故障需要行使DR的工作。

DR和BDR的选举规则:先看接口优先级,之后会根据设备的RID大小选 择RID大的作为DR次大的作为BDR设备

[Huawei-GigabitEthernet0/0/0]ospf dr-priority 10---修改接口DR 选举优先级,数值大的作为DR设备

OSPF的DR和BDR选举是非抢占的,简单来说就是DR和BDR选择 出来之后,新加入设备不会抢占DR和BDR的身份

OSPF的数据报文

OSPF是一种跨层封装的协议,协议号是89没有传输层(减少封 装和解封装的时间,加快收敛)

OSPF的公共头部所有OSPF报文均携带的信息

版本---表明是OSPFV2 还是OSPFV3

类型---标准该数据包是OSPF的哪一种数据包

1-hello包

2--dbd包

3-LSR

4-LSU

5-LSACK

认证类型:0 ---空认证 1-simple :简单认证(明文认证) 2--MD5

报文长度---头部+数据包本身的数据量

网络掩码--接口发出hello时会携带该接口的掩码。 在建立邻居时会比较两端设备的掩码,如果掩码不一致则会导 致建邻失败——注意:只有以太网链路才会检测掩码 hello时间和死亡时间,注意这两个参数如果两端对应不上也会 导致建邻失败。

可选项-是OSPF的一些特性(OSPF的特殊区域的标记会在选项 字段携带,如果字段不统一则会导致建邻失败)

路由器优先级---ospf dr-priority用来条件匹配选择DR设备的参数

指定路由器--DR的身份

备份指定路由器---BDR的身份(RID):注意在一个广播域中

所有设备的DR和BDR的认知必须统一。

只有DR和BDR会监听224.0.0.6的组播地址

作用:

1.用来主从关系选举(没有携带lsa摘要信息的DBD报文)

2.用来减少OSPF重复更新,利用携带LSA摘要信息的DBD进行本地数据库比对

3.主从关系选举之后由主设备会主导后续的DBD报文交互的有 序性(确保DBD报文的可靠传输)---隐性确认

接口最大传输单元:接口MTU值,

[r2-GigabitEthernet0/0/0]ospf mtu-enable

--OSPF协议默认是不进行接口MTU检测的,如果 想要开启该功能需要手工配置。如果两端均开启了接口MTU检 测功能如果接口MTU不一致会导致状态停留在预启动状态。

I:如果I为置为1则代表该DBD包是进行主从关系选举的DBD包

M:MORE,如果M标志位置为1则代表本设备后续还有DBD报 文需要发送,如果置为0则代表该数据包已经是最后一个DBD 报文。

MS:标注该DBD报文是主设备发送的DBD报文

序列号的作用:隐性确认,去确保DBD报文的有序可靠传输

在华为体系下,是由从设备主动发送携带LSA-摘要信息的DBD 包

LSR--链路状态请求报文

必须靠LSA的三元组才能唯一的标识一条LSA 数据包的五元组—— 数据的源IP地址 目标IP地址 源端口号 目标端口号 协议号

OSPF--LSACK的确认,是对每一条请求的LSA进行确认

OSPF---接口网络类型 OSPF接口工作在不同的网络环境下工作方式有所区别

P2P--点到点网络

MA--多点接入网络

BMA--支持广播/组播

NBMA--只能单播

display ospf interface GigabitEthernet 0/0/0 --查看OSPF接口 网络类型的命令

OSPF的开销值计算公式=参考带宽(默认值是100MBPS)/真实 带宽 如果算出来的值小于1则直接按1来算,如果大于1的小数,小数 部分直接舍弃

bandwidth-reference --修改OSPF参考带宽的指令

常见问题

问题1

只有中心获取到了一个分支的hello报文,分支之间没有获取到 任何hello报文

原因:OSPFV2通过组播发送数据包,但是MGRE环境只能支持单 播,所以必须在中心开启伪广播 [r1-Tunnel0/0/0]nhrp entry multicast dynamic

问题2

中心开启伪广播之后,中心和一个分支建立了邻接关 系,但是分支之间没有信息,其次有一个分支只和中心保持init 状态。

建议直接更改隧道接口的接口网络类型为P2MP,直接方中心和 分支不进行DR和BDR的选举,就不会造成认知不统一的问题

P2mp---首先没有真实实际的网络类型是P2MP,是一种专门设 计出来的网络类型

同时为了加快收敛,可以修改OSPF计时器 [r1-Tunnel0/0/0]ospf timer hello 10 -

解决方法: [r1-Tunnel0/0/0]ospf network-type broadcast--需要修改OSPF协 议在mGRE隧道接口下的默认接口网络类型为 broadcast.

问题三

如果中心和分支的DR和bdr认知不一致会导致网络中 一些由DR设备发送的LSA信息残缺,导致没有办法获取到完整 的路由信息。

[r2-Tunnel0/0/0]ospf dr-priority 0--解决方法就是让分支设备放弃 选举DR和BDR

解决方法2. [r1-Tunnel0/0/0]ospf dr-priority 10--让中心的设备接口DR选举 优先级为最高。

如果想要还原环回接口的默认掩码:[r2-LoopBack0]ospf network-type broadcast

Attempt---只有在NBMA环境下才会出现,等待对端也指定发 送的对象

在NBMA环境下因为不支持组播报文,所以即时宣告了OSPF接 口,接口依然没有办法发送hello(224.0.0.5是一个组播报 文),所以必须手工指定建立邻居的对象IP地址 [Huawei-ospf-1]peer 12.0.0.2 --指定建邻的设备IP地址,双方都需要指 定

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值