首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >生成跨多个AWS账户的IP和EIP列表

生成跨多个AWS账户的IP和EIP列表
EN

Stack Overflow用户
提问于 2021-03-19 02:43:26
回答 1查看 65关注 0票数 2

我正在尝试找出最好的方法来快速确定给定的AWS IP地址是否链接到我控制下的AWS帐户。在过去,使用一两个AWS账户很容易做到这一点。随着更广泛的多账户策略,这变得更加困难和耗时。

有没有人对如何最好地解决这个问题有什么建议?S3存储镜头适用于监控所有账户的S3存储桶,但显然这是针对S3而不是EIP的。

EN

回答 1

Stack Overflow用户

发布于 2021-03-19 04:52:43

这不是“最好的”方法,但它既快捷又简单。使用JSON aws ec2 describe-addresses,它会将EIP和一些有用的细节转储为AWS CLI字符串。通过附加> myips.txt将此输出发送到一个文件,然后使用文本编辑器搜索IP。

aws ec2 describe-addresses > myips.txt

对于每个弹性公网EIP,myips.txt将包含如下数据

代码语言:javascript
运行
复制
{
    "Addresses": [
        {
            "InstanceId": "i-XXXXXXXXXXXXXXXXX",
            "PublicIp": "XXX.XXX.XXX.XXX",
            "AllocationId": "eipalloc-XXXXXXXX",
            "AssociationId": "eipassoc-XXXXXXXX",
            "Domain": "vpc",
            "NetworkInterfaceId": "eni-XXXXXXXX",
            "NetworkInterfaceOwnerId": "XXXXXXXXXXXX",
            "PrivateIpAddress": "XXX.X.X.XXX",
            "Tags": [
                {
                    "Key": "Name",
                    "Value": "Web1"
                },
                {
                    "Key": "Role",
                    "Value": "Web"
                }
            ],
            "PublicIpv4Pool": "amazon",
            "NetworkBorderGroup": "us-east-1"
        }
    ]
}

如果你有一堆不同的账号,你可以按名字使用不同的证书,比如:aws --profile producton ec2 describe-addresses >> myips.txt (注:>> appends)。这里假设配置文件"production“在~/.aws/credentials (Linux & Mac)或%USERPROFILE%.aws\credentials (Windows)中定义如下:

代码语言:javascript
运行
复制
[production]
aws_access_key_id=AKIAI44QH8DHBEXAMPLE
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY

自己创建一个.sh或.bat脚本,并使用它对每个配置文件/区域执行aws,并不断将结果附加到当前目录中的"myips.txt“文件:

代码语言:javascript
运行
复制
aws --profile production --region us-east-1 ec2 describe-addresses > myips.txt
aws --profile production --region ca-central-1 ec2 describe-addresses >> myips.txt
aws --profile sandbox ec2 describe-addresses >> myips.txt
aws --profile testing ec2 describe-addresses >> myips.txt
aws --profile backup ec2 describe-addresses >> myips.txt

然后,您可以在需要查找IP的任何时候运行此脚本(每次您运行此脚本时,它都会创建/覆盖myips.txt )。

显然,您可以进一步自动化这一点,遍历每个区域,很好地格式化输出等。另一种选择是使用不同的filter options for aws cli搜索IP。搜索所需的IP可能比检索所有IP的列表更快。这在很大程度上取决于你想投入多少努力和你的aws账户的大小。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66697235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档