阿里云数据库RDS for PostgreSQL/PPAS 如何定位本地 IP?
问题描述
•已经将本地设备的公网IP地址添加到RDS白名单,但是仍然无法访问RDS实例,而其他设备能访问该RDS实例。
•已经将本地设备的公网IP地址添加到RDS白名单,但是仍然无法访问RDS实例,而将RDS白名单设置为公司的网段或者0.0.0.0/0后,该设备可以访问RDS实例。
以上的任意一种情形,都很可能是因为您添加到白名单的本地设备公网IP地址不正确,本文介绍如何查询到本地设备的真实出口IP地址。
说明 本文只适用于ECS以外的设备访问RDS实例的情况。如果是ECS实例访问RDS实例,可以在ECS实例的详情页面查看准确的公网IP地址和内网IP地址。 |
注意事项
如果您发现您本地设备的公网IP地址会变化,而且建立的连接是用于生产环境,则建议您改为使用内网连接,或者在白名单中配置合理的公网IP段,确保不会因为IP地址改变而断连。
处理步骤
1.将 IP 地址 0.0.0.0/0 加入 RDS for PostgreSQL/PPAS 的白名单,操作方法请参见设置白名单。
2.使用 pgAdmin 4客户端连接RDS for PostgreSQL或者RDS for PPAS实例。
3.在左侧展开数据库,选择postgres,单击上方工具 > 查询工具。
4.输入如下查询命令并执行。
select datname, pid, usename,client_addr, client_hostname, client_port,query from pg_stat_activity;
5.查看结果里query列的值为select所对应的client_addr列的 IP,即为真实的出口 IP。
6.将步骤 1 在白名单中添加的 0.0.0.0/0 条目删除,添加上真实的出口IP。
我有话说: