amazon-web-services - 来自 cli 的 aws ec2 实例 IP 地址 aws ec2 描述实例

标签 amazon-web-services amazon-ec2

我想获取 ec2 实例的所有 IP 地址。我正在查看 CLI aws ec2 描述实例,我发现我们有 2 个地方有 IP 地址。我了解每个接口(interface)都可以有自己的公共(public)IP/私有(private)IP,并且可以属于不同的子网,因此网络接口(interface)下的字段。但我不清楚为什么我们在实例下有 IP 地址(公共(public)/私有(private))和子网。该数据不会成为接口(interface)之一的一部分吗?这有什么寓意吗。为什么要重复?``

例如aws ec2 描述实例

"Instances": [
    {
    *** I have IP address and subnet here ***
    "PrivateIpAddress": "10.0.0.19",
    "SubnetId": "subnet-12345678",
    "NetworkInterfaces": [
    ***I also have IP address, subnetId for each interface here**
    "PrivateIpAddress": "10.0.0.19",
    "SubnetId": "subnet-12345678",
    }
]

最佳答案

您将必须使用某种编程语言进行迭代,因为 NetworkInterfaces 是一个列表,PrivateIpAddresses 也是一个列表。

https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html

JQ 将为您提供所需的输出。

aws ec2 describe-instances  --instance-id i-1234567890qwertyu --output json | jq .Reservations[].Instances[].NetworkInterfaces[].PrivateIpAddresses[].PrivateIpAddress -r
10.0.1.247
10.0.1.246

关于amazon-web-services - 来自 cli 的 aws ec2 实例 IP 地址 aws ec2 描述实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50707216/

相关文章:

javascript - 将文件直接从浏览器发送到 S3 但更改文件名

amazon-web-services - 使用 erlcloud 列出 S3 存储桶时出现超时错误

ruby-on-rails - 利用 Nginx 的浏览器缓存问题

node.js - 使用 Node.js 加密发送的内容

node.js - Amazon Lambda - 返回 docx 文件 - Node.js

ios - AWS Cognito 登录不起作用 (Swift-iOS)

amazon-web-services - AWS ASG 冷却期和扩展策略中的预热期有什么区别?

amazon-web-services - 使用 AWS Elastic Beanstalk/EC2 时如何查看服务器日志?我需要使用 SSH 吗?

php - Amazon ec2 linux Imagemagick 问题

java - AWS 上的 HTML5 和 Java 服务器应用程序部署