亚马逊网络服务——使用 DNS
在本文中,我们将研究 DNS 的工作原理,以及在使用 AWS 服务时如何解决部分 DNS 故障。这可以使用可用的在线工具和命令行界面来完成。
让我们先简单介绍一下 DNS 的工作原理。域名系统是使用分布式架构构建的。当主机需要解析域名的IP地址时,主机设备将这个过程交给DNS服务器。 DNS 服务器找到域名的 IP 地址并将其返回给主机。
让我们来看看一个简单的 DNS 查询的过程。当客户尝试解析 Amazon.com 的 DNS 记录时,就会发生这种情况。
- 首先,主机将请求的 DNS 查询发送到本地 DNS 服务器。
- 其次,预先配置有根名称服务器列表的 DNS 服务器随机选择这些路由名称服务器之一,并发送交互式 DNS 查询记录 Amazon.com。
- 第三,根名称服务器响应 .com 区域的权威名称服务器列表以及 IP 地址。
- 第四,DNS 服务器随机选择第三步中返回的主要内容之一,并发送另一个 DNS 查询以记录 Amazon.com。
- 第五,顶级域名服务器以对域 Amazon.com 具有权威性的名称服务器列表进行响应。
- 第六,DNS 服务器随机选择第五步返回的权威名称服务器之一,并为 Amazon.com 发送另一个 DNS 查询。
- 第七,由于在步骤六中接收查询的名称服务器对域 Amazon.com 具有权威性,因此名称服务器以记录 Amazon.com 的值(即 IP 地址)响应 DNS 服务器。
- 最后,DNS 服务器将此 DNS 响应发送给主机。
让我们逐步了解常见 DNS 问题的故障排除过程。例如,客户刚刚将域“awskcvideos.com”转移到 Route53,完成转移后无法解析其托管区域中的记录。为了在 Route53 上转移或注册域后正确解析 DNS 记录,您托管区域上的 Route53 名称服务器需要与 Route53 控制台上注册域部分上的名称服务器匹配。这是您验证这一点的方法。
第 1 步:签署 AWS 管理控制台后,导航到Amazon Route53控制台。
第 2 步:在导航面板中,选择注册域。
步骤 3:单击所需的域名。
第 4 步:记下四个名称服务器。
第 5 步:在导航面板中选择托管区域并单击域名。
第 6 步:记下托管区域中的四个名称服务器,并验证两个标记部分中列出的名称服务器。
在这种情况下,域“awskcvideos.com”的客户将无法解析其托管区域中的任何记录。解决方案是使用其 Route53 托管区域中的名称服务器更新已注册域部分中的名称服务器。
其他常见的 DNS 错误包括 SERVFAIL 和 REFUSED。 SERVFAIL DNS 响应表示由于权威名称服务器的问题,DNS 服务器无法处理此查询。 SERVFAIL 响应也是某些不成功的 DNSSEC 验证的常见响应。要解决此问题,请验证 DNS 服务提供商是否支持 DNSSEC,并且已注册域部分的权威名称服务器可访问且对域有效。 REFUSED 响应表明名称服务器对该域不具有权威性,这意味着它在其区域文件中没有该域的记录。要解决此问题,请验证在 Route53 控制台的注册域部分更新的托管区域中的正确名称服务器。