有没有一种方法可以获取AWS子网中所有分配的IP地址列表?此外,如果有一种方法可以查看关联的(AW)服务,那将非常有帮助。谢谢!
编辑:
在私有AWS子网中分配的所有私有IP地址(无论实例状态如何)。获取此信息的任何方法都可以。我最熟悉的是AWS CLI、boto/boto3和控制台。
该列表将包括除5个地址之外的每个CIDR块定义下可用的所有地址:
- 1个用于子网地址
- 1个用于广播
- AWS保留了前3个可用的IP地址 每个子网
有没有一种方法可以获取AWS子网中所有分配的IP地址列表?此外,如果有一种方法可以查看关联的(AW)服务,那将非常有帮助。谢谢!
编辑:
在私有AWS子网中分配的所有私有IP地址(无论实例状态如何)。获取此信息的任何方法都可以。我最熟悉的是AWS CLI、boto/boto3和控制台。
该列表将包括除5个地址之外的每个CIDR块定义下可用的所有地址:
aws ec2 describe-instances --filters "Name=subnet-id,Values=subnet-12345678" --query 'Reservations[*].Instances[*].PrivateIpAddress' --output text
describe-instances
subnet-id
查询PrivateIpAddress
过滤结果按照@Michael - sqlbot的建议使用:
aws ec2 describe-network-interfaces --filters "Name=subnet-id,Values=subnet-12345678" --query 'NetworkInterfaces[*].PrivateIpAddress'
aws ec2 describe-network-interfaces
是首选的方法,因为它可以获取RDS、ELB-C/ALB/NLB、EFS、PrivateLink等使用的地址,更不用说Lambda的动态活动了。 - Michael - sqlbotdescribe-network-interfaces
的第二个解决方案。 - helloV'NetworkInterfaces[*].PrivateIpAddresses[*].PrivateIpAddress'
。输出结果并不美观。此外,还可以分配前缀,因此像'NetworkInterfaces[*].Ipv4Prefixes[*].Ipv4Prefix'
这样的查询也很有用。 - daxlerodaws ec2 describe-subnets --subnet-ids subnet-0621441200b4b3970 --query "Subnets[*].AvailableIpAddressCount"