ospf综合实验+第四章笔记 📅 发布时间:2026/8/21 23:34:43 👁 浏览次数: 拓扑:ISP 公网底层链路:MGRE 和 NHRP:ospf:全网可通HCIP OSPF 第四章笔记对应知识点OSPF 基础0104、LSA、网络类型、不规则区域、特殊区域、路由聚合、拓展配置0910。 命令示例采用华为 VRP 风格不同 VRP 版本的可选参数可能略有差异配置时可用?核对。一页速记OSPF 的核心逻辑OSPF 是链路状态型 IGP。它不是直接把“路由表”发给邻居而是通过 Hello 报文发现并维护邻居邻接关系建立后同步 LSA每台路由器在同一区域内形成一致的 LSDB以自己为根运行 SPF 算法得到最短路径树将最优结果装入 OSPF 路由表再参与全局路由优选。记忆链邻居表 → LSDB → OSPF 路由表 → 全局 IP 路由表。OSPF 使用 IP 协议号89不是 TCP/UDP。Router ID 是 32 位标识写法类似 IPv4 地址但不一定必须是接口地址。骨干区域是Area 0正常多区域设计中非骨干区域应与 Area 0 相连。区域边界在路由器上一条链路所属区域由接口配置决定。区域内计算依赖 1、2 类 LSA区域间路由主要依赖 3 类 LSA。DR/BDR 是接口或网段级角色不是整台设备的永久角色。DR/BDR 选举不抢占改变优先级后通常需要重建邻居关系才会重新选举。OSPF 路由优先顺序通常为区域内 区域间 外部 Type 1 外部 Type 2。特殊区域的目标是减少 LSDB 和路由表规模不是提升单条路径带宽。1. OSPF 基础1.1 基本特征项目内容协议类型链路状态型内部网关协议 IGPIP 协议号89度量值Cost累计出接口开销算法SPF/Dijkstra组播地址224.0.0.5AllSPFRouters、224.0.0.6AllDRouters支持能力VLSM/CIDR、等价负载分担、区域化设计、认证、路由聚合无环机制同一区域 LSDB 一致每台设备基于完整拓扑独立运行 SPFOSPF Cost常见计算思想接口 Cost 参考带宽 ÷ 接口带宽 路径 Cost 沿途各出接口 Cost 之和注意计算时累加的是流量方向上的出接口 Cost高速接口可能因默认参考带宽过低而都得到 Cost 1应在全网统一调整参考带宽也可在接口上手工指定 Cost手工值优先。[R1] ospf 1 [R1-ospf-1] bandwidth-reference 10000 [R1-GigabitEthernet0/0/0] ospf cost 10参考带宽必须全网保持一致否则不同路由器可能对同一路径做出不一致判断。1.2 Router IDRouter ID 用于唯一标识一台 OSPF 路由器也是 LSA 头部的重要字段。建议手工配置[R1] ospf 1 router-id 1.1.1.1若未手工指定设备会按版本规则自动选择接口地址。自动选择容易因接口变化导致 Router ID 不稳定因此生产网通常使用稳定的 Loopback 地址作为规划依据。查看与重置R1 display ospf peer brief R1 display ospf brief R1 reset ospf process修改 Router ID 后通常需要重启 OSPF 进程才会生效重启会造成邻居中断操作前应评估影响。1.3 三张关键表表常用查看命令作用邻居表display ospf peer记录邻居/邻接状态LSDBdisplay ospf lsdb保存收到和本地产生的 LSAOSPF 路由表display ospf routingSPF 计算出的 OSPF 路由最终是否装入全局路由表还要比较协议优先级、掩码长度和 CostR1 display ip routing-table protocol ospf1.4 OSPF 的 5 种报文报文中文含义主要用途Hello你好报文发现邻居、维持邻居、选举 DR/BDR、协商部分参数DD/DBD数据库描述只描述 LSDB 目录不携带完整 LSA 内容LSR链路状态请求请求自己缺少或版本较旧的 LSALSU链路状态更新携带一个或多个完整 LSALSAck链路状态确认对收到的 LSA 进行可靠确认可靠泛洪机制可概括为摘要对比 → 请求缺失内容 → 更新完整内容 → 确认收到。1.5 邻居状态机Down → Init → 2-Way → ExStart → Exchange → Loading → Full状态含义排错关注点Down未收到有效 Hello链路、IP、OSPF 使能、ACL、静默接口Init收到对方 Hello但对方未看到自己单向通信、掩码或二层问题2-Way双方已互相发现广播网中 DROther 之间停在此状态通常正常ExStart决定主从关系和初始 DD 序列号MTU、Router ID 冲突、报文丢失Exchange交换 DD比较 LSDB 摘要DD 参数、链路质量Loading用 LSR/LSU 补齐数据库丢包、LSA 请求反复FullLSDB 同步完成邻接关系正常邻居与邻接的区别能互相收到合法 Hello可以称为邻居完成 LSDB 同步并达到 Full才形成完整邻接关系广播网络中两台 DROther 之间一般保持 2-Way不需要同步为 Full。1.6 建邻必须匹配或兼容的关键参数常见检查项Area ID 一致接口主 IP 地址与掩码处于合理的同一网段Hello/Dead 定时器一致认证方式、Key ID、密码一致区域类型一致如普通、Stub、NSSA 标志要匹配Router ID 不能冲突网络类型应兼容MTU 等因素不能妨碍 DD 交换接口没有被配置为 silent-interface。DR 优先级不同不会妨碍邻居建立它只影响 DR/BDR 选举。1.7 DR/BDR 选举为什么需要 DR/BDR广播型多路访问网络中若所有路由器两两建立邻接邻接数量约为n(n-1)/2。引入 DR/BDR 后可减少邻接与重复泛洪。选举规则接口 DR 优先级为 0不参加选举优先级越大越优优先级相同时Router ID 越大越优先选 BDR再由 BDR 晋升为 DR随后再补选 BDR选举不抢占后来出现的更优设备不会自动替换现任 DR。接口配置[R1-GigabitEthernet0/0/0] ospf dr-priority 100邻接关系规律本端与对端角色最终状态DR 与任意 OSPF 路由器FullBDR 与任意 OSPF 路由器FullDROther 与 DROther2-Way1.8 区域化设计与路由器角色角色定义Internal Router所有 OSPF 接口都在同一区域Backbone Router至少一个 OSPF 接口属于 Area 0ABR同时连接 Area 0 和至少一个其他区域并在区域间传递路由ASBR把其他协议或其他 OSPF 进程的路由引入当前 OSPF 域一个设备可以同时具有多个角色例如既是 ABR又是 ASBR。1.9 基础配置模板方式一在 OSPF 进程中用 network 匹配接口[R1] ospf 1 router-id 1.1.1.1 [R1-ospf-1] area 0 [R1-ospf-1-area-0.0.0.0] network 10.0.12.1 0.0.0.0 [R1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0network命令的作用是匹配本机接口地址并在该接口上启用 OSPF不是直接把任意网段塞进 OSPF。方式二直接在接口下启用[R1-GigabitEthernet0/0/0] ospf enable 1 area 0常用验证display ospf brief display ospf interface display ospf peer brief display ospf lsdb display ospf routing display ip routing-table protocol ospf2. LSA2.1 LSA 与 LSU 的区别LSA链路状态信息的数据单元LSUOSPF 报文类型是运输 LSA 的“包”一个 LSU 可以携带多个 LSA。2.2 LSA 通用头部重点字段字段作用LS AgeLSA 已存在时间达到 MaxAge 后用于清除LS TypeLSA 类型Link State ID不同 LSA 中含义不同Advertising Router产生该 LSA 的路由器 Router IDLS Sequence Number判断 LSA 新旧序列号更大通常更新LS Checksum校验 LSA 内容判断同一条 LSA 新旧时先看序列号再结合校验和、Age 等字段。2.3 常见 LSA 类型总表类型名称产生者泛洪范围主要描述1Router-LSA每台 OSPF 路由器本区域路由器在本区域内的链路、Cost、角色标志2Network-LSADR本区域MA 网络上连接的路由器列表3Network-Summary-LSAABR除来源区域外的相关区域区域间网段及 ABR 到该网段的 Cost4ASBR-Summary-LSAABR需要到达 ASBR 的相关区域到 ASBR 的可达性5AS-External-LSAASBR整个 OSPF AS特殊区域除外引入的外部路由7NSSA-LSANSSA 内的 ASBR仅 NSSA 内NSSA 内引入的外部路由ABR 可转换为 5 类6 类与组播扩展有关常规 IPv4 OSPF 学习和部署中很少使用9/10/11 类属于 Opaque LSA 扩展。2.4 各类 LSA 的识别要点1 类 Router-LSA每台路由器在每个所属区域都产生一条Link State ID 通常是产生者的 Router ID只在本区域泛洪描述路由器连接了哪些链路、链路 Cost以及是否具备 ABR/ASBR 等标志区域内拓扑计算的核心材料。2 类 Network-LSA只在广播或 NBMA 等需要 DR 的 MA 网络中出现由 DR 产生Link State ID 通常为 DR 接口 IP描述该网段上与 DR 建立完整邻接的路由器点到点链路不需要 2 类 LSA。3 类 Network-Summary-LSA由 ABR 产生将一个区域的网段信息通告给其他区域每经过一个 ABR会在新的区域重新产生 3 类 LSA而不是原样跨越全网名字虽含 Summary但默认可以是一条明细区域间路由不等于一定做了聚合。4 类 ASBR-Summary-LSA由 ABR 产生告诉其他区域“如何到达某个 ASBR”5 类 LSA 告诉你外部前缀和外部代价4 类 LSA补充到 ASBR 的内部路径ASBR 与接收者在同一区域时一般不需要 4 类 LSA。5 类 AS-External-LSA由 ASBR 产生在整个 OSPF AS 中泛洪但不进入 Stub、Totally Stub、NSSA、Totally NSSA默认外部度量类型通常是 Type 2Advertising Router 是 ASBR 的 Router ID。7 类 NSSA-LSA由 NSSA 区域内部的 ASBR 产生只在 NSSA 内泛洪NSSA 的 ABR 通常选择转换者将 7 类转换成 5 类后通告到普通区域P-bit 等标志用于指示是否需要执行 7→5 转换。2.5 外部路由E1 与 E2类型计算方式特点External Type 1到 ASBR/转发地址的内部 Cost 外部 Cost内外代价都参与能反映 ASBR 距离External Type 2主要比较外部 Cost相同时再比较到 ASBR/转发地址的内部 Cost默认常见类型外部代价占主导优选关系同一前缀条件下通常E1 优于 E2。2.6 LSA 与区域关系速记普通区域1、2、3、4、5 Stub1、2、3无 4、5ABR 下发 3 类默认路由 Totally Stub1、2 3 类默认路由 NSSA1、2、3、7通常无 4、5 Totally NSSA1、2、7 3 类默认路由3. OSPF 网络类型网络类型决定 Hello 方式、默认定时器、是否选举 DR/BDR以及邻居发现方式。网络类型常见底层自动发现邻居DR/BDR默认 Hello/Dead常见值BroadcastEthernet是组播是10s / 40sNBMA帧中继/ATM 等非广播多路访问通常否需手工指定邻居是30s / 120sP2PPPP、HDLC、点到点链路是组播否10s / 40sP2MP一个接口逻辑拆成多条点到点关系是常用组播否30s / 120s定时器以实际设备显示为准。两端网络类型不一致时即使部分场景能建立邻居也可能产生路由计算或 LSA 描述异常不应把“能 Full”当成配置正确。修改网络类型[R1-GigabitEthernet0/0/0] ospf network-type p2p [R1-GigabitEthernet0/0/0] ospf network-type broadcast [R1-GigabitEthernet0/0/0] ospf network-type nbma [R1-GigabitEthernet0/0/0] ospf network-type p2mp使用建议两台路由器以以太网直连时可改为 P2P省去 DR/BDR 选举拓扑表达也更直接NBMA 网络若不是全互联直接使用 Broadcast/NBMA 容易出现邻接或下一跳问题Hub-Spoke 场景常考虑 P2MP或把子接口拆成 P2P同一网段的设备应统一规划网络类型与定时器。NBMA 手工邻居示意[R1] ospf 1 [R1-ospf-1] peer 10.0.123.2 [R1-ospf-1] peer 10.0.123.34. 不规则区域4.1 什么是不规则区域典型情况包括非骨干区域没有与 Area 0 直接相连Area 0 被分割成不连续的两部分为绕过设计问题错误地让区域间流量穿越普通非骨干区域多进程或重发布造成路由反馈、次优路径等问题。OSPF 要求骨干连续并要求正常区域间路由经 Area 0 传递其目的是形成清晰的区域层次并避免环路。4.2 Virtual Link 虚连接虚连接可临时解决某非骨干区域无法直接连接 Area 0Area 0 因故被分割。原理在两台 ABR 之间建立逻辑上的骨干邻接中间承载区域称为 Transit Area配置时使用对端Router ID不是对端接口 IPTransit Area 必须能够提供两端 ABR 的区域内可达性Stub 区域不能作为 Transit Area。示意配置# 在两端 ABR 的中转区域视图分别配置对端 Router ID [R2] ospf 1 [R2-ospf-1] area 1 [R2-ospf-1-area-0.0.0.1] vlink-peer 3.3.3.3 [R3] ospf 1 [R3-ospf-1] area 1 [R3-ospf-1-area-0.0.0.1] vlink-peer 2.2.2.2验证display ospf vlink display ospf peer虚连接是修复性工具会增加故障依赖和排错难度。长期方案应优先调整区域规划使 Area 0 物理连续。4.3 多进程重发布的风险同一台设备可运行多个 OSPF 进程但不同进程的 LSDB 相互独立彼此类似不同路由协议。若要互通必须双向或单向引入路由。[R1] ospf 1 [R1-ospf-1] import-route ospf 2 [R1] ospf 2 [R1-ospf-2] import-route ospf 1双向引入可能产生路由反馈路由来源难追踪外部路由优先级导致次优路径环路风险。控制手段包括 route-policy、tag、前缀过滤和清晰的单点重发布设计。5. 特殊区域5.1 为什么使用特殊区域普通区域需要接收较多外部 LSA。对于只有一个或少量出口的末梢区域可以通过特殊区域阻止不必要的 4/5 类 LSA用默认路由替代大量外部明细减少 LSDB、路由表和 SPF/泛洪负担。5.2 四种特殊区域对比区域类型允许本区 ASBR/引入外部路由4/5 类 LSA区域间 3 类明细默认路由Stub否阻止保留ABR 下发 3 类默认Totally Stub否阻止阻止ABR 下发 3 类默认NSSA是外部 5 类不进入本区外部用 7 类保留是否产生取决于实现/配置Totally NSSA是外部 5 类不进入本区外部用 7 类阻止ABR 下发 3 类默认共同限制Area 0 不能配置为 Stub/NSSA虚连接的 Transit Area 不能是 Stub同一区域所有 OSPF 路由器的区域类型必须一致否则 Hello 中区域能力标志不匹配邻居无法正常建立Stub/Totally Stub 内不能存在 ASBR需要引入外部路由时应选择 NSSA。5.3 Stub 与 Totally StubStub# 区域内所有路由器都配置 stub [R1] ospf 1 [R1-ospf-1] area 1 [R1-ospf-1-area-0.0.0.1] stubTotally Stub# 区域内所有路由器配置 stub # 只在 ABR 上追加 no-summary [ABR-ospf-1-area-0.0.0.1] stub no-summaryno-summary的核心作用让 ABR 不再向该区域通告区域间 3 类明细只保留 3 类默认路由。5.4 NSSA 与 Totally NSSANSSA# NSSA 区域内所有 OSPF 路由器均配置 [R1] ospf 1 [R1-ospf-1] area 1 [R1-ospf-1-area-0.0.0.1] nssaTotally NSSA# 所有设备配置 nssa只在 ABR 上追加 no-summary [ABR-ospf-1-area-0.0.0.1] nssa no-summaryNSSA 内部引入外部路由示意[ASBR] ip route-static 172.16.0.0 255.255.0.0 NULL0 [ASBR] ospf 1 [ASBR-ospf-1] import-route static传播过程NSSA 内 ASBR 产生 7 类 LSA ↓ NSSA ABR 选择性执行 7 → 5 转换 ↓ 以 5 类 LSA向普通区域传播5.5 选择方法末梢区域是否需要引入外部路由 ├─ 否Stub │ └─ 是否还想屏蔽区域间明细是 → Totally Stub └─ 是NSSA └─ 是否还想屏蔽区域间明细是 → Totally NSSA6. 路由聚合086.1 聚合的价值减少 LSA 和路由表条目隐藏区域内部拓扑变化提高网络稳定性配合合理地址规划形成清晰层次。前提被聚合网段必须连续且汇总后不能把实际不存在或不可达的地址空间错误吸收进来。6.2 ABR 聚合3 类 LSA在区域视图下对该区域向外发布的区域间路由进行聚合[ABR] ospf 1 [ABR-ospf-1] area 1 [ABR-ospf-1-area-0.0.0.1] abr-summary 10.1.0.0 255.255.0.0含义将 Area 1 中符合范围的区域内路由以汇总的 3 类 LSA 通告到其他区域。6.3 ASBR 聚合5 类 LSA在 OSPF 进程视图下对引入的外部路由进行聚合[ASBR] ospf 1 [ASBR-ospf-1] asbr-summary 172.16.0.0 255.255.0.0NSSA 场景中还需关注聚合发生在 NSSA ASBR 还是执行 7→5 转换的 ABR以及设备版本对 7 类聚合的实现方式。6.4 聚合常见问题明细网段不连续汇总产生路由黑洞多出口区域只发布汇总故障时仍有汇总存在但具体明细已不可达聚合掩码计算错误在错误的区域视图配置abr-summary把 ABR 区域间聚合与 ASBR 外部路由聚合混淆。防黑洞思路只聚合真实拥有的连续地址块结合指向 Null0 的汇总路由吸收无法匹配明细的流量保证地址规划与区域边界一致对多出口故障场景做收敛验证。7. 常见拓展配置截图只给出了“拓展配置”标题以下按 HCIP 中最常见的 OSPF 扩展项整理并非对应原视频的逐字目录。7.1 静默接口 Silent-Interface[R1] ospf 1 [R1-ospf-1] silent-interface GigabitEthernet 0/0/1效果该接口不发送和接收 OSPF 报文因此不能建立邻居若接口地址仍被 OSPF 的 network 命令匹配其直连网段仍可被通告常用于用户网、服务器网、Loopback 等不应出现 OSPF 邻居的接口。7.2 OSPF 认证认证可防止未经授权的设备建立邻居或注入 LSA。两端认证模式、Key ID 和密码必须匹配。接口认证示意[R1-GigabitEthernet0/0/0] ospf authentication-mode simple cipher Huawei123 [R1-GigabitEthernet0/0/0] ospf authentication-mode md5 1 cipher Huawei123区域认证示意[R1] ospf 1 [R1-ospf-1] area 0 [R1-ospf-1-area-0.0.0.0] authentication-mode md5 1 cipher Huawei123注意接口认证通常比区域认证拥有更直接的接口级效果简单明文认证安全性弱生产环境优先使用设备支持的更安全算法修改密钥时应规划平滑切换避免整段邻居同时中断。7.3 发布默认路由普通 OSPF 区域中ASBR 可向 OSPF 发布默认路由[R1] ospf 1 [R1-ospf-1] default-route-advertise一般情况下本机路由表中必须先存在默认路由。若明确需要无条件发布可使用设备支持的always参数[R1-ospf-1] default-route-advertise always风险无条件发布但设备实际没有可用出口会形成黑洞。生产网更适合配合链路探测、路由策略或缺省路由联动。特殊区域的默认路由由区域机制产生不应与普通区域的default-route-advertise混为一谈。7.4 引入外部路由[R1] ospf 1 [R1-ospf-1] import-route static [R1-ospf-1] import-route direct [R1-ospf-1] import-route rip 1可结合 route-policy 控制前缀、Cost、外部类型和 Tag[R1] ip ip-prefix IMPORT index 10 permit 172.16.0.0 16 greater-equal 24 less-equal 24 [R1] route-policy IMPORT-TO-OSPF permit node 10 [R1-route-policy] if-match ip-prefix IMPORT [R1-route-policy] apply cost 20 [R1-route-policy] apply cost-type type-1 [R1-route-policy] apply tag 100 [R1] ospf 1 [R1-ospf-1] import-route static route-policy IMPORT-TO-OSPF引入路由时务必回答三个问题引入哪些前缀从哪里引入、是否会被再次反馈回来使用 E1 还是 E2Cost 和 Tag 如何规划7.5 路由过滤OSPF 是链路状态协议过滤位置不同含义也不同对引入方向应用策略控制 ASBR 产生哪些外部 LSAABR 上对 3 类 LSA 应用策略控制哪些区域间前缀跨越区域边界仅过滤本机计算结果可能只影响本机路由表并不阻止 LSA 在区域内泛洪。因此不能简单套用距离矢量协议“收到路由就过滤”的思维。配置前应确认目标是阻止 LSA 产生、阻止跨区域发布还是只阻止本机装表。7.6 OSPF 路由优先级华为设备常见默认值OSPF 内部路由优先级10OSPF ASE 外部路由优先级150。[R1] ospf 1 [R1-ospf-1] preference 20 [R1-ospf-1] preference ase 160协议优先级用于不同来源路由竞争OSPF Cost 用于 OSPF 内部路径优选。二者不要混淆并且华为数值越小优先级越高。7.7 等价负载分担当多条 OSPF 路径路由类型、Cost 等关键属性相同设备可形成 ECMP[R1-ospf-1] maximum load-balancing 4实际转发还受硬件能力、系统全局 ECMP 设置和流量哈希方式影响。7.8 OSPF 与 BFD 联动BFD 可比 Hello/Dead 定时器更快地检测链路或转发路径故障[R1] bfd [R1-bfd] quit [R1] ospf 1 [R1-ospf-1] bfd all-interfaces enable也可按接口启用具体语法以设备版本为准。BFD 能加快故障发现但无法替代正确的拓扑设计定时器过激还可能因瞬时抖动导致频繁收敛。8. OSPF 路由优选8.1 同一 OSPF 进程内的常见顺序区域内路由Intra-Area 优于 区域间路由Inter-Area 优于 外部 Type 1E1/N1 优于 外部 Type 2E2/N2说明先比较路径类型再比较各类型对应的 CostE2 首先比较外部 Cost相同才比较内部 CostN1/N2 是 NSSA 外部路由在区域内的表示不同协议间竞争时先由全局路由表比较协议优先级而不是直接比较 OSPF Cost。8.2 常见误区“Cost 小的外部路由一定胜过区域内路由”错误先比较路径类型“协议优先级越大越好”华为设备中通常是数值越小越优“LSDB 里有 LSA路由表一定有路由”错误还要满足可达性、无环检查、路由优选等条件“OSPF 路由表有路由全局表一定采用”错误还可能被更优协议来源覆盖。9. 系统化排错清单9.1 邻居起不来按层次排查接口是否 UpIP/掩码是否正确双方接口是否都启用了 OSPFArea ID 是否一致是否能看到 Hello是否被 ACL/安全策略丢弃Hello/Dead、认证、区域类型是否匹配Router ID 是否冲突网络类型是否一致或兼容是否误配 silent-interface若卡在 ExStart/Exchange重点检查 MTU、Router ID、链路丢包和 DD 交互。display ospf interface display ospf peer display ospf error display current-configuration configuration ospf9.2 邻居 Full 但没有路由查看 LSDB 是否存在目标 LSA判断 LSA 类型是否能进入当前区域查看display ospf routing是否已计算查看 ABR/ASBR 是否真的具备对应角色检查聚合、过滤和特殊区域配置检查到 Advertising Router/Forwarding Address 是否可达查看全局路由表是否被其他协议的更优路由覆盖。9.3 路由能到但路径次优确认比较的是协议优先级还是 OSPF Cost核对 E1/E2 类型检查各设备参考带宽是否一致检查是否有人为ospf cost查看是否因汇总、默认路由或虚连接隐藏了明细拓扑检查多进程重发布和路由反馈。