如何在AWS中获取RDS实例的IP地址
Posted
技术标签:
【中文标题】如何在AWS中获取RDS实例的IP地址【英文标题】:How to get the IP address of RDS instance in AWS 【发布时间】:2015-03-24 20:26:10 【问题描述】:关于如何在 AWS 中获取 RDS 实例的 IP 地址的问题,我在互联网上到处都得到了相同的答案,但我不知道 dig
是什么,以及如何使用它。
How to allocate IP address in VPC to RDS instance?
请帮我找到我在 AWS 中的 RDS 实例的 IP 地址?
【问题讨论】:
【参考方案1】:它不会在 RDS 实例的配置页面上显示 IP 地址,因为 RDS IP 本质上是动态的。如果您需要它们,您可以为它们dig
,但使用实例的 DNS 端点会是更好的服务器。这仍然是静态的,可以在 AWS 中 RDS 实例的详细信息选项卡上找到。
【讨论】:
导航是选择实例并显示详细信息->连接->端点 就我而言,我必须处理一些自定义 DNS(我不太了解),而管理该 DNS 的人想知道 RDS 实例的 IP。所以是的,我的应用程序使用端点,但我仍然需要知道如何确定当前 IP。【参考方案2】:您的 AWS 实例的 IP 地址将是 RDS 实例的 IP 地址。
如果您的 AWS 实例的主机名是 blah.blah.amazonaws.com
,那么您可以在 Windows 和 Linux 上使用 dig
命令(在 Linux 机器上)或 ping
命令来找出主机的 IP 地址:
ping blah.blah.amazonaws.com
这将为您返回主机的 IP 地址(类似这样):
c:\ping www.google.com
Pinging www.google.com [216.58.210.100] with 32 bytes of data:
Reply from 216.58.210.100: bytes=32 time=14ms TTL=58
Reply from 216.58.210.100: bytes=32 time=15ms TTL=58
Reply from 216.58.210.100: bytes=32 time=14ms TTL=58
所以 www.google.com 的 IP 地址是 216.58.210.100。 dig
将为您提供更多输出,但 IP 地址也在其中。但有时您的 AWS 实例的实际 IP 地址实际上是在主机名本身中。例如:
ip-12-34-56-78.us-west-2.compute.internal
IP 地址12.34.56.78
已在名称中(取决于您的实例)。您可以在 AWS 控制台/仪表板中找到主机名。
【讨论】:
@Vivek 那我们怎么知道IP地址呢? 在 RDS 详细信息页面上,它应该显示您的 IP 或主机名。【参考方案3】:使用这个:
SELECT inet_server_addr();
【讨论】:
这就是答案!伟大的。允许我使用 dblink 在 2 个 Postgres 实例之间移动表,其中使用端点名称会导致错误ERROR: could not establish a connection
在哪里使用这个?【参考方案4】:
answer given by Paolo Bolla 很好,但只适用于Postgresql
。
Microsoft SQL Server
,请使用:
SELECT
local_net_address = ConnectionProperty('local_net_address')
, local_tcp_port = ConnectionProperty('local_tcp_port')
【讨论】:
【参考方案5】:您还可以使用Nslookup <<RDS SQL Server>>
命令来计算此AWS blog post 中建议的IP 地址。
【讨论】:
【参考方案6】:dig
是一个命令行实用程序,用于查找域名指向的 IP 地址。
你可以简单地使用:
apt-get update && apt-get install dnsutils -y
然后查找RDS实例的IP(端点xxx.yyy.us-east-1.rds.amazonaws.com
),运行以下命令:
dig xxx.yyy.us-east-1.rds.amazonaws.com
在dig
的输出中,您将能够在 ANSWER SECTION 中找到 IP 地址:
;; ANSWER SECTION:
xxx.yyy.us-east-1.rds.amazonaws.com. 5 IN A 172.30.1.253
如您所见,RDS 实例端点解析为 A
类型的 DNS 记录,带有 Private IP address
【讨论】:
【参考方案7】:查找 RDS ip 地址的简单方法:从本地计算机打开命令提示符并 ping RDS 端点。您将看到来自目标主机 IP 地址的回复。那是你的RDS ip地址!不管它是否可以公开访问。
【讨论】:
我想用这种方法添加,在对数据库端点执行 ping 操作后获得 ip,复制该 ip 并在网络接口搜索该 ip 以获得它的私有 ip。【参考方案8】:在 AWS 管理控制台上 - 位置:AWS 管理控制台 -> EC2 -> 网络和安全,网络接口
您可以在描述选项卡上同时查看所有 IP 地址及其资源的详细信息。【讨论】:
以上是关于如何在AWS中获取RDS实例的IP地址的主要内容,如果未能解决你的问题,请参考以下文章