什么条件才叫等价
到同一目的网段、优先级与度量完全相同、下一跳不同的多条静态路由会形成等价多路径(ECMP),流量按哈希分摊到各条链路上。条件只要差一点就退化:优先级不同、度量不同、下一跳相同、或某条路径不可达,都会变成主备关系而不是负载分担。ECMP 是静态路由里最容易被想当然的一条。
基本信息
| 适用平台 | 思科 IOS / 华为 VRP / H3C Comware 三层设备 |
|---|---|
| 形成条件 | 同目的、同优先级、同度量、不同下一跳且都可达 |
| 分担方式 | 按流(五元组)哈希,不是逐包轮转 |
| 配置方式 | 同一目的网段写多条静态路由即可 |
典型使用场景
- 双上行或双出口链路做带宽叠加,而不仅仅是主备
- 与动态路由配合:OSPF 等多路径的判定逻辑相同,理解 ECMP 有助于统一排障思路
- 验证现状:确认设计中的负载分担是否真的生效,还是退化成了主备
- 单条大流跑不满带宽时的容量评估与哈希策略检查
- 割接前核对路由表,避免新增路径悄悄改变流量分布
华为 VRP
华为 VRP
[Huawei] ip route-static 10.10.10.0 255.255.255.0 192.168.1.2
[Huawei] ip route-static 10.10.10.0 255.255.255.0 192.168.2.2
<Huawei> display ip routing-table 10.10.10.0 24
! 同一前缀同时列出两个 NextHop 才是等价多路径思科 IOS
思科 IOS
SW-CORE-01(config)# ip route 10.10.10.0 255.255.255.0 192.168.1.2
SW-CORE-01(config)# ip route 10.10.10.0 255.255.255.0 192.168.2.2
SW-CORE-01# show ip route 10.10.10.0
! 两条 via 同时出现即为等价;出现一条为 pref/备选则退化H3C Comware
H3C Comware
[H3C] ip route-static 10.10.10.0 24 192.168.1.2
[H3C] ip route-static 10.10.10.0 24 192.168.2.2
<H3C> display ip routing-table 10.10.10.0 24
<H3C> display ip routing-table 10.10.10.0 24 verbose # 查看下一跳与出接口等价还是主备
| 条件 | 结果 | 说明 |
|---|---|---|
| 优先级与度量相同、下一跳不同 | ECMP 负载分担 | 按流哈希分摊到多条路径 |
| 优先级不同(如 60 与 70) | 主备 | 只有主路径失效才切换到备路径 |
| 下一跳相同、出接口不同 | 通常不构成 ECMP | 被视为同一路径,不会分担 |
| 其中一条路径不可达 | 只剩可达项生效 | 路径恢复后会自动重新加入分担 |
负载分担按流哈希而非逐包轮转:单条大流(如一次备份任务、一条数据库连接)只会走其中一条链路,两条 1G 并不等于单流 2G,容量设计不能简单相加。
三厂配置方式一致,同一目的网段重复下发静态路由即可;判断是否真正生效要看路由表里同一前缀是否同时列出多个下一跳,而不是看配置行数。