详细分析 ▾
运行时依赖
版本
EIGRP分析技能首次发布,支持Cisco IOS-XE与NX-OS。 - 提供基于DUAL算法的诊断:successor/feasible successor分析、stuck-in-active(SIA)排查及K值/度量验证。 - 同时支持经典与命名EIGRP模式,带诊断推理而非仅命令输出。 - 检测缺失路由、邻居问题、配置不匹配及重分发环路。 - 包含针对平台(IOS-XE与NX-OS)的逐步EIGRP故障排查流程。 - 突出运维阈值表与最佳实践,助力高效EIGRP分析。
安装命令 点击复制
技能文档
# EIGRP 协议分析 面向 Cisco EIGRP 的 DUAL 推理驱动分析技能。与泛洪拓扑数据库的链路状态协议不同,EIGRP 采用扩散更新算法(DUAL)通过分布式查询/应答过程计算无环路径。高效的 EIGRP 诊断必须理解 successor 选举、可行性条件以及 stuck-in-active 机制——而不仅仅是读取命令输出。 命令在语法差异处标注 [IOS-XE] 或 [NX-OS],未标注则双平台通用。 ## 何时使用 - 路由表中缺少 EIGRP 路由或选路非最优 - Stuck-in-active(SIA)状态——路由卡在 Active 状态,查询无应答 - 邻居邻接无法建立或频繁 up/down - 配置变更或新增设备后怀疑 K 值不匹配 - EIGRP 拓扑、汇总或 stub 配置变更后的验证 - 怀疑 EIGRP 与其他协议(常见 OSPF)重分发环路 - Named 模式迁移——验证与 classic 模式行为一致 ## 前置条件 - 对 Cisco IOS-XE 或 NX-OS 设备拥有 SSH 或 console 访问(只读权限即可) - EIGRP 进程已运行——classic 模式(router eigrp [AS])或 named 模式(router eigrp [name]) - NX-OS:需先执行 feature eigrp 才能配置 EIGRP - 已知 EIGRP 自治系统号及预期邻居拓扑 - 了解已配置的 stub、汇总、distribute-list 会影响查询范围 ## 流程 按顺序执行下列诊断步骤。每一步依赖前一步数据,从全局盘点逐步深入到 DUAL 级分析。 ### 步骤 1:EIGRP 实例与邻居盘点 确认 EIGRP 运行并收集邻居表。 [IOS-XE] `` show ip eigrp neighbors ` [NX-OS] ` show ip eigrp neighbors vrf all ` 记录各邻居:接口、地址、hold time、uptime、SRTT、队列计数。与预期拓扑比对——所有直连 EIGRP 路由器都应出现。 关键观察: - 邻居缺失 → 接口配置错误、passive-interface、K 值或 AS 号不匹配(转步骤 4) - uptime 低 → 近期邻接重置;关联变更事件 - SRTT 高 → 邻居响应慢;潜在 SIA 风险 - 队列计数非零(Q Cnt) → 邻居拥塞;查询/更新可能延迟 ### 步骤 2:拓扑表分析 查看 DUAL 对关键前缀的 successor 与 feasible successor 选举。 [IOS-XE] ` show ip eigrp topology [prefix/len] ` [NX-OS] ` show ip eigrp topology [prefix/len] vrf default ` 对每条路由解释 DUAL 状态: - Feasible Distance (FD): 本路由器曾记录到的最佳度量——可行性条件阈值。 - Reported Distance (RD): 邻居针对该前缀自己算出的度量。 - Successor: 当前被装入路由表的邻居——所有可行路径中 FD 最低。 - Feasible Successor (FS): 备份邻居,其 RD 严格小于当前 FD,保证无环。 可行性条件: 邻居 RD < 当前 FD。若邻居 RD 更低,DUAL 保证该邻居不在环中,可作备份且无需查询。 若无 FS 且 successor 失效,DUAL 必须进入 Active 并发送查询——转步骤 3。 ### 步骤 3:Stuck-in-Active 诊断 找出处于 Active 状态的路由并诊断查询/应答失败。 [IOS-XE] ` show ip eigrp topology active ` [NX-OS] ` show ip eigrp topology active vrf default ` Active 状态路由正等待邻居查询应答。SIA 计时器(默认 3 分钟)在路由进入 Active 时启动。若邻居在半计时器(90 秒)内无应答,则发送 SIA-Query;满计时器仍无应答则重置邻居。 定位无响应邻居: - 查看拓扑条目——"replies" 计数器显示未应答查询数 - 找出无响应邻居并排查:是否可达?CPU 过载?等待下游查询? 查询范围 是防止 SIA 的主要手段。查询泛滥(传遍整个 EIGRP 域)是最常见根因。缓解: - stub 配置——stub 路由器不转发查询 - 汇总——汇总路由在边界处截断查询 - distribute-list——过滤范围但不影响查询传播 ### 步骤 4:K 值与度量验证 核对度量参数在所有邻居间一致——K 值不匹配将完全阻止邻接。 [IOS-XE] ` show ip protocols | section eigrp ` [NX-OS] ` show ip eigrp vrf default ` 确认各设备 K 值:K1=1, K2=0, K3=1, K4=0, K5=0(默认)。同一 AS 内所有邻居必须使用相同 K 值,否则拒绝邻接。 检查度量模式:named EIGRP 支持 wide metrics(64 位)并使用 rib-scale 因子。classic 模式为 32 位度量。若从 classic 迁移至 named,需验证度量值一致——wide metrics 在装入 RIB 前会缩放。 验证关键链路接口级 delay 与 bandwidth: [IOS-XE] ` show ip eigrp interfaces detail ` [NX-OS] ` show ip eigrp interfaces detail vrf default ` 接口 bandwidth 或 delay 配置错误将直接影响选路。常见错误是在串口或隧道接口保留默认带宽,导致 EIGRP 计算错误度量。 ### 步骤 5:重分发与路由过滤 检查重分发环路并验证过滤。 [IOS-XE] ` show ip route eigrp | include EX ` [NX-OS] ` show ip route eigrp vrf default | include EX ` 外部 EIGRP 路由(D EX)表明存在重分发。常见问题: - 双向重分发(EIGRP↔OSPF)未加路由标记会产生环路——路由绕回原协议且度量改变 - 缺少 distribute-list 或 route-map 使不该穿越协议边界的路由泄漏 - 管理距离——EIGRP 外部路由 AD 170,高于 OSPF 的 110。若前缀同时存在,OSPF 胜出,可能非预期 验证重分发点的 distribute-list 与 route-map 已正确应用,确认使用路由标记防止双向重分发设计中的环路。 ## 阈值表 EIGRP 运行参数基准——协议级期望,非设备资源阈值。 | 参数 | LAN 默认 | WAN 默认 | 备注 | |-----------|-------------|-------------|-------| | Hello 间隔 | 5s | 60s | WAN = 低于 1.544 Mbps 的多点链路 | | Hold 计时器 | 15s | 180s | 惯例为 hello 的 3 倍 | | Active 计时器 (SIA) | 3 分 | 3 分 | 可配置;半时 90 秒发 SIA-Query | | 路由更新延迟 | 立即 | 立即 | 无 MRAI——计算后立即发送更新 | 度量默认值(classic 模式): | K 值 | 默认 | 权重 | 组件 | |---------|---------|--------|-----------| | K1 | 1 | Bandwidth | 10^7 / min-bandwidth-kbps | | K2 | 0 | Load | 默认禁用 | | K3 | 1 | Delay | 延迟之和(单位 10 µs) | | K4 | 0 | Reliability | 默认禁用 | | K5 | 0 | Reliability | 默认禁用 | 运行基准: | 度量 | 健康 | 警告 | 严重 | |--------|---------|---------|----------| | 邻居数量 | 与设计一致 | 基准 ±1 | 缺失 >2 | | 每周 SIA 事件 | 0 | 1–2 | >3 | | Active 路由数 | 0 | 1–5 | >5 或持续 | | 拓扑表规模 | 稳定 ±5% | 变化 >10% | 变化 >25% | | SRTT (ms) | <100 | 100–500 | >500 | ## 决策树 ### Stuck-in-Active 排查 ` 路由卡在 Active 状态(SIA 计时器运行) ├── 检查查询范围 │ ├── 查询泛滥整个域? │ │ ├── 未配置 stub 路由器 → 在叶子/分支路由器加 stub │ │ ├── 未做汇总 → 在分布边界加汇总路由 │ │ └── 平面拓扑过大 → 重新分层设计(hub/stub 或区域) │ └── 查询范围已限制 → 特定邻居问题 │ ├── 无响应邻居是否可达? │ │ ├── 否 → 接口或链路故障 │ │ │ ├── 检查两端接口状态 │ │ │ └── 检查二层连通性(ARP、CDP/LLDP) │ │ └── 是 → 邻居处理延迟 │ │ ├── CPU 过载?→ 检查邻居 CPU 利用率 │ │ ├── 等待下游应答?→ SIA 级联 │ │ │ └── 追踪查询链找到真正瓶颈 │ │ └── SIA 计时器过短?→ 适当延长 active-time │ └── 多个邻居无响应? │ └── 共同上游故障 → 检查共享基础设施 ` ### 路由缺失或非最优 ` 预期 EIGRP 路由缺失或路径非优 ├── 拓扑表中有路由? │ ├── 有 — DUAL 已知该路由 │ │ ├── 处于 Active 状态?→ 走上方 SIA 排查树 │ │ ├── 已装 successor 但非最优? │ │ │ ├── 对比竞争路径 FD/RD → 最低 FD 胜出 │ │ │ ├── 接口 bandwidth/delay 正确?→ 错误 BW/delay │ │ │ │ 用 show interfaces 核实 │ │ │ ├── 配置了 variance?→ 非等价负载均衡会选 │ │ │ │ 在 variance 倍数×FD 内的路径 │ │ │ └── 应用了 offset-list?→ offset-list 增加 delay 分量 │ │ └── 存在 FS 但未使用? │ │ └── 正常 — FS 仅为备份, successor 失效时才使用 │ │ (除非 variance 启用非等价负载) │ └── 无 — 拓扑表中没有路由 │ ├── 缺少 network 语句?→ 核实 network 命令是否覆盖前缀 │ ├── 接口 passive?→ 检查源接口是否被 passive │ ├── distribute-list 过滤?→ 检查入向 distribute-list 或 route-map │ ├── 重分发缺失?→ 若预期外部路由,检查重分发配置 │ └── AS 号错误?→ 核实域内所有路由器 AS 一致 ` ## 报告模板 ` EIGRP 分析报告 ====================== 设备: [hostname] 平台: [IOS-XE | NX-OS] EIGRP 模式: [Classic AS n | Named instance-name] 检查时间: [timestamp] 执行者: [operator/agent] 邻居状态: - 预期邻居: [n] - 已建立: [n] | 缺失: [n] - SRTT 高(>100ms)邻居: [list] DUAL 状态: - Passive 路由: [n] (正常) - Active 路由: [n] (若>0需关注) - 存在 FS 的路由: [n] / [total] 发现: 1. [严重级别] [类别] — [描述] 路由: [prefix/len] 观测: [state, FD, successor] 预期: [正常状态或路径] 根因: [决策树诊断] 措施: [推荐修复] 度量验证: - K 值一致: [是/否 — 列出差异] - 度量模式: [Classic 32-bit | Wide 64-bit] 重分发: - 外部路由(D EX): [count] - 使用路由标记: [是/否] - 双向重分发: [有/无] 建议: - [按优先级排列的措施] 下次检查: [严重: 4小时, 警告: 24小时, 健康: 7天] ` ## 故障排查 ### K 值不匹配 邻居 K 值不同则拒绝建立邻接——邻居表中无错误消息,因为邻接从未建立。在两台设备上执行 show ip protocols 并对比 K1–K5 值。这是最常见的静默 EIGRP 邻接失败。 ### Stuck-in-Active 级联 一个无响应邻居可在整个域中级联 SIA:路由器 A 查询 B,B 查询 C,C 故障。若 C 永不应答,B 无法应答 A,A 将重置 B。在叶子路由器配置 eigrp stub 可防止查询传播到分布层之外。 ### 与 OSPF 的重分发环路 双向重分发(EIGRP→OSPF 且 OSPF→EIGRP)未加路由标记会产生环路,路由以不同度量绕回原协议。在每个重分发点使用路由标记:给 EIGRP 起源路由打标记,并在再次进入 EIGRP 时拒绝这些标记。 ### Named 与 Classic 模式混淆 Named 模式内部使用 wide metrics(64 位)并对 RIB 进行缩放。同一 AS 内混合 classic 与 named 路由器受支持,但 show 输出中度量值可能不同。用 show eigrp address-family(named)与 show ip eigrp(classic)验证——二者应计算出相同 successor。 ### Passive-Interface 配置错误 passive-interface default 会抑制所有接口的 EIGRP。若新增接口未执行 no passive-interface,邻居将无法建立。用 show ip protocols` 查看哪些接口被设为 passive。
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制