将RDS数据库迁移至新VPC后无法连接(超时错误)[AWS RDS & VPC]
RDS迁移至新VPC后本地访问超时问题排查方案
核心排查步骤
1. 公有子网路由表校验
- 确认RDS所在公有子网的路由表,已将
0.0.0.0/0的流量指向Internet网关(IGW),而非NAT网关(NAT网关仅用于私有子网访问外网) - 检查路由表与公有子网的关联关系,确保子网已正确绑定到带IGW的路由表
2. RDS公开访问配置确认
- 进入RDS控制台,核实**“公开可访问”**选项为
是,通过本地执行nslookup <RDS终端地址>,确认解析结果为公网IP(若解析出内网IP,需重启RDS实例使配置生效) - 若RDS仍无公网IP,检查VPC的DNS设置,确保“启用DNS主机名”和“启用DNS解析”均为
是
3. 安全组入站规则精准配置
- 检查RDS关联的安全组:
- 入站规则选择
TCP协议,端口设为PostgreSQL默认的5432(或自定义端口) - 来源IP填写本地设备的公网出口IP(可通过
curl ifconfig.me获取),避免使用内网IP或错误网段 - 排查是否存在优先级更高的拒绝规则,覆盖了允许访问的规则
- 入站规则选择
4. 子网组与实例部署位置验证
- 查看RDS实例详情页的“子网组”信息,确认RDS实际部署在公有子网中(若子网组同时包含公有和私有子网,RDS可能随机部署到私有子网导致公网无法访问,可临时将子网组改为仅包含公有子网测试)
5. 本地网络与连接参数排查
- 用本地设备ping RDS的公网IP(从nslookup结果获取),若ping不通,更换手机热点测试是否为本地运营商或防火墙拦截了5432端口
- 核对pgAdmin或代码的连接参数:终端地址、端口、用户名密码是否完全正确,排除参数错误导致的超时
6. VPC网络ACL规则检查
- 检查RDS所在子网的网络ACL:
- 入站规则允许
5432端口的TCP流量从本地公网IP进入 - 出站规则允许
5432端口的TCP流量返回本地公网IP - 网络ACL为无状态规则,需同时配置入站和出站的允许规则,避免遗漏
- 入站规则允许
内容的提问来源于stack exchange,提问作者Amiteshwar
相关产品推荐
相关产品推荐

