0基础学RS(二十四)OSPF知识点

简介

开放式最短路径优先(OSPF)协议是一种链路状态路由协议,是一种开放式的路由协议,支持多厂商间使用。OSPF使用了区域概念,管理员可以把路由器划分到不同区域,对路由更新流量进行控制。

基本信息

  • OSPFv2适用于IPv4网络中的OSPF协议
  • OSPFv3适用于IPv6网络中的OSPF协议
  • OSPF的IP协议号为89
  • 使用组播224.0.0.5和224.0.0.6进行通信
  • OSPF使用最短路径优先算法(SPF),也叫Dijkstra算法
  • 管理距离(AD)为110
  • 具有邻居的概念
  • OSPF的度量值(cost开销值)的参考标准是:带宽
  • 更新方式:
  1. 触发更新:拓扑发生变化,路由条目更新的时候,立即更新
  2. 周期更新:每30分钟更新一次,60分钟没有收到LSA更新,将该LSA从LSDB中删除。
  3. OSPF更新的是LSA
    LSDB中的LSA每过30分钟会主动发起更新。
    如果到达最大老化时间3600秒仍然没有收到更新,该LSA将从LSDB中删除。

OSPF数据库和表

  • 邻接数据库:它构建了邻居表
  1. 该表对于每个路由器都是唯一的
  2. 保存建立双向通信的所有邻居路由器
  3. 通过show ip ospf neighbor 命令查看邻居表
  • 链路状态数据库(LSDB):它构建了拓扑表
  1. 保存网络中其他路由器信息
  2. 保存网络中的拓扑
  3. 相同区域内的路由器有相同的链路状态数据库(LSDB)
  4. 通过show ip ospf database 命令查看邻居表
  • 转发数据库:它构建了路由表
  1. 通过SPF算法获得到达目标网络的最优路由放入路由表
  2. 每台路由器中的路由表是唯一的
  3. 通过show ip route ospf命令查看ospf的路由条目

OSPF数据包

数据包类型作用
Hello用于发现建立和维持邻居关系
DBD(数据库描述数据包)用于数据库同步
LSR(链路状态请求数据包)用于一台路由器向来一台路由器请求链路状态同步
LSU(链路状态更新数据包)用于回复LSR请求的数据包
LSAck(链路状态确认数据包)用于确认其他数据包

Hello数据包内容
在这里插入图片描述
Hello头部

字段内容
版本OSPF的版本(v2或者v3)
类型1表示Hello数据包;2表示DBD数据包;3表示LSR数据包;4表示LSU数据包;5表示LSAck数据包
路由器 ID(Router-ID)用于唯一表示一个路由器
区域 ID(Area ID)OSPF有区域概念,Area ID表示始发区域编号

Hello数据包

字段内容
网络掩码与发送接口关联的子网掩码
Hello间隔发送Hello包的间隔时间。多接入网络中Hello间隔时间默认为10s
Dead间隔默认情况下Dead间隔时间为Hello间隔时间的4倍
路由器优先级用于选取DR和BDR,所有OSPF路由器的默认优先级为1,可以手动修改0-255,0代表不参与选举
指定路由器(DR)DR的路由器ID(Router-ID)
备用指定路由器(BDR)BDR的路由器ID(Router-ID)
邻居列表邻居路由器的路由器ID(Router-ID)

路由器 ID(Router-ID)

Router-ID获取的方式:

  1. 手动配置Router-ID
  2. 如果没有配置Router-ID,将选取任意环回接口的最高IPv4地址作为Router-ID
  3. 如果没有配置环回接口,将选取所有物理接口最高IPv4地址作为Router-ID

邻居建立问题

  1. Hello间隔时间和Dead间隔时间要一致
  2. 网络类型要一致
  3. 直连设备的路由器ID(Router-ID)不能一样
  4. OSPF版本保持一致
  5. 直连接口在同一网段
  6. 直连接口在同一区域(Area)
  7. MTU保持一致
  8. 认证问题

OSPF 状态

  • Down:没有收到Hello包为Down状态,并且发送Hello包

  • Init:收到对方发送的hello包进入init状态

  • 2-Way:收到对方回复的hello进入2-way状态,建立邻居关系(多路访问链路中选举DR,BDR)

  • Exstart:相互发送DBD包序列号选举主从关系,主设备先发送DBD包(Router-ID大的为主设备)

  • Exchange:相互交换DBD信息,使用DBD包的序列号确认收到DBD包(如果DBD和自己的一致则直接进入Full状态,不一致进入loading状态)

  • Loading:通过LSR,LSU,LSAck获取更多路由信息,然后过渡到Full状态

  • Full:建立邻接关系

