本文介绍了EIP网络连通性的常见问题。
无法访问目标EIP
可能原因 | 排查建议 |
EIP实例未绑定到云资源 | 请排查EIP实例是否已绑定到目标云资源。
|
EIP实例到期或欠费 | 请排查EIP实例是否存在欠费情况。 阿里云会在欠费前后给您发送短信或邮件提醒。为避免实例停机对您的服务产生影响,请您及时续费或充值。 |
被云上安全策略拦截 | 请排查是否被以下云上安全策略拦截: |
绑定资源安全策略拦截 | 请排查是否被所绑定资源的安全策略拦截。 例如绑定 ECS 时,您可以检查 ECS 的iptables规则、系统防火墙策略限制、第三方安全防护软件等,同时检查网卡驱动是否安装正确。您可以对ECS实例进行网络连通性诊断,帮助您进行排查。 绑定了其他云资源时,请参见对应云产品安全策略配置相关的文档。 |
运营商封禁 | 您可以通过EIP实例诊断查看访问异常的地域。 存在运营商封禁时,请参考以下建议处理:
|
网站访问提示RST
问题现象
报错信息:
访问部署在阿里云上的网站时,浏览器提示“连接已重置”(错误代码:
ERR_CONNECTION_RESET)。Linux 环境中,通常提示
TCP connection reset by peer。
报错原因:客户端在与 Web 服务器建立连接时,收到了服务器发送的 RST 报文,导致 TCP 连接被强制中断。
排查思路
使用公网拨测工具验证受影响的运营商范围:
仅特定省市的运营商:通常是该运营商因策略原因进行限制,非阿里云服务器侧原因导致。
如果服务器位于中国内地,且国内主要运营商均访问异常,需进一步排查服务器自身服务是否正常。
确认问题客户端的公网出口 IP 地址:
使用第三方网站查询,例如https://www.lddgo.net/network/getmyip、https://tool.hiofd.com/ip/#google_vignette
在问题客户端复现问题并抓包:在移动网络环境下复现问题,可通过手机建立 Wi-Fi 热点,使用电脑连接该热点进行测试。
在 Web 服务器侧使用抓包工具捕获网络数据包。
常见原因
通过分析抓取的数据包,可定位 RST 报文的来源。
运营商拦截
运营商因特定策略对网站域名或 IP 进行拦截。
解决方案:业务域名持有方凭域名有效信息证件向当地省市运营商报障反馈,根据运营商反馈结论按相关政策申诉解封。
具体现象:
Web 服务器在 TCP 三次握手期间发送的 SYN-ACK 报文的 TTL 值、RST 报文的 TTL 值不一致。

客户端抓包:来自 Web 服务器 IP 的报文中,IP 头的 Identification 字段值不连续。

部分运营商的拦截设备发送的 RST 报文可能包含特定载荷(Payload),例如 `0x01020304050607080900`。

负载均衡发送的 RST
SLB 因特定处理逻辑向客户端发送 RST 报文。
分析方法:阿里云负载均衡主动发送的 RST 报文具有特定特征:IP 头的 Identification 字段值为 31415,初始 TTL 值为 102。不符合此特征的 RST 报文并非由 SLB 主动产生。

解决方案:分析具体原因,检查并调整 SLB 实例的相关配置。常见原因:
TCP 会话超时:TCP 监听配置了连接超时时间。当一个 TCP 连接空闲时间达到该阈值后,SLB 会主动发送 RST 报文中断连接。


健康检查失败:TCP 监听的后端服务器组内所有服务器均健康检查失败,无可用的后端服务器。新的 TCP 请求会直接被 SLB 发送 RST 报文拒绝。


监听后端未添加任务服务器:TCP 监听的后端服务器组内未添加任何服务器。新的 TCP 请求会直接被 SLB 发送 RST 报文拒绝。


云安全产品拦截
云安全产品(如云防火墙)通常以旁路模式工作。当检测到风险时,会向客户端和服务器伪造 RST 报文以中断连接,而不影响正常的报文传输。此类 RST 报文通常没有固定特征码,且其 TTL 值与服务器正常回复报文的 TTL 值可能相同,排查难度较高。
域名未在阿里云完成接入备案
根据相关法规,解析至中国内地地域服务器的域名,必须在阿里云完成接入备案。未备案的域名访问会被拦截。


云防火墙的入侵防御(IPS)模块防护
如果公网 IP 已开启云防火墙的入侵防御功能,当云防火墙检测到应用层流量存在攻击行为时,会发送 RST 报文进行拦截。
报文特征:云防火墙拦截时,可能丢弃原始报文的 Payload,并将 TCP Flag 强制置为 RST,而 IP ID、TCP SEQ、TTL 等字段保持不变。
分析方法:根据请求的时间戳和客户端 IP 地址,在云防火墙控制台查询入侵防御的拦截日志。

服务器内部应用或系统配置异常
分析方法:在 ECS 实例内部抓包,如果确认 RST 报文源自该实例,则需要进一步排查应用日志和系统配置。
常见问题:
Web 应用程序未运行或端口未被监听。
服务端已关闭 socket 并发送 FIN 报文,但客户端未及时响应并继续发送数据。此时,服务端的协议栈会回复 RST 报文强制关闭连接。
应用程序调用
close()函数关闭 socket 时,若其发送缓冲区仍有数据残留,协议栈会发送 RST 报文代替 FIN 报文来终止连接。







