我在子域名的 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)