EC2 实例的多个 IP 地址 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

EC2 实例的多个 IP 地址

您可以为实例指定多个私有 IPv4 和 IPv6 地址。您可为实例指定的网络接口和私有 IPv4 和 IPv6 地址的数量取决于该实例的类型。有关更多信息,请参阅每个网络接口的最大 IP 地址数

在执行以下操作时,为 VPC 中的实例分配多个 IP 地址会非常有用:

  • 在单个服务器上使用多个 SSL 证书,并为每个证书关联一个指定的 IP 地址,以在单个服务器上托管多个网站。

  • 操作每个网络接口有多个 IP 地址的网络应用,如防火墙或负载均衡器。

  • 当实例发生故障时,可将内部流量重定向到备用实例,方法是为备用实例重新分配辅助 IP 地址。

多个 IP 地址的工作方式

下表说明了多个 IP 地址如何与网络接口配合工作:

  • 您可以为任何网络接口分配辅助私有 IPv4 地址。

  • 您可以将多个 IPv6 地址分配给拥有关联 IPv6 CIDR 块的子网中的网络接口。

  • 您必须从子网的 IPv4 CIDR 块范围内为网络接口选择辅助 IPv4 地址。

  • 您必须从子网的 IPv6 CIDR 块范围内为网络接口选择辅助 IPv6。

  • 将安全组与网络接口关联,而不是与各 IP 地址关联。因此,网络接口中指定的每个 IP 地址均受其网络接口的安全组约束。

  • 可将多个 IP 地址分配给附加到正在运行或已停止实例的网络接口,也可以取消分配操作。

  • 如果您明确允许,已分配给某个网络接口的辅助私有 IPv4 地址可重新分配给其他网络接口。

  • 无法将 IPv6 地址重新分配给其他网络接口;您必须先取消分配给现有网络接口的 IPv6 地址。

  • 当使用命令行工具或 API 将多个 IP 地址分配给某个网络接口时,如果其中有一个 IP 地址无法分配,整个操作都会失败。

  • 当网络接口与实例分离或附加到实例时,主要私有 IPv4 地址、辅助私有 IPv4 地址、弹性 IP 地址以及 IPv6 地址将仍然属于此辅助网络接口。

  • 尽管您无法从实例分离主要网络接口,但是您可以将主要网络接口的辅助私有 IPv4 地址重新分配给另一个网络接口。

下表说明了如何将多个 IP 地址与弹性 IP 地址配合使用 (仅限 IPv4):

  • 每个私有 IPv4 地址只能与一个弹性 IP 地址关联,反之亦然。

  • 当辅助私有 IPv4 地址重新分配给其他接口时,该辅助私有 IPv4 地址会保留与弹性 IP 地址的相关性。

  • 当您取消分配给接口的辅助私有 IPv4 地址时,相关的弹性 IP 地址会自动取消与该辅助私有 IPv4 地址的关联。

使用多个 IPv4 地址

您可以将一个辅助私有 IPv4 地址分配给实例,将弹性 IPv4 地址与辅助私有 IPv4 地址关联,并且取消分配辅助私有 IPv4 地址。

分配辅助私有 IPv4 地址

您可以在启动实例时或在实例运行后为实例的网络接口分配辅助私有 IPv4 地址。

启动实例时分配辅助私有 IPv4 地址
  1. 按照程序启动实例。对于网络设置,选择编辑

  2. 选择 VPC 和子网。

  3. 展开高级网络配置

  4. 对于辅助 IP,选择自动分配并输入 IP 地址数量(Amazon 会自动分配辅助 IPv4 地址),或者选择手动分配并输入 IPv4 地址。

  5. 完成剩余步骤以启动实例。

使用命令行在启动期间分配辅助 IPv4 地址

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

  • 用于 --secondary-private-ip-addressesrun-instances 命令 (Amazon CLI) 的 选项

  • 使用 New-EC2Instance 命令 (-NetworkInterface) 定义 PrivateIpAddresses 并指定 Amazon Tools for Windows PowerShell 参数。

