加油
努力

AWS云服务器更换实例后如何保留原有IP地址?

在 AWS 中,默认情况下更换实例(如通过停止/启动或终止重建)会分配一个新的公网 IP 地址,因为每个 EC2 实例默认获取的是“动态”分配的公共 IP。要保留原有 IP 地址,必须使用 弹性公网 IP(Elastic IP, EIP)。

以下是具体操作步骤:


✅ 核心原理

  • 普通公网 IP:随实例停止/终止而释放,重启后自动重新分配。
  • 弹性公网 IP(EIP):是静态的、可独立持有的公共 IPv4 地址,可手动绑定到任意实例,即使实例被替换也能保留。

🔧 操作步骤(推荐流程)

步骤 1:为原实例分配弹性公网 IP(EIP)

  1. 登录 AWS 管理控制台 → EC2。
  2. 左侧导航栏 → 网络与安全 → 弹性 IP。
  3. 点击 分配弹性 IP 地址:
    • 选择区域(需与原实例一致)。
    • 类型选 IPv4。
    • 点击 分配。
  4. 选中刚创建的 EIP → 点击 操作 → 关联弹性 IP 地址。
  5. 选择目标实例(即当前正在使用的实例),确认关联。

💡 此时该实例的公网流量仍正常,但 IP 已变为静态 EIP。

步骤 2:更换实例(如终止旧实例、创建新实例)

  • 您可以安全地 停止并启动 或 终止并重新创建 实例。
  • 新实例将不会自动获得该 EIP(除非手动指定)。

步骤 3:将 EIP 解绑并重新关联到新实例

  1. 回到 弹性 IP 页面。
  2. 找到之前分配的 EIP → 操作 → 断开连接(解绑)。

    ⚠️ 注意:解绑后 EIP 仍处于您的账户中,不会被回收(只要未手动释放)。

  3. 选择新创建的实例 → 操作 → 关联弹性 IP 地址。
  4. 选择该 EIP → 确认关联。

✅ 完成后,新实例将继承原有的公网 IP 地址。


📌 重要注意事项

项目 说明
费用 EIP 免费用于至少一个活跃实例;若解绑且未关联任何实例,AWS 会按小时收取小额费用(约 $0.005/小时)。建议始终关联到一个实例以避免额外成本。
区域限制 EIP 与特定区域(Region)绑定,不能跨区迁移。
IPv6 / NAT Gateway 此方案仅适用于 IPv4 公网访问;若使用 NAT Gateway 或 IPv6,逻辑不同。
自动化场景 可通过 CloudFormation、Terraform 或 Lambda + CLI 脚本实现 EIP 的自动保存与重绑定(适合 CI/CD 或灾备流程)。

❌ 常见误区

  • 误以为“修改实例配置”能保留 IP → 实际上只有 EIP 机制支持。
  • 忘记解绑再绑定,导致两个实例同时占用同一 EIP(AWS 不允许,会报错)。
  • 认为 EIP 可永久免费持有 → 长期不关联实例会产生持续费用。

如您有自动化部署需求(如 Terraform 示例)或涉及高可用架构(如 ELB + EIP),我可进一步提供详细方案。

云服务器