单向不通的三类根因
A 能访问 B、B 访问 A 不通,或反过来,这类问题在现场叫单通。绝大多数单通可以归到三类:一是 ACL 只放通了一个方向,报文出去回不来;二是来回路径不对称,去程走一台设备、回程走另一台,其中一台没有对应路由;三是状态化设备(防火墙)没有形成回程会话,把返回的报文当成非法流量丢弃。按这三条顺序查,通常比盲目抓包更快。
基本信息
| 适用平台 | 三家厂商设备与防火墙环境通用 |
|---|---|
| 核心命令 | ACL 命中计数、路由表查询、会话与连接状态查看 |
| 判断前提 | 先确认是单向不通还是双向都不通 |
| 权限要求 | 查看类命令用户视图即可 |
| 验证手段 | 业务端口连通性测试优于 ping,必要时两端同时抓包 |
典型使用场景
- 新上线安全策略后出现单通:优先核对 ACL 的方向与顺序
- 双出口或双上联环境:确认去程与回程是否走了不同设备
- 防火墙后的服务不可访问:检查是否缺少回程放行或会话
- VPN 与专线并存:确认两端路由是否各自都有回程条目
- 故障复盘:把单通归因说清楚,避免反复改配置
华为 VRP
华为 VRP
<Huawei> display acl 3000 # 看各规则的命中计数是否增长
<Huawei> display ip routing-table 10.2.2.0 # 去程路由是否存在
<Huawei> display ip routing-table 192.168.10.0 # 回程网段是否有路由
<Huawei> display tcp status # 会话与连接状态
<Huawei> display nat session all # 经过 NAT 时看会话是否建立思科 IOS
思科 IOS
SW-CORE-01# show ip access-lists 100 # 命中计数
SW-CORE-01# show ip route 10.2.2.0
SW-CORE-01# show ip route 192.168.10.0
SW-CORE-01# show tcp brief
SW-CORE-01# show ip nat translations # 检查转换条目H3C Comware
H3C Comware
<H3C> display acl 3000
<H3C> display ip routing-table 10.2.2.0
<H3C> display session table # 有状态设备看会话
<H3C> display tcp status三类根因与判断
| 根因 | 典型表现 | 验证方式 |
|---|---|---|
| ACL 只放通一个方向 | 某个方向策略命中计数不增长 | 对比两个方向的 ACL 命中计数 |
| 来回路径不对称 | 去程正常、回程设备丢包 | 沿去程与回程分别查路由表 |
| 缺少回程会话 | 请求到达对端但无应答返回 | 查看会话表与防火墙日志 |
| NAT 转换缺失 | 请求能出、应答找不到映射 | 查看转换表与接口方向标记 |
| 二层放通不一致 | 同网段部分终端单通 | 核对两端 VLAN 放通列表 |
ping 通不代表业务通:ping 只验证了两端能否收发,看不出中间设备的状态与会话。判断真实方向需要用业务端口做连通性测试,必要时在两端同时抓包,看 TCP 三次握手停在哪一步。