ospf详解
一、OSPF 核心特性OSPF 全称开放式最短路径优先属于链路状态路由协议和 RIP距离矢量有本质区别核心优势如下无跳数限制RIP 最大 15 跳OSPF 无跳数约束可支撑大型园区、城域网组播交互路由报文使用 224.0.0.5、224.0.0.6 组播地址相比 RIP v1 广播报文大幅节省带宽收敛速度快链路变化仅泛洪对应 LSA不用全网传递完整路由表度量值为 Cost开销开销越小路径越优默认和接口带宽成反比SPF 最短路径算法防环路同一区域所有路由器同步相同链路状态数据库独立计算路由天然规避路由环路分层多区域设计通过区域划分缩小 LSDB 规模降低设备 CPU 计算压力业界通用标准绝大多数企业、运营商内网首选 IGP 协议。二、OSPF 三大核心表对应协议三阶段OSPF 完整工作流程分为邻居建立→数据库同步→路由计算分别对应三张表1. 邻居表记录直连 OSPF 邻居的 Router ID、接口 IP、邻居状态、优先级、DR/BDR 角色。 查询命令display ospf peer作用仅维护直连邻居关系判断是否能交换链路状态信息。邻居表怎么来的1.1. 触发条件接口使能 OSPF、网段匹配 network 宣告后接口周期性发送 Hello 报文。1.2. 生成全过程本接口向外发送 Hello携带本机 Router ID、区域 ID、Hello 时间、本接口网段掩码、已发现邻居列表对端路由器收到 Hello 报文先校验基础参数区域、计时器、掩码、认证等参数合法才会在本地新建一条邻居条目存入邻居表状态为 Init仅收到对方 Hello但对方 Hello 里没有自己的 Router ID本地回复 Hello把对方 Router ID 写入自己 Hello 的邻居列表对方收到带自身 ID 的 Hello状态切换为 2-Way邻居表条目完善记录对端 Router ID、对端接口 IP、接口网络类型、DR 优先级、DR/BDR 角色、Hello/Dead 剩余时间后续 DD/LSR/LSU 报文交互邻居状态继续更新ExStart→Exchange→Loading→Full邻居表实时刷新状态若 Dead 时间内收不到 Hello直接删除邻居表对应条目。邻居表数据来源所有数据全部来自直连邻居交互的 Hello 报文只记录直连 OSPF 邻居跨跳设备不会出现在邻居表。2. 拓扑表LSDB 链路状态数据库存放本区域所有 LSA 链路状态通告是全网链路的完整 “地图”。 同一区域内所有路由器的 LSDB 必须完全一致这是 SPF 算法计算路由的基础。LSDB 链路状态数据库怎么来的LSDB 是整个 OSPF 区域的 “全网地图”所有 LSA 的集合。2.1. 产生 LSA 的源头本机直连网段接口 UP、宣告进 OSPF 后路由器自动生成 1 类 LSA路由器 LSA描述自身所有直连链路开销、链路类型广播 / NBMA 网络DR 生成 2 类 LSA描述广播网段内所有接入路由器ABR 区域边界路由器生成 3 类 LSA把其他区域路由传递到本区域ASBR 引入外部路由生成 5 类 LSA描述 OSPF 域外路由 还有 4 类、7 类等特殊 LSA统一存入 LSDB。2.2. LSDB 同步生成完整拓扑表流程邻居达到 2-Way 后两端进入 ExStart交换空 DD 报文协商主从Exchange 阶段交互 DD 报文DD 报文只携带每一条 LSA 的头部摘要LSA ID、产生者 Router ID、序列号不携带完整链路信息本地拿收到的 LSA 摘要和自己本地 LSDB 对比本地没有这条 LSA → 发送 LSR 报文向邻居索要完整 LSA本地已有且版本更新 → 无需请求邻居收到 LSR回复 LSU 报文携带完整 LSA 内容本机收到完整 LSU存入本地 LSDB回复 LSAck 确认所有缺失 LSA 全部接收完毕邻居状态变为 Full同一区域内所有路由器的 LSDB 完全相同链路故障、网段变更时路由器重新生成新 LSA泛洪至全网所有设备同步更新 LSDB。LSDB 核心特点整张表存储区域内全部链路信息不区分路由好坏只记录客观拓扑同一区域 LSDB 必须一致是 SPF 计算路由的基础数据来源本机生成 LSA 邻居泛洪同步的 LSA。3. OSPF 路由表路由器基于本地 LSDB 运行 SPF 算法算出全网最优无环路由存入路由表路由标记为O区域内、O IA区域间、O E外部路由。OSPF 路由表怎么来的路由表不是直接交互得来完全本地计算生成不与邻居交换路由条目。完整生成步骤本地 LSDB 同步完成邻居 Full、数据库完整无缺失路由器以自己的 Router ID 为根节点运行 SPF迪杰斯特拉最短路径算法遍历 LSDB 里所有链路、网段、开销 Cost计算到达每一个目标网段的总开销对同一个目标网段保留总 Cost 最小的路径作为最优路由根据 LSA 类型给路由打上标记1/2 类 LSA 算出区域内路由 O3 类 LSA 算出区域间路由 O IA5 类 LSA 算出外部路由 O E1 / O E2将计算完成的最优路由存入OSPF 路由表再注入全局 IP 路由表拓扑发生变化链路断开、新增网段LSDB 更新后路由器自动重新运行 SPF刷新 OSPF 路由表。三、OSPF 多区域与四类路由器角色单一大区域会导致 LSDB 过于庞大、设备计算压力激增因此 OSPF 引入多区域分层架构骨干区域 Area 0 为核心所有非骨干区域必须直连 Area 0衍生四类路由器IR 区内路由器所有接口都属于同一个普通区域仅传递本区域 LSABR 骨干路由器至少一个接口在 Area 0 骨干区域ABR 区域边界路由器同时连接骨干 Area 0 和非骨干区域负责区域间路由汇总隔离不同区域 LSAASBR 自治系统边界路由器连接 OSPF 自治域与外部网络静态、RIP、BGP 等负责引入外部路由生成五类 LSA。四、OSPF 四种网络类型深度详解OSPF 会根据二层链路自动识别网络类型直接决定邻居发现方式、DR/BDR 是否选举、Hello/Dead 计时器、不同类型对接能否建邻居、能否学到路由。 先放总览对照表再逐个拆解细节最后重点讲跨类型对接兼容问题。4.1 四种网络类型完整对比表网络类型典型二层链路是否选举 DR/BDRHello 时间Dead 时间报文发送方式邻居发现方式Broadcast广播以太网、交换机、千兆 / 百兆电口是10s40s组播 224.0.0.5/224.0.0.6自动组播发现无需手动指定邻居P2P点到点PPP、HDLC 串行链路、专线直连否10s40s仅组播 224.0.0.5自动组播发现NBMA非广播多路访问帧中继 FR、ATM是30s120s单播报文无法自动发现必须手动 peer 指定邻居 IPP2MP点到多点手动修改 FR/ATM 接口Hub-Spoke 改造否30s120s组播自动发现邻居无需手动配置 peer4.3 重点不同网络类型对接能否建立邻居能否学习路由核心判定规则邻居建立的硬性条件是 Hello/Dead 时间一致只要计时器不匹配直接卡在 Init无法形成 2-Way 邻居计时器匹配前提下网络类型不同能建立邻居但可能卡在 2-Way无法交换 LSA没有路由。跨类型对接核心结论第一门槛Hello/Dead 计时器必须相同两端计时器不一样直接卡在 Init连基础邻居都无法形成第二门槛DR/BDR 选举逻辑必须统一计时器相同但一端选 DR、一端不选 DR只能到 2-Way无法同步 LSA没有路由解决方案互联两端接口手动配置成完全相同的 OSPF 网络类型保证计时器、DR 机制统一才能正常传递路由。五、OSPF 邻居 8 种完整状态迁移两台路由器从开机到完全同步路由会依次经历 8 种状态也是排错核心依据Down接口未启用 OSPF、邻居未配置无任何 Hello 交互NBMA 手动配置邻居后未收到 Hello 也会显示 DownAttempt仅 NBMA 网络特有已单播发送 Hello但未收到对方回应Init收到对方 Hello但对方 Hello 里的邻居列表没有本地 Router ID单方可见2-Way双方 Hello 互相包含对方 Router ID邻居关系建立广播 / NBMA 网络在此阶段选举 DR/BDRP2P/P2MP 直接进入邻接ExStart协商 DD 报文主从关系交换空 DD 报文Exchange交互携带 LSA 摘要的 DD 报文同步全网链路目录Loading发送 LSR 请求缺失 LSA接收 LSU 完整链路信息FullLSDB 完全同步邻接关系建立可正常计算路由。邻居建立成功的硬性前提任意不匹配直接卡在 Init/2-Way两端 Router ID 不冲突MA 网络接口子网掩码一致接口 OSPF 区域 ID 完全相同认证配置密码 / 模式匹配Hello、Dead 计时器参数一致特殊区域Stub/NSSA配置两端统一。总结OSPF 作为链路状态协议核心逻辑可以概括为三步Hello 建邻居→同步 LSDB 链路地图→SPF 算最优路由。 四种网络类型是 OSPF 重难点核心记忆两点Hello 10s 组Broadcast、P2PHello 30s 组NBMA、P2MP不同组永远无法建立完整邻居选 DR 组Broadcast、NBMA不选 DR 组P2P、P2MP同计时器不同 DR 规则只能停在 2-Way无路由。 多区域分层解决大型网络性能问题DR/BDR 机制减少广播网络报文交互压力。日常运维中掌握邻居状态迁移、Cost 计算、display ospf error 排错命令就能解决 90% 以上 OSPF 故障。如果想继续提升网工技能以及后续有打算考证书的小伙伴记得来尚文网络哦~~~~~~~悄悄告诉你们如果来报名提一下说我是看csdn张老师报的名可以打折