Amazon EC2 实例主机名类型 - Amazon Elastic Compute Cloud

Amazon EC2 实例主机名类型

本节介绍在 VPC 子网中启动实例时可用的 Amazon EC2 实例来宾操作系统主机名类型。

EC2 主机名的类型

在 VPC 中启动 EC2 实例时,来宾操作系统主机名有两种主机名类型:

  • 基于 IP 地址的命名 (IPBN):传统命名方案,当您启动实例时,实例的私有 IPv4 地址包含在实例的主机名中。基于 IP 地址的名称在 EC2 实例的生命周期内存在。当用作私有 DNS 主机名时,它只会返回私有 IPv4 地址(A 记录)。

  • 基于资源的命名 (RBN):当您启动实例时,EC2 实例 ID 包含在实例的主机名中。基于资源的名称在 EC2 实例的生命周期内存在。当用作私有 DNS 主机名时,它可以返回私有 IPv4 地址(A 记录)和/或 IPv6 全局单播地址(AAAA 记录)。

EC2 实例来宾操作系统主机名(IPBN 或 RBN 类型)取决于子网设置:

  • 如果在仅 IPv4 子网中启动实例,则可以选择 IPBN 或 RBN。

  • 如果在双协议栈(IPv4+IPv6)子网中启动实例,则可以选择 IPBN 或 RBN。

  • 如果在仅 IPv6 子网中启动实例,则会自动使用 RBN。

基于 IP 地址的命名

当您启动具有基于 IP 地址的命名(IPBN)的 EC2 实例时,请将来宾操作系统主机名配置为使用私有 IPv4 地址

  • us-east-1 中的实例的格式:private-ipv4-address.ec2.internal

  • 示例:ip-10-24-34-0.ec2.internal

  • 任何其它AWS区域中的实例的格式:private-ipv4-address.region.compute.internal

  • 示例:ip-10-24-34-0.us-west-2.compute.internal

基于资源的命名

当您在仅 IPv6 子网中启动 EC2 实例时,会自动使用基于资源的命名 (RBN)。当您在双协议栈 (IPv4+IPv6) 子网中启动实例时,默认情况下不会选择 RBN,但是您可以根据子网设置选择该选项。启动实例后,您可以管理来宾操作系统主机名配置。有关更多信息,请参阅修改 RBN 配置

当您启动具有基于资源的主机名类型的 EC2 实例时,来宾操作系统主机名已配置为使用 EC2 实例 ID。

  • us-east-1 中的实例的格式:ec2-instance-id.ec2.internal

  • 示例:i-0123456789abcdef.ec2.internal

  • 任何其它AWS区域中的实例的格式:ec2-instance-id.region.compute.internal

  • 示例:i-0123456789abcdef.us-west-2.compute.internal

IPBN 与 RBN 之间的区别。

基于 IP 地址的命名 (IPBN) 和基于资源的命名 (RBN) DNS 主机名的 DNS 查询共存,以确保向后兼容并允许您从 IPBN 迁移到 RBN。对于基于 IPBN 的私有 DNS 主机名,您无法配置是否响应实例的 DNS A 记录查询。DNS A 记录查询始终得到响应。相反,对于基于 RBN 的私有 DNS 主机名,您可以配置是否响应实例的 DNS A 和/或 DNS AAAA 查询。当您启动实例或修改子网时,您可以配置响应行为。当您启动实例、创建子网或修改子网时,您可以更改 RBN DNS 查询配置。有关更多信息,请参阅修改 RBN 配置

您在哪里看到 RBN 和 IPBN

本节介绍您在 EC2 控制台中看到基于资源的命名 (RBN) 和基于 IP 地址的命名 (IPBN) 的位置。

创建 EC2 实例时

当您创建 EC2 实例时,根据您选择的子网类型,RBN 选项可能是可用的,也可能已选中且无法修改。本节介绍您看到 RBN 和 IPBN 选项的情景。

方案 1

您在向导中创建 EC2 实例,然后配置详细信息时,您选择配置为仅 IPv6 的子网。

在这种情况下,Hostname type Resource name(主机名类型资源名称)已自动选中且无法修改。将显示 DNS Hostname(DNS 主机名)选项,但 Enable resource-based IPv6 (AAAA record) DNS requests(启用基于资源的 IPv6(AAAA 记录)DNS 请求)已自动选中且无法修改。这意味着您的 EC2 实例的主机名是 RBN,对 RBN 的 DNS 请求将解析为此 EC2 实例的 IPv6 地址(AAAA 记录)。

方案 2

您在向导中创建 EC2 实例,然后配置详细信息时,您选择配置为 IPv4 CIDR 块或同时配置 IPv4 和 IPv6 CIDR 块(“双堆栈”)的子网。

在这种情况下,RBN 选项 Hostname type(主机名类型)和 Resource-based DNS(基于资源的 DNS)是可见的。Enable IP name IPV4 (A record) DNS requests(启用 IP 名称 IPv4(A 记录)DNS 请求)已自动选中且无法更改。这意味着对 IP 名称的请求将解析为此 EC2 实例的 IPv4 地址(A 记录)。

RBN 选项默认为子网的配置,但是您可以根据子网设置修改此实例的选项:

  • Hostname type(主机名类型):确定您希望 EC2 实例的来宾操作系统主机名是资源名称 (RBN) 还是 IP 名称 (IPBN)。

  • Enable resource-based IPV4 (A record) DNS requests(启用基于资源的 IPV4(A 记录)DNS 请求):确定对您的资源名称的请求是否解析为此 EC2 实例的私有 IPv4 地址(A 记录)。

  • Enable resource-based IPV6 (AAAA record) DNS requests(启用基于资源的 IPV6(AAAA 记录)DNS 请求):确定对您的资源名称的请求是否解析为此 EC2 实例的 IPv6 GUA 地址(AAAA 记录)。

查看现有 EC2 实例的详细信息时

您可以在 EC2 实例的 Details(详细信息)选项卡中查看现有 EC2 实例的主机名值。

您可以查看以下与 IPBN 和 RBN 相关的详细信息:

  • Hostname type(主机名类型):IPBN 或 RBN 格式的主机名。

  • Private IP DNS name (IPv4 only)(私有 IP DNS 名称(仅 IPv4)):基于 IPBN 的 DNS 名称,它将始终解析为实例的私有 IPv4 地址。

  • Private resource DNS name(私有资源 DNS 名称):基于 RBN 的 DNS 名称,它可以解析为此实例选择的 DNS 记录。

  • Answer private resource DNS name(回答私有资源 DNS 名称):RBN 解析为 IPv4 (A)、IPv6 (AAAA) 或 IPv4 和 IPv6(A 和 AAAA)DNS 记录。

此外,如果您直接通过 SSH 连接到 EC2 实例,然后输入 hostname 命令,您将看到 IPBN 或 RBN 格式的主机名。

修改 RBN 配置

按照本节中的步骤修改子网或 EC2 实例启动后的基于资源的命名 (RBN) 配置。

子网

通过在 VPC 控制台中选择子网并选择 Actions(操作)、Edit subnet settings(编辑子网设置)来修改子网的 RBN 配置。

  • Hostname type(主机名类型):确定您希望在子网中启动的 EC2 实例的来宾操作系统主机名的默认设置是资源名称 (RBN) 还是 IP 名称 (IPBN)。

  • Enable DNS hostname IPv4 (A record) requests(启用 DNS 主机名 IPv4(A 记录)请求):确定对您的资源名称的 DNS 请求/查询是否解析为此 EC2 实例的 IPv4 地址(A 记录)。

  • Enable DNS hostname IPv6 (AAAA record) requests(启用 DNS 主机名 IPv6(AAAA 记录)请求):确定对您的资源名称的 DNS 请求/查询是否解析为此 EC2 实例的 IPv6 地址(AAAA 记录)。

EC2 实例

按照本节中的步骤修改 EC2 实例的 RBN 配置。

重要
  • 更改 Use RBN as guest OS hostname(将 RBN 用作来宾操作系统主机名)设置时,您必须先停止该实例。更改 Answer DNS hostname IPv4 (A record) request(回答 DNS 主机名 IPv4(记录)请求)或 Answer DNS hostname IPv6 (AAAA record) requests(回答 DNS 主机名 IPv6(AAAA 记录)请求)设置时,您无需停止该实例。

  • 修改非 EBS 支持的 EC2 实例类型的任何 RBN 设置时,您无法停止该实例。您必须终止该实例,然后启动包含所需 RBN 配置的新实例。

修改 EC2 实例的 RBN 配置

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 如果您要更改 Use RBN as guest OS hostname(将 RBN 用作来宾操作系统主机名)设置,首先停止该 EC2 实例。否则,请跳过此步骤。

    要停止实例,请选择该实例,然后依次选择 Instance state(实例状态)、Stop instance(停止实例)。

  3. 选择实例,然后依次选择 Actions(操作)、Instance settings(实例设置)、Change resource based naming options(更改基于资源的命名选项)。

    • Use RBN as guest OS hostname(将 RBN 用作来宾操作系统主机名):确定您希望 EC2 实例的来宾操作系统主机名是资源名称 (RBN) 还是 IP 名称 (IPBN)。

    • Answer DNS hostname IPv4 (A record) requests(回答 DNS 主机名 IPv4(A 记录)请求):确定对您的资源名称的 DNS 请求/查询是否解析为此 EC2 实例的 IPv4 地址。

    • Answer DNS hostname IPv6 (AAAA record) requests(回答 DNS 主机名 IPv6(AAAA 记录)请求):确定对您的资源名称的 DNS 请求/查询是否解析为此 EC2 实例的 IPv6 地址(AAAA 记录)。

  4. 选择保存

  5. 如果您已经停止实例,可以重新启动它。