为网络接口分配辅助私有 IPv4 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择网络接口,然后为实例选择网络接口。

  3. 依次选择操作管理 IP 地址

  4. 展开网络接口。在 IPv4 地址下,选择分配新 IP 地址

  5. 输入一个处于实例子网范围内的特定 IPv4 地址,或者将该字段保留为空白,以便让 Amazon 为您选择一个 IPv4 地址。

  6. (可选)选择允许,以允许已分配到另一个网络接口的辅助私有 IP 地址能够重新分配。

  7. 选择保存

或者,您也可以为实例分配辅助私有 IPv4 地址。在导航窗格中选择实例,选择相应实例,然后依次选择操作联网管理 IP 地址。您可以按上述步骤进行操作,以配置相同的内容。该 IP 地址将分配给实例的主网络接口 (eth0)。

使用命令行为现有实例分配辅助私有 IPv4 地址

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

配置操作系统以识别辅助私有 IPv4 地址

为实例分配辅助私有 IPv4 地址后,您需要在实例上配置操作系统,以识别辅助私有 IP 地址。

Linux 实例
  • 如果您使用的是 Amazon Linux,ec2-net-utils 包可以在此步骤上为您提供帮助。它能在实例运行期间配置您附加的其他网络接口,在 DHCP 租约续订期间更新辅助 IPv4 地址,并更新相关的路由规则。您可以使用 sudo service network restart 命令立即刷新接口列表,然后使用 ip addr li 查看最新列表。如果您需要手动控制网络配置,可以删除 ec2-net-utils 包。有关更多信息,请参阅 Configure your network interface using ec2-net-utils

  • 如果您正在使用其他 Linux 分配,请参阅有关 Linux 分配的文档。您可以搜索有关配置其他网络接口和辅助 IPv4 地址的信息。如果实例在同一子网中有两个或更多接口,请搜索有关利用路由规则解决非对称路由的信息。

Windows 实例

有关更多信息,请参阅 为 Windows 实例配置辅助私有 IPv4 地址

将弹性 IP 地址与辅助私有 IPv4 地址关联

将弹性 IP 地址与辅助私有 IPv4 地址关联
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择弹性 IP

  3. 选择弹性 IP 地址的复选框

  4. 依次选择操作关联弹性 IP 地址

  5. 资源类型中,选择网络接口。选择网络接口后,从私有 IP 地址列表中选择辅助 IP 地址。

  6. 网络接口中,选择网络接口,然后从私有 IP 地址列表中选择辅助 IP 地址。

  7. 私有 IP 地址中,选择辅助 IP 地址。

  8. 选择关联

使用命令行将弹性 IP 地址与辅助私有 IPv4 地址关联

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

查看辅助私有 IPv4 地址

查看分配给网络接口的私有 IPv4 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择网络接口

  3. 选择网络接口的复选框。

  4. 详细信息选项卡的 IP 地址下,找到私有 IPv4 地址辅助私有 IPv4 地址

查看分配给实例的私有 IPv4 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例

  3. 选中实例对应的复选框。

  4. 联网选项卡的网络详细信息下,找到私有 IPv4 地址辅助私有 IPv4 地址

取消分配辅助私有 IPv4 地址

如果您不再需要辅助私有 IPv4 地址,则可取消分配给实例或网络接口的这类地址。当取消分配给网络接口的辅助私有 IPv4 地址后,弹性 IP 地址 (如果存在) 也会断开相关联系。

取消分配给实例的辅助私有 IPv4 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例

  3. 选择实例,然后依次选择操作联网管理 IP 地址

  4. 展开网络接口。在 IPv4 地址中,为要取消分配的 IPv4 地址选择取消分配

  5. 选择保存

取消分配给网络接口的辅助私有 IPv4 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择网络接口

  3. 选择网络接口,然后依次选择操作管理 IP 地址

  4. 展开网络接口。在 IPv4 地址中,为要取消分配的 IPv4 地址选择取消分配

  5. 选择保存

