我们的域名 grahamhancock.com 被世界各地的少数人错误解析,但对于大多数人来说,它的解析是正确的。
当我浏览免费开放 DNS 提供商列表时,大约 90% 的提供商能够正确解析并提供与我们的区域文件一致的信息。然而,10% 的提供商却不能,并声称 IP 地址与某些亚马逊 EC2我们以前从未拥有或使用过此类实例。以下是一些提供错误信息的 DNS 服务器示例:
dig www.grahamhancock.com @173.84.127.88
dig www.grahamhancock.com @209.222.18.222
这些服务器怎么会有错误的信息?我们又该如何重新掌控局面?
这可能是恶意行为,还是配置错误?我们是一个每月点击量达 100 万的网站,搜索排名很高,因此我们可能成为恶意攻击的目标。错误服务器向某些人返回的错误 IP 地址指向 AWS EC2 实例上的某个快速致富网站。
我们应该做什么?
答案1
Drifter 是正确的,您的名称服务器配置存在问题。以下是输出的末尾部分dig +trace +additional www.grahamhancock.com
:
grahamhancock.com. 172800 IN NS ns1.grahamhancock.com.
grahamhancock.com. 172800 IN NS ns2.grahamhancock.com.
grahamhancock.com. 172800 IN NS server.grahamhancock.com.
ns1.grahamhancock.com. 172800 IN A 199.168.117.67
ns2.grahamhancock.com. 172800 IN A 199.168.117.67
server.grahamhancock.com. 172800 IN A 199.168.117.67
;; Received 144 bytes from 192.35.51.30#53(f.gtld-servers.net) in 92 ms
www.grahamhancock.com. 14400 IN CNAME grahamhancock.com.
grahamhancock.com. 14400 IN A 199.168.117.67
grahamhancock.com. 86400 IN NS ns2.grahamhancock.com.com.
grahamhancock.com. 86400 IN NS ns1.grahamhancock.com.com.
;; Received 123 bytes from 199.168.117.67#53(ns2.grahamhancock.com) in 17 ms
您的胶水记录指向 IP 地址 199.168.117.67,它返回正确的响应。但是,您的区域正在定义以 结尾的名称服务器记录com.com
。如果我们+trace
改为使用其中一个名称服务器...
com.com. 172800 IN NS ns-180.awsdns-22.com.
com.com. 172800 IN NS ns-895.awsdns-47.net.
com.com. 172800 IN NS ns-1084.awsdns-07.org.
com.com. 172800 IN NS ns-2015.awsdns-59.co.uk.
;; Received 212 bytes from 192.26.92.30#53(c.gtld-servers.net) in 22 ms
ns1.grahamhancock.com.com. 30 IN A 54.201.82.69
com.com. 172800 IN NS ns-1084.awsdns-07.org.
com.com. 172800 IN NS ns-180.awsdns-22.com.
com.com. 172800 IN NS ns-2015.awsdns-59.co.uk.
com.com. 172800 IN NS ns-895.awsdns-47.net.
;; Received 196 bytes from 205.251.195.127#53(ns-895.awsdns-47.net) in 16 ms
...我们最终到达某人的 AWS 托管名称服务器。
你的问题是胶水记录不匹配远程名称服务器最初通过胶水记录了解您的域名,但一旦这些远程服务器执行刷新.com
他们最终会查询您在末尾添加了一个额外内容的虚假名称服务器。
这不是你唯一的问题。您在 Glue 记录中三次列出了相同的 IP 地址,这非常不稳定。您应该始终拥有多个名称服务器,它们永远不应共享子网或上游网络对等体,并且它们永远不应位于同一物理位置。就目前情况而言,DNS 服务器和您的单个服务器之间的任何短暂路由问题都会导致您的域暂时无法访问。
更新:
这篇问答被刊登在头版,收到了很多评论。不幸的是,其中有些人只是小的太急于回复这个答案,而没有检查他们的观点是否已经在扩展的评论中得到解决。
大多数人似乎忽略的细节是我在这里引用的评论:
- [...] 地理冗余 DNS 服务器可防止短暂的路由中断导致名称服务器暂时出现负缓存的情况。无论负缓存期有多短,它几乎肯定会超过连接中断的时间。[...] 缺乏 DNS 地理冗余不会造成零星且难以排除的可用性问题的情况数量恰好为零。
如果您认为我对名称服务器负面缓存的理解是错误的,这可以自由讨论,但除此之外,您需要提出一些观点,而不是“这是一个小网站,谁会在乎网站和 DNS 服务器同时宕机”。如果您这么说,说明您对这个主题的理解远没有您想象的那么深刻。
第二次更新:
我继续写经典问答以后每次出现单个 DNS 服务器问题时,我们都可以链接到该服务器。希望这能平息此事。
答案2
使用以下工具可以得到一些线索
https://www.whatsmydns.net/#NS/grahamhancock.com
报告称,该域名上的 NS 记录ns1.grahamhancock.com.com
指出了额外的 .com
http://mxtoolbox.com/SuperTool.aspx?action=dns%3agrahamhancock.com&run=toolpage
还报告说同一个名称服务器正在报告权威性。
如果你看一下这里,http://www.dnsstuff.com/tools#dnsReport|type=domain&&value=grahamhancock.com
它还会报告你的名称服务器是开放的。
因此,名称服务器的设置似乎有些不正确。如果通过控制面板等显示的名称服务器设置正确,则需要联系提供商,以便他们在实际服务器上进行检查。
这些链接还包含有关最佳实践及其处理方法的完整报告