如何获取 Amazon EC2 上当前 Node.js 主机/服务器的 IP 地址(弹性 IP)?
调用 req.connection.address() 是没有用的,因为 EC2 使用弹性 IP。事实上,使用 ifconfig 命令显示的 IP 与用于从外部访问服务器的 IP 不同(这是我需要的)。如何自动获取弹性 IP?
如何获取 Amazon EC2 上当前 Node.js 主机/服务器的 IP 地址(弹性 IP)?
调用 req.connection.address() 是没有用的,因为 EC2 使用弹性 IP。事实上,使用 ifconfig 命令显示的 IP 与用于从外部访问服务器的 IP 不同(这是我需要的)。如何自动获取弹性 IP?
在实例中,您可以通过向 发送请求来查询有关实例的元数据http://169.254.169.254
。
更多信息可以在这里找到:http: //docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html
阅读有关标头和弹性 IP 的信息,我建议headers['REMOTE_ADDR']
您提供您正在寻找的地址(除非在负载均衡器后面)。
您可以根据文档使用API 中的DescribeInstances使用过滤器ip-address来获取实例的公共 IP。