使用命令行取消分配辅助私有 IPv4 地址

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

使用多个 IPv6 地址

您可以将多个 IPv6 地址分配给实例、查看分配给实例的 IPv6 地址以及取消分配给实例的 IPv6 地址。

分配多个 IPv6 地址

您可以在启动期间或之后将一个或多个 IPv6 地址分配给实例。要将 IPv6 地址分配给实例,您在其中启动实例的 VPC 和子网都必须有一个关联的 IPv6 CIDR 块。

在启动期间分配多个 IPv6 地址
  1. 按照程序启动实例。对于网络设置,选择编辑

  2. 选择 VPC 和子网。

  3. 展开高级网络配置

  4. IPv6 IP 中,选择自动分配并输入 IP 地址数量(Amazon 会自动分配 IPv6 地址),或者选择手动分配并输入 IPv6 地址。

  5. 完成剩余步骤以启动实例。

您可以使用 Amazon EC2 控制台的 Instances (实例) 屏幕将多个 IPv6 地址分配给现有实例。该做法可将 IPv6 地址分配给实例的主网络接口 (eth0)。要将特定 IPv6 地址分配给实例,请确保 IPv6 地址尚未分配给其他实例或网络接口。

将多个 IPv6 地址分配给现有实例
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例

  3. 选择您的实例,然后依次选择操作联网管理 IP 地址

  4. 展开网络接口。在 IPv6 地址中,为每个要添加的 IPv6 地址选择分配新 IP 地址。您可以指定一个处于子网范围内的 IPv6 地址,也可以将该字段留空,让 Amazon 为您选择一个 IPv6 地址。

  5. 选择保存

或者,您可以将多个 IPv6 地址分配给现有网络接口。网络接口必须是在具有关联的 IPv6 CIDR 块的子网中创建的。要将特定 IPv6 地址分配给网络接口,请确保该 IPv6 地址尚未分配给其他网络接口。

将多个 IPv6 地址分配给网络接口
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择网络接口

  3. 选择网络接口,然后依次选择操作管理 IP 地址

  4. 展开网络接口。在 IPv6 地址中,为每个要添加的 IPv6 地址选择分配新 IP 地址。您可以指定一个处于子网范围内的 IPv6 地址,也可以将该字段留空,让 Amazon 为您选择一个 IPv6 地址。

  5. 选择保存

CLI 概览

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

  • 在启动期间分配 IPv6 地址

    • --ipv6-addresses--ipv6-address-count 选项与 run-instances 命令 (Amazon CLI) 结合使用

    • 使用 New-EC2Instance 命令 (-NetworkInterface) 定义 Ipv6Addresses 并指定 Ipv6AddressCount 或 Amazon Tools for Windows PowerShell 参数。

  • 将 IPv6 地址分配给网络接口

查看您的 IPv6 地址

您可以查看实例或网络接口的 IPv6 地址。

查看分配给实例的 IPv6 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例

  3. 选择实例对应的复选框。

  4. 联网选项卡上,找到 IPv6 地址字段。

查看分配给网络接口的 IPv6 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择网络接口

  3. 选择网络接口的复选框。

  4. 详细信息选项卡的 IP 地址下,找到 IPv6 地址字段。

CLI 概览

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

取消分配 IPv6 地址

您可以取消分配给实例主网络接口的 IPv6 地址,也可以取消分配给网络接口的 IPv6 地址。

取消分配给实例的 IPv6 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例

  3. 选择实例对应的复选框,然后依次选择操作联网管理 IP 地址

  4. 展开网络接口。在 IPv6 地址下方,选择 IPv6 地址旁边的取消分配

  5. 选择保存

取消分配给网络接口的 IPv6 地址
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择网络接口

  3. 选择网络接口对应的复选框,然后依次选择操作管理 IP 地址

  4. 展开网络接口。在 IPv6 地址下方,选择 IPv6 地址旁边的取消分配

  5. 选择保存

CLI 概览

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2