如何配置 Route 53 Resolver 入站端点,以便从远程网络解析我的私有托管区域中的 DNS 记录?

2 分钟阅读
0

我想配置 Amazon Route 53 Resolver 入站端点,以便从远程网络解析我的私有托管区中的记录。

简短描述

Amazon Virtual Private Cloud(Amazon VPC)允许您的 VPC 从 Route 53 Resolver 接收自动 DNS 解析。VPC 中的 Amazon Elastic Compute Cloud(Amazon EC2)实例可以向 Resolver 发送 DNS 查询。为此,实例会使用 VPC IPv4 网络范围基址 + 2 的预留 IP 地址。如果远程网络和 VPC 之间存在网络连接,则远程网络的 DNS 解析器可以将 DNS 查询转发给 VPC 的解析器。AWS Direct Connect 或 VPN 连接可实现这种连接。但是,Resolver 不接受来自 VPC 网络范围之外的 IP 地址的 DNS 查询。要解决此问题,请在您的 VPC 中创建一个入站端点。此入站端点会将其收到的 DNS 查询转发给 Resolver。对这些查询的处理方式与源自 VPC 的查询的处理方式相同。

解决方法

满足先决条件

首先,在要创建入站端点的 VPC 的 DNS 支持属性中启用 DNS 主机名和 DNS 解析

然后,将适用的私有托管区与该 VPC 相关联。

如果私有托管区与 VPC 在同一个账户中,请完成以下步骤:

  1. 打开 Route 53 控制台
  2. 在导航窗格中,选择托管区
  3. 选择包含您要查询的记录的私有托管区。
  4. 在搜索栏中,搜索您的 VPC。然后,选择关联新的 VPC

如果私有托管区与 VPC 位于不同的账户中,则使用 AWS 命令行界面(AWS CLI)执行跨账户关联

**注意:**如果您在运行 AWS CLI 命令时收到错误,请确保您使用的是最新版本的 AWS CLI

确认您的本地 DNS 服务器仅发送递归查询。Route 53 入站解析器不支持迭代查询。

确认与您创建入站端点解析器的子网关联的路由表包括至本地网络的路由。

如果您在创建入站端点的子网中使用自定义网络访问控制列表(网络 ACL),则必须允许某些流量。确保网络 ACL 允许以下端口上的流量:

  • 目标端口范围 1024-65535 上至本地 DNS 服务器的 UDP 和 TCP 流量(出站 NACL 规则)。
  • 端口 53 上来自本地 DNS 服务器(入站 NACL 规则)的 UDP 和 TCP 流量。
  • 与入站关联的任何安全组均必须允许 TCP 和 UDP 端口 53 上来自本地 DNS 服务器 IP 地址的流量。

如果您在本地网络和 AWS 之间有防火墙,则防火墙必须允许某些流量。确保它允许 TCP 和 UDP 端口 53 上您本地 DNS 服务器 IP 地址的流量。

另外,您必须通过 AWS Direct Connect 连接与入站解析器端点 IP 地址建立连接。

配置入站端点

1.    打开 Route 53 控制台

2.    在导航窗格中,选择入站端点

3.    在导航栏上,为要创建入站端点的 VPC 选择 AWS 区域。

4.    选择创建入站端点

5.    完成入站端点的常规设置。为此端点选择一个安全组,允许目标端口 53 上来自远程网络的入站 UDP 和 TCP 流量。

6.    选择 2-6 个 IP 地址 进行 DNS 查询。您可以让 Resolver 从子网中可用的 IP 地址中为您选择 IP 地址。或者,您也可以指定 IP 地址。最佳做法是在至少两个不同的可用区中选择 IP 地址。

7.    对于每个 IP 地址的子网,选择具有以下值的子网:
**对应的路由表:**这些路由表必须包含通过 AWS Direct Connect 或 VPN 到远程网络上 DNS 解析器的 IP 地址的路由。
**网络 ACL:**这些 ACL 必须允许目标端口 53 上来自远程网络的 UDP 和 TCP 流量。此外,它们必须允许目标端口范围 1024-65535 上到远程网络的 UDP 和 TCP 流量。根据您的客户端类型,您的网络 ACL 可能使用不同的范围。

8.    (可选)完成标签部分。

9.    选择创建入站端点

**注意:**入站解析器没有 FQDN。因此,当您创建入站端点时,Route 53 会在所选子网中创建弹性网络接口。这些网络接口的 IP 地址转发 DNS 查询。

测试您的配置

在测试之前,请确认您的配置符合以下条件:

  • 远程网络的 DNS 服务器必须有条件地将私有托管区域名的 DNS 查询转发到入站端点的 IP 地址。
  • 远程 DNS 服务器必须转发域名的 DNS 查询,而不是将域名授权委托给入站端点。
  • 入站端点必须仅支持递归 DNS 查询。发送到入站端点的迭代 DNS 查询会超时。如果本地 DNS 服务器发送的 DNS 查询将所需递归设置为 0(false),则入站端点不会提供应答。您可以在数据包捕获中找到这些信息。
  • 如果您使用 AWS Transit Gateway,请验证子网是否与中转网关连接相关联。这是解析 DNS 查询所必需的。

要测试您的配置,请从远程网络上的客户端对私有托管区中的一条记录执行 DNS 解析。在以下命令中,将 RECORD_NAMERECORD_TYPE 替换为您的相关值:

对于 Linux 或 MacOS,运行 dig RECORD_NAME RECORD_TYPE,如以下示例所示:

dig example.com A

对于 Windows,运行 nslookup RECORD_NAME RECORD_TYPE,如以下示例所示:

nslookup example.com

相关信息

解析 VPC 与您的网络之间的 DNS 查询

将出站 DNS 查询转发到您的网络

管理出站端点

如何解决 Route 53 Resolver 端点的 DNS 解析问题?

AWS 官方
AWS 官方已更新 1 年前