我可以删除我的实例上的公共IP而不终止它吗?

时间:2016-07-22 19:07:55

标签: amazon-web-services amazon-ec2

我在vpc上有几个实例,它们通过私有的ips相互通信。每个实例都是在不久前启动的,并分配了一个随机的公共IP,不用于任何事情。由于任何公开的内容都存在漏洞而且根本没有使用它们,我想删除它们。

是否可以在不终止实例的情况下删除公共IP地址?

4 个答案:

答案 0 :(得分:9)

没有终止实例,这是不可能的。如果它是Elastic Ip那么它就会起作用。

唯一的选择是获取实例的AMI,终止实例并在VPC中启动AMI,而不为该实例启用公共IP地址。

使用该专用IP终止实例后,您可以将该专用IP再次分配给您从Image创建的新实例。 (只要它在同一个VPC和子网中)这样你就不需要更新vpc上所有"实例的私有IP,这些实例通过私有的ips和彼此进行通信#34;

答案 1 :(得分:2)

是的,您可以从实例中删除公共IP地址。

当您的实例在启用了“自动分配公共IP”设置的子网中启动时,此解决方案适用。 这使得AWS添加了一个似乎很难删除的公共IP地址。

注意:

  • 如果您更改子网自动分配设置并停止并启动实例, 这行不通,没有效果。公共IP仍然存在。
  • 如果您通过关联弹性IP来获得公共IP,那么它就是 不同的情况,易于修复;您需要做的就是右键单击 实例或在弹性IP上,然后选择“网络”,“取消关联 弹性IP地址”)

这里有一种投票表决的解决方案似乎一开始就起作用,但是当您再次启动实例时,公共IP会回来(作为另一个地址)。

解决方案:(以下详细步骤)

您需要首先添加另一个网络接口(因此有两个或多个N.Is),然后可以通过添加和删除一个 弹性IP。

这是详细的分步指南:

  1. 创建一个新的网络接口。
  2. 将新的网络接口连接到您的实例。现在将有两个 或更多网络接口连接到您的实例。这个很重要。 必须有两个或多个才能使此工作。
  3. (在EC2控制台中)创建一个新的Elastic IP。
  4. 右键单击新的EIP并将其关联到其公共IP的实例 您要删除。原来的公共IP将被新的IP代替。
  5. 现在,执行与步骤4相反的操作,取消关联刚刚添加的EIP。 此时,右键单击实例,然后选择“网络”,“管理 IP地址”,您将看到实例上没有任何公共IP 更多。在此刻。您必须刷新实例视图,否则 不会看到这个。

    公共IP现在已经一去不复返了。 即使您停止并启动该实例,它也不会返回。

  6. 整理:删除您先前创建的弹性IP。不要删除新的 额外的网络接口。这必须留在原地。如果您删除新的/ 第二个NI,则公共IP将在您下次停止时返回, 启动实例。

我知道这听起来有些奇怪,但是它在AWS文档here中,并且我已经对其进行了测试并且可以工作。

该页面上的AWS文档的相关部分是:“如果已释放您的实例在VPC中的公共IP地址,则如果连接了多个网络接口,它将不会收到新的公共IP地址。您的实例。”

答案 2 :(得分:1)

步骤对我有用:

  1. 在 vpc 子网上禁用自动分配公共 IP 设置。
  2. 停止 ec2 实例。
  3. 打开网络接口管理 IP 地址设置并分配辅助私有 IP。
  4. 打开弹性 IP 并将弹性 IP 与具有辅助私有 IP 的 ec2 相关联。
  5. 启动 Ec2 实例。
  6. 打开网络接口管理 IP 地址设置并取消分配辅助 IP。
  7. 完成,现在您可以释放之前关联的弹性 IP。

答案 3 :(得分:-1)

这是一个非常老的线程,但删除通过VPC设置关联的公共IP的最简单方法是:

  1. 创建弹性IP
  2. 将弹性IP分配给拥有的主机 你要发布的公共IP(ip在此发布 步骤)
  3. 将ip地址与elasic ip管理解除关联 屏幕。