实例启动后分配公共 IP(不是弹性 IP)

实例启动后分配公共 IP(不是弹性 IP)

当我在 AWS 控制台中启动实例时,我可以将“自动分配公共 IP”设置为 true,并且新创建的实例将从池中分配公共 IP 地址。

现在假设我已启动实例,并将此设置设为 false,并希望为该实例分配公共 IP。与第一种情况相同的公共 IP,而不是弹性 IP。

PS 我知道我可以启动新实例并关闭旧实例。我特别想分配给一个已经运行的实例。

答案1

您启动的没有公共 IP 的实例将保持没有auto assign public IP公共 IP,因为只有在启动实例时才可分配。如果您在启动实例时选择不具有公共 IP,即使已开启子网,也不会为您的实例分配公共 IP。

我知道的唯一方法是选择assign a public IP 启动实例或设置子网以自动分配公共 IP,仅当您启动新实例时才会执行此操作。

assign a public IP总结一下:除非您使用 EIP,否则在启动该实例后不可能做到这一点。

答案2

为了事后纠正此问题,请关闭原始服务器,启动一个启用自动分配公共 IP 的新服务器并附加现有卷。

然后您可以丢弃原始实例。

答案3

如果您使用 ELB 和 Autoscaling,则动态创建实例并对其进行压力测试会很困难。此场景的一个解决方案是:

选择 EC2 实例 > 操作 > 网络 > 管理 IP 地址。然后使用选项“要添加或编辑 IPv4 公共 IP,请为此实例或网络接口分配弹性 IP”。

  1. 创建弹性 IP
  2. 导航到弹性 IP 地址链接 > 单击关联 IP
  3. 选择要关联IP的实例并保存。

现在您将拥有具有公共 IP 的 EC2 实例,无需重新启动/删除 EC2 实例。

答案4

这在 2016 年是不可能的,但现在 AWS 当然允许这样做:

  1. 从控制台进入 EC2 视图并单击“弹性 IP” 在此处输入图片描述
  2. 点击关联ElasticIP 在此处输入图片描述
  3. 找到您想要的 EC2 实例 在此处输入图片描述

相关内容