是否可以将弹性 IP 关联到实例而不会立即丢失公共 ip?

M S*_*kel 3 dns amazon-ec2 amazon-web-services

我有一个运行生产网站的 Windows EC2 实例,并且 DNS 配置为让我的域名指向其公共 IP。当前没有与实例关联的弹性 IP (EIP)。我想开始使用弹性 IP 并让我的域名指向它而不是公共 IP(如果我必须更改实例,它可能会更改)。

阅读文档我发现这个声明令人不安:

当您将弹性公网IP与实例关联时,实例当前的公网IP地址会被释放到EC2-Classic公网IP地址池中。

我的恐惧是这样的:

  • 我给实例分配了一个EIP,公网IP被释放。
  • 现在我的网站不再工作,因为域名指向公共 IP,该 IP 不再与我的 EC2 实例相关联。
  • 然后我必须将 DNS 记录指向 EIP。但这可能需要长达 48 小时的传播才能发生(即我的网站可能长达 48 小时无法访问)。

如何在不必经历 DNS 传播的情况下做到这一点?

Mat*_*ser 5

如果您的 EC2 实例在 VPC 中,您可以向您的 EC2 实例添加第二个网络接口。您可以将您的弹性 IP 地址与第二个网络接口相关联。这样,您的 EC2 实例就可以响应这两个 IP 地址。

指示

  1. 在与您的 EC2 实例相同的子网中创建一个新的网络接口。
  2. 为您的 VPC 分配一个新的弹性 IP(如果您还没有这样做的话)。
  3. 将弹性 IP 地址与您的新网络接口 (eni) 相关联。
  4. 将您的新网络接口附加到您的 EC2 实例。

暂时不要更改您的 DNS。

您可能需要通过 RDP/SSH 连接到您的 EC2 实例以进行一些配置更改,以确保您的 EC2 实例正确响应新 IP 地址。

修改本地计算机上的 hosts 文件以测试通过新 IP 地址连接到您的网站。

如果可行,请执行 DNS 切换并恢复您的主机文件。

  • 您无法分离主网络接口。相反,在 48 小时后,将弹性 IP 地址从您的辅助 ENI 移动到您的实例(或主要 ENI)。然后分离您的辅助 ENI。 (2认同)