子域名特定的名称服务器间歇性解析失败

子域名特定的名称服务器间歇性解析失败

我在子域名的 DNS 解析方面遇到了问题。我遇到了一个有点奇怪的情况(至少对我来说很奇怪),所以请耐心听我解释。

我正在与拥有该域名的朋友合作november-project.com。该域名已购买,其 DNS 托管在 GoDaddy。名称服务器指向 WordPress 网站所在的 HostGator。

好的。所以我创建了一个单独的 Web 应用程序,并成功在tracking.november-project.com子域下提供服务。我使用了 HostGator,并将我的资产推送到他们在您创建子域时提供给您的公共文件夹中。我还tracking-staging.november-project.com使用它进行测试。

最近,我想离开 HostGator,因为我们在 SSL 证书和正常运行时间方面遇到了一些问题。我决定将我的应用程序移至 S3,并使用 ButtFront 进行缓存,并使用 Route 53 将子域解析委托给 AWS。我使用此文档来帮助我设置 Route 53 子域记录:

http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingNewSubdomain.html

我能够访问该网站并看到正在交付的 S3 资产,因此我从 HostGator 中删除了子域名。现在该网站对某些人可以加载,但对其他人则不行。我可以用手机访问该网站,但不能用笔记本电脑访问。我看到了server DNS address could not be found.错误。

我对 DNS 不是很了解,但大部分知识都是通过这个过程学到的。任何帮助我都非常感谢。我也可以提供有关任何事情的更多信息。

更新:

与 GoDaddy 核实后,DNS 服务被委托给 HostGator,因此我无法在那里添加区域记录。

然后我与 HostGator 支持人员进行了交谈,他们不允许我这个价位(大多数网络/共享级别)的客户使用 NS 记录。

与朋友讨论后,似乎最好的做法是停止使用 HostGator 的 DNS。既然无论如何都要做出这一改变,我决定使用 Route 53 进行整合。

我希望 Route 53 允许使用通配符 NS 记录,这样我就可以将我不想处理的所有事情委托给 HostGator;但是,通配符 NS 记录似乎不是任何 DNS 的常见功能。所以我花了一些时间将 HostGator 中的所有 DNS 记录复制到 Route 53。然后我切换 GoDaddy 以指向 Route 53。我希望这会起作用并且不会导致根站点停机。

这一切看起来合理吗?还有其他建议的行动方案吗?

答案1

上的 whois十一月项目网显示以下名称服务器记录:

Name Server: NS8065.HOSTGATOR.COM
Name Server: NS8066.HOSTGATOR.COM
Name Server: NS-1032.AWSDNS-01.ORG
Name Server: NS-40.AWSDNS-05.COM
Name Server: NS-1565.AWSDNS-03.CO.UK
Name Server: NS-572.AWSDNS-07.NET
Name Server: NS-1465.AWSDNS-55.ORG
Name Server: NS-688.AWSDNS-22.NET
Name Server: NS-2026.AWSDNS-61.CO.UK
Name Server: NS-458.AWSDNS-57.COM

当我在 hostgator 名称服务器上挖掘 tracking.november-project.com 然后在 AWS 上挖掘时,我得到了非常不同的响应:

亚马逊:

Dig [email protected] (205.251.197.185) ...
Authoritative Answer
 Query for tracking.november-project.com type=255 class=1
  tracking.november-project.com A (Address) 52.85.40.208
  tracking.november-project.com A (Address) 52.85.40.67
  tracking.november-project.com A (Address) 52.85.40.155
  tracking.november-project.com A (Address) 52.85.40.215
  tracking.november-project.com A (Address) 52.85.40.151
  tracking.november-project.com A (Address) 52.85.40.200
  tracking.november-project.com A (Address) 52.85.40.138
  tracking.november-project.com A (Address) 52.85.40.222
  tracking.november-project.com NS (Nameserver) ns-1465.awsdns-55.org
  tracking.november-project.com NS (Nameserver) ns-2026.awsdns-61.co.uk
  tracking.november-project.com NS (Nameserver) ns-458.awsdns-57.com
  tracking.november-project.com NS (Nameserver) ns-688.awsdns-22.net

Hostgator:

Dig [email protected] (192.185.5.19) ...
Authoritative Answer
 Query for tracking.november-project.com type=255 class=1
  tracking.november-project.com A (Address) 192.185.38.67
  november-project.com NS (Nameserver) ns8066.hostgator.com
  november-project.com NS (Nameserver) ns8065.hostgator.com
  ns8065.hostgator.com A (Address) 192.185.5.19
  ns8066.hostgator.com A (Address) 192.185.5.190

理想情况下,hostgator 名称服务器需要完全删除此域的任何痕迹,以确保他们不认为自己具有权威性,并将请求传递给名称服务器。看起来这并没有发生。

编辑:

我仔细查看了亚马逊文档,它们非常模糊,但实际上我认为您需要将 AWS NS 记录添加到子域,而不是根域。

我认为,当您对根域进行 whois 查询时,您不应该看到 Amazon 名称服务器。记录应该是

november-project.com             NS    *hostgator ns*
tracking.november-project.com    NS    *amazon ns*

很难说这是否是原因。当我在自己的机器上执行跟踪暂存的 nslookup 时,它会失败,因为主 NS 被列为 hostgator - 子域上的 NS 记录应被视为更具体且将优先,因此希望可以阻止此行为。

QUESTIONS:
        tracking-staging.november-project.com, type = AAAA, class = IN
    AUTHORITY RECORDS:
    ->  november-project.com
        ttl = 219 (3 mins 39 secs)
        primary name server = ns8065.hostgator.com
        responsible mail addr = dnsadmin.gator4033.hostgator.com
        serial  = 2016033001
        refresh = 86400 (1 day)
        retry   = 7200 (2 hours)
        expire  = 3600000 (41 days 16 hours)
        default TTL = 86400 (1 day)

相关内容