在这里插入图片描述



注意:

2-Way状态是建立邻居关系
Full状态是建立邻接关系



OSPF路由器角色

  • 指定路由器(DR)
  • 备用指定路由器(BDR)
  • 其他路由器(DROTHER)

DR和BDR的选举:

  1. 优先级高的成为DR。
  2. 优先级一样看Router-ID,Router-ID 大的为DR

在多接入网络中,OSPF选举DR和BDR来管理邻接数量和链路状态通告(LSA)。
DROTHER使用组播224.0.0.6向DR和BDR发送LSA。
DR负责收集和发送LSA给其他路由器,使用组播224.0.0.5发送LSA。

OSPF中的DR和BDR不会实行抢占

在网络中刚开始就选举了R3为DRR2为BDR
在这里插入图片描述
当R4加入网络过后R3和R2的角色将不会因为一个更高Router-ID的路由器加入而发生改变。
在这里插入图片描述
如果R3发生故障,R2将成为DRR4将成为BDR

注意:在点对点网络中是不会选举DR和BDR的

OSPF区域概念

为了使OSPF更加高效且课扩展,OSPF使用多区域,支持分层路由。同一个区域内的路由器共享相同的LSDB信息。

  • 单区域OSPF:所有的路由器都在同一个区域内。最好使用区域 0
    在这里插入图片描述

  • 多区域OSPF:以多区域、层级式的方式来实施OSPF。所有区域必须连接到骨干区域(区域 0)。

在这里插入图片描述

多区域OSPF

通过使用多区域OSPF可以将一个大型路由域划分为更小的路由域。每个区域之间的路由器都具有到达不同网络的路由,但是不同区域内的LSDB是不一样的,每个区域只需管理好自己区域内的LSDB,而无需管理别的区域内的LSDB。例如,区域内的拓扑出现变化,只有区域内的路由器重新计算数据库。相对于单区域OSPF,多区域OSPF大大减少了计算量。

注意:其他区域中的路由器也会接收到拓扑变化的更新,但是这些路由器只会更新自己的路由表,而不会重新执行SPF计算。

多区域OSPF的优势:

  • 缩小了路由表:可以对区域间的网络地址进行汇总。默认情况下不启用汇总功能。(EIGRP和RIPv2默认开启自动汇总)
  • 减少链路状态更新的负载:每个区域只对自己区域内的链路状态进行更新,不会将所有区域的链路状态进行汇总更新(单区域OSPF将对整个区域内的链路状态进行更新,无论区域有多大)。
  • 降低了SPF计算频率:单区域OSPF中的拓扑变化只会影响一个区域内部。

区域51中的拓扑发生变化,只会在区域51内进行LSA泛洪,SPF计算也只在区域51里面进行。

区域1 和区域0只更新路由表。

在这里插入图片描述

多区域OSPF路由器角色

  • 区域边界路由器(ABR):
    顾名思义区域边界路由器就是在OSPF中连接不同区域的路由器。这类路由器必须为相连的每个区域维护单独的LSDB,并且能在区域间路由。
    ABR是区域的送出点,也就是说从本区域想去往另一个区域只能从ABR通过。因此ABR可以对路由条目进行汇总,从而减小路由表。
  • 自制系统边界路由器(ASBR):
    该路由器用于连接外部网络,外部网络不是OSPF的一部分。
    例如,该路由器的一个接口连接了OSPF,另一个接口连接了EIGRP。
    ASBR可以使用“路由重分布”的技术将外部网络信息导入OSPF。
    例如,在ASBR上使用“路由重分布”可以将EIGRP的路由条目导入OSPF,也可以将OSPF的路由器条目导入EIGRP中。

如下图所示:
R1为ABR同时也是ASBR
R2为ABR

在这里插入图片描述

多区域OSPF LSA类型

LSA类型描述
第1类路由器LSA——区域内LSA (区域内传递的LSA)
第2类网络LSA——谁是DR
第3类汇总LSA——区域间LSA (其他区域传递的LSA)
第4类汇总LSA——谁是ASBR
第5类自制系统外部LSA(从外部网络传递的LSA)
第6类组播OSPF LSA
第7类为NSSA定义的LSA
第8类 、第9类用于承载IPv6的OSPF
第10类、第11类用于MPLS TE环境
  • 一个LSU包含一个或多个LSA。
  • LSA包含目的网络的路由信息。

特殊区域

  • 末节区域(STUB)
  • 完全末节区域(totally STUB)
  • NSSA区域(非完全末节区域)
  • 完全NSSA区域(完全非完全末节区域)

下一节在配置中详细讲解

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

网工小王

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

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

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

打赏作者

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

抵扣说明:

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

余额充值