AWS CLI EC2 describe-instances命令中ip-address过滤器的工作原理是什么
AWS EC2
ip-address 过滤器工作原理 AWS EC2 的查询过滤器名称和返回结果的字段名本身就没有一一对应的绑定关系,过滤器是EC2服务端预设的查询维度规则,和实例返回结构体的字段定义是两套独立的体系。
ip-address 过滤器的具体工作逻辑如下:
- 它是EC2服务端预设的、专门用于匹配实例公网IPv4地址的查询规则,查询时会自动遍历实例关联的所有公网IP资源做匹配,覆盖范围包括:
- 实例启动时自动分配的主公网IP(对应返回结果中的
PublicIp、PublicIpAddress字段) - 手动绑定到实例的弹性公网IP(EIP)
- 多网卡部署场景下,附属弹性网卡绑定的公网IP
- 实例启动时自动分配的主公网IP(对应返回结果中的
- 你在返回结果中找不到
ip-address字段的原因很简单:这个名称仅作为过滤器的标识存在,服务端通过这个过滤规则匹配到符合条件的实例后,会返回标准的EC2实例详情结构体,所有公网IP相关的信息会分散在对应业务属性字段中,除了实例层级的PublicIp、PublicIpAddress之外,还可能出现在网卡子项的Association.PublicIp字段下。
如果你需要查询所有describe-instances接口支持的过滤器列表,可以执行命令aws ec2 describe-instances --filters help查看官方说明,所有过滤器的匹配范围都会有明确标注,不需要和返回字段名称保持一致。
内容的提问来源于stack exchange,提问作者razz
相关产品推荐
相关产品推荐

