管理 VPC 端点服务的 DNS 名称 - Amazon Virtual Private Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理 VPC 端点服务的 DNS 名称

服务提供商可为其端点服务配置私有 DNS 名称。当服务提供商使用现有公有 DNS 名称作为其端点服务的私有 DNS 名称时,服务使用者无需更改任何使用现有公有 DNS 名称的应用程序。您必须先通过执行域所有权验证检查来证明您拥有该域,然后才能为端点服务配置私有 DNS 名称。

注意事项
  • 端点服务只能有一个私有 DNS 名称。

  • 不得为私有 DNS 名称创建 A 记录,以便只有服务使用者 VPC 中的服务器才能解析私有 DNS 名称。

  • 网关负载均衡器端点不支持私有 DNS 名称。

  • 要验证域,您必须拥有公有托管名称或公有 DNS 提供商。

  • 您可以验证子域的域。例如,您可以验证 example.com,而不是 a.example.com。按照 RFC 1034 中的规定,每个 DNS 标签最多可包含 63 个字符,域名总长度不得超过 255 个字符。

    如果添加其他子域,则必须验证子域或域。例如,假设您有 .example.com 并验证了 example.com。您现在添加 b.example.com 作为私有 DNS 名称。在服务使用者可以使用该名称之前,您必须验证 example.comb.example.com

域所有权验证

您的域与一组域名服务(DNS)记录相关联,这些记录由您的 DNS 提供商管理。TXT 记录是一种 DNS 记录,可提供有关您的域的其他信息。其中包含一个名称和一个值。作为验证过程的一部分,您必须将 TXT 记录添加到公有域的 DNS 服务器。

当我们检测到域的 DNS 设置中存在 TXT 记录时,即完成域所有权验证。

添加记录后,您可以使用 Amazon VPC 控制台检查域验证过程的状态。在导航窗格中,选择 Endpoint services(端点服务)。选择端点服务,并在 Details(详细信息)选项卡中检查 Domain verification status(域验证状态)的值。如果域验证正在等待处理,请等待几分钟,然后刷新屏幕。如果需要,您可以手动启动验证过程。依次选择 Actions(操作)、Verify domain ownership for private DNS name(验证私有 DNS 名称的域所有权)。

如果验证状态为 verified(已验证),则私有 DNS 名称可供服务使用者使用。如果验证状态发生变化,新的连接请求将被拒绝,但现有连接不会受到影响。

如果验证状态为 failed(失败),请参阅 解决域验证问题

获取名称和值

我们为您提供您在 TXT 记录中使用的名称和值。例如,在 Amazon Web Services Management Console 中提供信息。选择端点服务,并在端点服务的 Details(详细信息)选项卡中查看 Domain verification name(域验证名称)和 Domain verification value(域验证值)。您还可以使用以下 describe-vpc-endpoint-service-configur ation Amazon CLI s命令检索有关指定终端节点服务的私有 DNS 名称配置的信息。

aws ec2 describe-vpc-endpoint-service-configurations \ --service-ids vpce-svc-071afff70666e61e0 \ --query ServiceConfigurations[*].PrivateDnsNameConfiguration

下面是示例输出。创建 TXT 记录时,您需要使用 ValueName

[ { "State": "pendingVerification", "Type": "TXT", "Value": "vpce:l6p0ERxlTt45jevFwOCp", "Name": "_6e86v84tqgqubxbwii1m" } ]

例如,假设您的域名是 example.com,并且 ValueName 如前面的示例输出所示。下表是 TXT 记录设置的示例。

名称 Type

_6e86v84tqgqubxbwii1m.example.com

TXT

vpce: l6p0e 45jevfwoCP RxlTt

建议您使用 Name 作为记录子域,因为基本域名可能已在使用中。但是,如果您的 DNS 提供商不允许 DNS 记录名称包含下划线,则可省略“_6e86v84tqgqubxbwii1m”,并且只需在 TXT 记录中使用“example.com”。

在我们验证“_6e86v84tqgqubxbwii1m.example.com”之后,服务使用者可使用“example.com”或子域(例如“service.example.com”或“my.service.example.com”)。

将 TXT 记录添加到您的域的 DNS 服务器

