无法恢复 AWS EC2 公共 IP 地址

Posted

技术标签:

【中文标题】无法恢复 AWS EC2 公共 IP 地址【英文标题】:Can't recover AWS EC2 public IP address 【发布时间】:2021-12-22 07:01:24 【问题描述】:

我最近创建了一个 AWS EC2 实例,它的 IP 地址类似于 3.144.nnn.nnn

我将该 IP 地址用于应用程序作为我的 IP 地址,我无法更改它。 实例停止和启动后,我得到一个随机的IP地址。

然后我发现我可以用弹性IP地址分配静态IP地址。

但是,当我尝试分配弹性 IP 时,它也会生成随机 IP,因此我使用 AWS CLI 进行了尝试:

aws ec2 allocate-address --address 3.144.nnn.nnn --domain vpc(同上IP)

但是它返回一个错误:

An error occurred (InvalidAddress.NotFound) 
when calling the AllocateAddress operation: 
  The Elastic IP address '3.131.nnn.nnn' does not exist or is not available.

我尝试了几个具有相同范围的 IP(出于测试目的)。但是,它返回相同的错误。

【问题讨论】:

网站说明:您应该避免依赖使用特定的 IP 地址。在可能的情况下,使用解析为 IP 地址的 DNS 名称。然后,您可以在将来更改 IP 地址,而无需更新引用。 @Tobie 下面的建议是准确的。 【参考方案1】:

如果您想要一个固定的公共 IP,您需要创建一个弹性 IP 地址并检查分配给它的 IP,然后您可以使用该 IP。您不能选择分配给弹性 IP 地址的 IP。

另请注意,如果您释放弹性 IP 地址,如果您没有将其分配给实例,则需要付费。如果您删除弹性 IP 地址,则获得具有相同 IP 的弹性 IP 地址的机会微乎其微。

【讨论】:

以上是关于无法恢复 AWS EC2 公共 IP 地址的主要内容,如果未能解决你的问题,请参考以下文章

我为AWS EC2实例更改了区域。但我无法从新的IP地址和公共DNS看到一个网站

ec2 实例无法在没有弹性 IP 地址的情况下访问公共子网中的互联网?

无法从 EC2 上的公共 IP 地址访问 node_exporter

如何使用 Ruby SDK 从 AWS 获取公共 IP 地址

AWS EC2 和 Route 53 域(从不同提供商转移)链接问题 | nslookup 无法解析任何 IP 地址

Amazon AWS负载均衡器EC2实例解决ip范围