【发布时间】:2015-03-24 20:26:10
【问题描述】:
关于如何在 AWS 中获取 RDS 实例的 IP 地址的问题,我在互联网上到处都得到了相同的答案,但我不知道 dig 是什么,以及如何使用它。
How to allocate IP address in VPC to RDS instance?
请帮我找到我在 AWS 中的 RDS 实例的 IP 地址?
【问题讨论】:
标签: amazon-web-services ip-address amazon-vpc rds
关于如何在 AWS 中获取 RDS 实例的 IP 地址的问题,我在互联网上到处都得到了相同的答案,但我不知道 dig 是什么,以及如何使用它。
How to allocate IP address in VPC to RDS instance?
请帮我找到我在 AWS 中的 RDS 实例的 IP 地址?
【问题讨论】:
标签: amazon-web-services ip-address amazon-vpc rds
它不会在 RDS 实例的配置页面上显示 IP 地址,因为 RDS IP 本质上是动态的。如果您需要它们,您可以为它们dig,但使用实例的 DNS 端点会是更好的服务器。这仍然是静态的,可以在 AWS 中 RDS 实例的详细信息选项卡上找到。
【讨论】:
您的 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 控制台/仪表板中找到主机名。
【讨论】:
使用这个:
SELECT inet_server_addr();
【讨论】:
ERROR: could not establish a connection
answer given by Paolo Bolla 很好,但只适用于Postgresql。
Microsoft SQL Server,请使用:
SELECT
local_net_address = ConnectionProperty('local_net_address')
, local_tcp_port = ConnectionProperty('local_tcp_port')
【讨论】:
您还可以使用Nslookup <<RDS SQL Server>> 命令来计算此AWS blog post 中建议的IP 地址。
【讨论】:
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
【讨论】:
查找 RDS ip 地址的简单方法:从本地计算机打开命令提示符并 ping RDS 端点。您将看到来自目标主机 IP 地址的回复。那是你的RDS ip地址!不管它是否可以公开访问。
【讨论】:
在 AWS 管理控制台上 - 位置:AWS 管理控制台 -> EC2 -> 网络和安全,网络接口
【讨论】: