用指定源地址验证路由
设备有多个三层接口时,ping 的源地址默认由系统按出接口选择,换一条路径源地址就变了。结果是「ping 得通」并不代表业务源地址也通,回程路由、策略路由与 ACL 都可能让业务流量走另一条路。验证生产路径的正确姿势是显式指定业务网段的源地址再测,逐跳追踪同样支持指定源地址。
基本信息
| 适用平台 | 三层交换机与路由器(华为 VRP、思科 IOS、H3C Comware) |
|---|---|
| 华为/H3C 参数 | ping -a <源地址> <目的>;tracert -a <源地址> <目的> |
| 思科参数 | ping <目的> source <源地址>;traceroute <目的> source <源地址> |
| 扩展用法 | 思科扩展 ping 交互模式可逐项指定源地址、包大小与次数 |
| 配合检查 | 回程路由必须覆盖所指定的源网段 |
典型使用场景
- 多出口设备验证:确认某个业务网段实际走的是哪条出口与路径
- 策略路由核对:指定源地址才能触发对应的策略路由规则,验证策略是否按预期生效
- 回程路由检查:去程通、回程断的典型故障中,源地址是定位关键
- 割接前后对比:用同一源地址在变更前后各测一次,结果可直接对比
- ACL 生效核对:ACL 常按源网段放行,只有用该源地址测试才验证得了
华为 VRP
华为 VRP
<Huawei> ping -a 192.168.10.1 10.10.10.10 # 指定源地址
<Huawei> ping -a 192.168.10.1 -c 10 10.10.10.10 # 指定次数,便于观察稳定性
<Huawei> tracert -a 192.168.10.1 10.10.10.10 # 指定源逐跳,看实际路径
<Huawei> display ip routing-table 10.10.10.10 # 对照路由表确认所选路径
<Huawei> display acl all | include 192.168.10 # 核对是否有 ACL 影响该源网段思科 IOS
思科 IOS
SW-CORE-01# ping 10.10.10.10 source 192.168.10.1 # 普通模式指定源
SW-CORE-01# ping # 扩展 ping,逐项交互输入
Protocol [ip]:
Target IP address: 10.10.10.10
Extended commands [n]: y
Source address or interface: 192.168.10.1
SW-CORE-01# traceroute 10.10.10.10 source 192.168.10.1
SW-CORE-01# show ip route 10.10.10.10 # 对照选路结果H3C Comware
H3C Comware
<H3C> ping -a 192.168.10.1 10.10.10.10
<H3C> ping -a 192.168.10.1 -c 10 10.10.10.10
<H3C> tracert -a 192.168.10.1 10.10.10.10
<H3C> display ip routing-table 10.10.10.10
! 部分版本还支持指定出接口与源地址组合,用 ? 查看常见误判
| 测试方式 | 可能结论 | 实际风险 |
|---|---|---|
| 默认源 ping 通 | 认为业务正常 | 业务源地址走另一条路径,可能不通 |
| 默认源 ping 不通 | 认为设备故障 | 仅指该源不可达,业务源可能完全正常 |
| 只测去程 | 认为链路健康 | 回程路由缺失时业务单向不通 |
| 用管理地址测业务路径 | 认为路径正确 | 管理网段路径通常与业务路径不同 |
验证业务可达性的完整动作是:指定业务源地址 ping 对端业务地址、指定源做逐跳追踪、再确认回程路由覆盖该源网段。三步都通过,才算真正验证了业务路径。