将 TXT 记录添加到您的域的 DNS 服务器的过程取决于为您提供 DNS 服务的组织。您的 DNS 提供商可能是 Amazon Route 53 或其他域名注册商。

为公有托管区创建记录。使用以下值:

  • 对于 Record type(记录类型),选择 TXT

  • 对于 TTL (seconds) [TTL(秒)],输入 1800

  • 对于 Routing policy(路由策略),选择 Simple routing(简单路由)。

  • 对于 Record name(记录名称),输入域或子域。

  • 对于 Value/Route traffic to(值/流量路由至),输入域验证值。

有关更多信息,请参阅《Amazon Route 53 开发人员指南》中的使用控制台创建记录

前往 DNS 提供商网站并登录您的账户。查找该页面以更新域的 DNS 记录。使用我们提供的名称和值来添加 TXT 记录。DNS 记录更新最长需要 48 小时生效,但通常情况下生效时间要早很多。

有关更具体的说明,请查阅 DNS 提供商提供的文档。下表提供了指向几个常用 DNS 提供商的文档链接。此列表并不全面,也并非旨在推荐这些公司提供的产品或服务。

检查 TXT 记录是否已发布

您可以使用以下步骤验证您的私有 DNS 名称域所有权验证 TXT 记录是否已正确发布到 DNS 服务器。您将运行 nslookup 工具,目前支持的平台有 Windows 和 Linux。

您将查询为您的域名提供服务的 DNS 服务器,因为这些服务器包含的域 up-to-date 信息最多。您的域信息需要一定时间才会传播到其他 DNS 服务器。

验证您的 TXT 记录是否已发布到您的 DNS 服务器
  1. 使用以下命令查找您的域的名称服务器。

    nslookup -type=NS example.com

    此输出将列出可用于您的域的名称服务器。您将在下一步骤中查询这些服务器之一。

  2. 使用以下命令验证 TXT 记录是否正确发布,其中 name_server 是您在上一步骤中找到的名称服务器之一。

    nslookup -type=TXT _6e86v84tqgqubxbwii1m.example.com name_server
  3. 在上一步输出中,验证 text = 后面的字符串是否与 TXT 值匹配。

    在我们的示例中,如果记录正确发布,则输出包括以下内容。

    _6e86v84tqgqubxbwii1m.example.com text = "vpce:l6p0ERxlTt45jevFwOCp"

解决域验证问题

如果域验证过程失败,以下信息可以帮助您解决问题。

  • 检查您的 DNS 提供商是否允许在 TXT 记录名称中使用下划线。如果您的 DNS 提供商不允许使用下划线,则您可以从 TXT 记录中省略域验证名称(例如“_6e86v84tqgqubxbwii1m”)。

  • 检查您的 DNS 提供商是否将域名附加到 TXT 记录的末尾。某些 DNS 提供商会自动将您的域名附加到 TXT 记录的属性名称中。为避免域名重复,请在创建 TXT 记录时在域名结尾添加句点。此步骤告知 DNS 提供商没有必要将域名附加到 TXT 记录。

  • 检查您的 DNS 提供商是否将 DNS 记录值修改为仅使用小写字母。只有当验证记录的属性值与我们提供的值完全匹配时,我们才会验证您的域。如果 DNS 提供商将 TXT 记录值更改为仅使用小写字母,请联系他们获取帮助。

  • 由于您支持多个区域或多个 Amazon Web Services 账户,因而您可能需要多次验证您的域。如果 DNS 提供商不允许您拥有多条具有相同属性名称的 TXT 记录,请检查 DNS 提供商是否允许您将多个属性值分配给同一条 TXT 记录。例如,如果 DNS 由 Amazon Route 53 管理,则您可以按照以下步骤进行操作。

    1. 在 Route 53 控制台中,选择在验证第一个区域中的域时创建的 TXT 记录。

    2. 对于 Value(值),转到现有属性值的末尾,然后按 Enter。

    3. 添加附加区域的属性值,然后保存记录集。

    如果 DNS 提供商不允许向同一条 TXT 记录分配多个值,则可以使用 TXT 记录的属性名称中的值来验证域一次,而另一次使用从属性名称中删除的值来验证域。但是,您只能对同一个域验证两次。