无法从 AWS 中对 ELB 的 REST 调用获取 IP 地址,而是获取一个 DNS 名称



对 AWS ELB 进行 REST 调用时,获取的 XML 响应具有 DNS 名称,但无法获取负载均衡器的 IP 地址。 但是,当我对 Azure 中的负载均衡器执行 REST 调用时,我会获取与之关联的 IP 地址。 是否可以在 AWS 中获取 IP 地址而不是 DNS 名称?

检查下面的回复,您可以看到我们有

<DNSName>my-load-balancer-424835706.us-west-2.elb.amazonaws.com</DNSName>
<DescribeLoadBalancersResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2015-12-01/">
<DescribeLoadBalancersResult>
<LoadBalancers> 
<member> 
<LoadBalancerArn>arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188</LoadBalancerArn> 
<Scheme>internet-facing</Scheme> 
<LoadBalancerName>my-load-balancer</LoadBalancerName> 
<VpcId>vpc-3ac0fb5f</VpcId> 
<CanonicalHostedZoneId>Z2P70J7EXAMPLE</CanonicalHostedZoneId> 
<CreatedTime>2016-03-25T21:26:12.920Z</CreatedTime> 
<AvailabilityZones> 
<member> 
<SubnetId>subnet-8360a9e7</SubnetId> 
<ZoneName>us-west-2a</ZoneName> 
</member> 
<member> 
<SubnetId>subnet-b7d581c0</SubnetId> 
<ZoneName>us-west-2b</ZoneName> 
</member> 
</AvailabilityZones> 
<SecurityGroups> 
<member>sg-5943793c</member> 
</SecurityGroups> 
<DNSName>my-load-balancer-424835706.us-west-2.elb.amazonaws.com</DNSName>
<State> 
<Code>active</Code> 
</State> 
<Type>application</Type> 
</member> 
</LoadBalancers> 
</DescribeLoadBalancersResult> 
<ResponseMetadata> 
<RequestId>6581c0ac-f39f-11e5-bb98-57195a6eb84a</RequestId> 
</ResponseMetadata>
</DescribeLoadBalancersResponse>

我希望获取 IP 地址而不是 DNS 名称,并且我已经查看了所有可能的文档。想知道是否可以获取 IP,或者想知道 AWS 是否支持它。

AWS ELBIP地址不断变化。您应该改用提供给您的 DNS 名称。

您可以获得当前的IP,甚至可以通过dig,但是...没有意义,因为它仍然可以更改 - 您不知道何时,它主要取决于硬件(当 ELB 托管计算机分解时 - 它会在 DNS 下设置新的并替换 IP/扩展/缩减 ELB 机器)。

最新更新