云上不通先查什么
云主机「不通」绝大多数不是物理链路问题,而是云网络对象配置错:安全组、网络 ACL、路由表、EIP/NAT 网关都是软件定义的对象,改一行就生效,也改一行就断。有效顺序是从实例内部往外查:先确认实例自己认为的地址、网关、监听都正常,再逐层核对子网路由表、NACL、安全组、弹性公网 IP 与 NAT 网关。
基本信息
| 适用环境 | 阿里云/腾讯云/AWS/华为云等(对象名称不同、模型通用) |
|---|---|
| 核心对象 | 安全组(实例级、有状态)、NACL(子网级、无状态)、路由表、EIP、NAT 网关 |
| 关键差异 | 安全组有状态,回包自动放行;NACL 无状态,双向都要显式放行 |
| 配额风险 | NAT 网关 SNAT 端口数、EIP 带宽、安全组规则条数均有限额 |
| 辅助手段 | 云平台「网络探测/连通性诊断」工具与控制台流日志 |
检查项与高频坑
| 检查项 | 看什么 | 高频坑 |
|---|---|---|
| 实例内 | 网卡地址、默认网关、服务监听端口 | 多网卡镜像路由错乱,回包从另一张卡出去 |
| 子网路由表 | 默认路由与自定义路由条目 | 自定义路由把流量指向黑洞或错误网关 |
| NACL | 子网级规则、双向放行 | 无状态机制,只放行入方向导致回包全丢 |
| 安全组 | 入站/出站规则、关联实例 | 改错实例(改到另一个同名安全组上) |
| EIP / 弹性网卡 | 绑定状态、带宽上限 | EIP 未绑定或欠费被限速 |
| NAT 网关 | SNAT 规则、并发与端口配额 | SNAT 端口耗尽,新建连接失败 |
典型使用场景
- 新购云主机外网访问不通:先核对安全组与 EIP 绑定,再查实例内网关
- 容器/自建服务端口不通:确认监听地址是 0.0.0.0 而非 127.0.0.1
- 内网互访异常:核对两端子网路由表与 NACL 双向规则
- 跨账号或跨 VPC 互联不通:确认对端侧也已加路由并放行
- 访问公网偶发失败:查 NAT 网关的 SNAT 连接数是否打满配额
实例内取证
实例内取证
ip -br addr; ip route # 地址、默认网关是否符合云平台期望
ss -tuln | head # 服务是否真的在监听,注意绑定地址
curl -s --max-time 3 http://example.com -o /dev/null -w '%{http_code}\n' # 出方向连通性
traceroute -n -T -p 443 example.com # 到目标的路径(部分云平台限制 ICMP)
# 云平台侧同步核对:安全组规则、NACL、路由表、EIP 绑定状态、网络探测工具云厂商的连通性诊断工具能从控制台侧发起测试,与实例内测试互为交叉验证:一侧通一侧不通,基本就能定位到具体是哪层对象在拦截。