2017-08-24 47 views
-4

在我现在的项目中,我遇到了一个问题。需要在单个aws环境中提供来自各个账户的所有公共和私人ip。从单个aws环境中的不同帐户获取公共ip

任何人都可以请帮我拿到代码(包装)。

+1

堆栈溢出不是为你写代码 - 请发布一个尝试,我们很乐意提供协助。 –

+0

您好蒂姆,我尝试通过使用以下内容:aws ec2 describe-instances --query“Reservations [*]。Instances [*]。PublicIpAddress []”--output table >> c:\ logs \ sample.txt ..它将公共文件保存在给定的文本文件中。 –

+0

所以你可以添加PrivateIpAdress到你的查询:'aws ec2 describe-instances --query“预订[*]。实例[]。[PublicIPAddress,PrivateIpAddress]”' –

回答

0

我不完全确定您在单个AWS环境中的不同帐户是什么意思......您是不是指单个AWS环境中的不同VPC?无论哪种方式,这里是为CLI命令的页面描述,实例

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

这应该允许您为所有的EC2实例,包括公共和私有IP地址可能查看的信息。如果CLI命令看起来像您正在寻找的那样,您可以查看编写的代码,使用AWS SDK为您使用的任何语言执行相同的命令。我非常乐意提供建议并帮助您调试遇到的任何问题,但其余部分由您决定。

+0

Hi Fapple,谢谢你的信息。不幸的是,这项任务并不像看起来那么容易,因为这些弹性IP分布在多个AWS账户中。 面临的挑战是编写一个脚本,该脚本利用AWS CLI命令检索所有AWS账户中的所有当前弹性IP地址,并将该输出保存到文件“aws ec2 describe-instances --query”预订[*]。实例[*]。PublicIpAddress []“ - 输出表>> c:\ logs \ sample.txt”这里是显示工作帐户的公共IP的命令。任何帮助将不胜感激。 –

+1

使用来自AWS账户的凭证无法从其他账户获取详细信息。您必须在所有帐户中担任角色,获取凭据并运行EC2 describe命令或使用所有帐户中的访问密钥。 – sudo

+0

啊我完全误解了这个问题。 sudo说的是正确的。我提到的CLI命令不适用于不同的AWS账户。 – purdoo