DNS NS 重定向

DNS NS 重定向

我遇到了一些以前从未见过的有趣的东西,希望有人能帮忙解释我所看到的东西。

场景如下:我有一个testdomain.com由 DNS 提供商托管的域区域文件,名为SummitNetworks。在我这边,我有一个名为 的域由 GoDaddy 托管mycustomdomain.com。在其中,我有一条指向 的名称服务器的mycustomdomain.com胶水记录。ns2.mycustomdomain.comsummitnetwork

现在我说summitnetworks我希望他们为我托管的区域testdomain.com指向 NS 服务器ns2.mycustomdomain.com。这样做的原因是,将来如果我选择将此区域迁移到新的 DNS 提供商和一大堆其他域,我只需将 NS 粘合记录更新到mycustomdomain新的 DNS 提供商名称服务器 IP 上。

现在的问题是,当我针对 NS 服务器进行挖掘和区域查找时,testdomain.comNS 服务器指向summitnetworksNS 服务器,但引用路径指向回ns2.mycustomdomain.com。这怎么可能?我如何使用挖掘查看解析的完整路径?什么是引用路径?当我针对域进行挖掘时,没有对它的引用。我能够验证这一点的唯一方法是因为我使用了dnsstuff toolbox

引荐路径

答案1

如果没有实际信息,你的问题很难回答,但你使用虚荣服务器的理由对我来说毫无意义,当你改变名称服务器时,你实际上想要更改你的域名服务器,而不是您的粘合记录,您还希望您的 SOA 是一个真正的名称服务器,而不是粘合记录。

我认为发生的情况如下:example.com 的注册商 NS 记录与区域的 NS 记录不同。

挖掘示例.com

根服务器将您发送到 com 服务器,com 服务器将您发送到您的注册商(godaddy)中列出的名称服务器,但这些服务器没有您的虚荣名称服务器,它们有真实名称服务器,这些服务器(尽管 IP 相同)会将您引导至真实名称服务器的 A 记录。

再次强调, ns1.example.comns2.example.com是您的名称服务器,带有 register.com。

但区域说了类似的话

@ IN NS ns3.example.com
@ IN NS ns4.example.com

即使 ns1.example.com 和 ns3.example.com 是相同的 IP 记录,dns 也不知道这一点,它会认为 ns3 不是 ns1,因此它会参考 ns3 来获取权威答案。

我们可以用真实的信息来证实这一点。

如果您想使用虚荣名称服务器,我建议您将您的 DNS 保留在 Godady。

答案2

感谢 Jacob 愿意花时间帮助我解决这个问题;如果可以的话我会给你 +100 分 :)。

我能够使用一些工具和 DNS 逻辑来追踪我的答案。所以我遇到的第一个问题是,每当我dig www.example.com +trace在 Mac 上运行一个时,什么都不会出现。起初我以为这是一个域问题,但我尝试了其他域,得到了相同的空白结果。所以我说让我试试另一台电脑,瞧,我能够通过完整的跟踪来解析 DNS,从而揭示答案。

所以本质上发生的事情是这样的... 当testdomain.com在 DNS 注册商处注册时,注册域名的人会ns1 & ns2.mycustomdomain.com按照指示指向名称服务器。这个过程发生在几百个域名上。拥有域名的人mycustomdomain.com创建了虚荣服务器,其中的粘合记录指向 DNS 托管提供商。

挖掘痕迹揭示了这一点

  1. 第一步 - 查询 DNS 根服务器以查找要与哪个顶级域名进行通信
  2. 第二步 - 查询顶级域名 DNS 服务器,找出谁是testdomain.com
  3. 第一个结果 - 找到可以响应查询的名称服务器ns1 & ns2.mycustomdomain.com
  4. 第二个结果 - 因为这些粘合记录实际上指向 NS 服务器 @summitnetworks.com我们得到了名称服务器的额外响应ns1 & ns2.summitnetworks.com- 旁注,如果我们没有这些粘合记录,挖掘就会在第 3 点结束。

现在,这些域和所有未来域的迁移都将转到 AWS Route 53。我收到的区域文件summitnetworks.com当然包括它们的 SOA 和 NS 服务器。当您将域导入 Route53 时,它们将删除 SOA 和名称服务器,因为它们现在拥有这部分。由于我正在大规模迁移到 AWS,我将创建一个委派集这样,我在 AWS 中创建的每个域都具有相同的名称服务器。这样,我们所要做的就是更新虚荣服务器的胶水记录以指向 AWS 服务器,并添加 2 个胶水记录以增加可靠性。

希望这能帮助遇到此问题的其他人。

示例dig www.google.com +trace以便您可以遵循解决路径:

;; global options: +cmd
.           518400  IN  NS  D.ROOT-SERVERS.NET.
.           518400  IN  NS  E.ROOT-SERVERS.NET.
.           518400  IN  NS  F.ROOT-SERVERS.NET.
.           518400  IN  NS  G.ROOT-SERVERS.NET.
.           518400  IN  NS  H.ROOT-SERVERS.NET.
.           518400  IN  NS  I.ROOT-SERVERS.NET.
.           518400  IN  NS  J.ROOT-SERVERS.NET.
.           518400  IN  NS  K.ROOT-SERVERS.NET.
.           518400  IN  NS  L.ROOT-SERVERS.NET.
.           518400  IN  NS  M.ROOT-SERVERS.NET.
.           518400  IN  NS  A.ROOT-SERVERS.NET.
.           518400  IN  NS  B.ROOT-SERVERS.NET.
.           518400  IN  NS  C.ROOT-SERVERS.NET.
;; Received 496 bytes from 172.16.0.2#53(172.16.0.2) in 8 ms

com.            172800  IN  NS  m.gtld-servers.net.
com.            172800  IN  NS  l.gtld-servers.net.
com.            172800  IN  NS  k.gtld-servers.net.
com.            172800  IN  NS  j.gtld-servers.net.
com.            172800  IN  NS  i.gtld-servers.net.
com.            172800  IN  NS  h.gtld-servers.net.
com.            172800  IN  NS  g.gtld-servers.net.
com.            172800  IN  NS  f.gtld-servers.net.
com.            172800  IN  NS  e.gtld-servers.net.
com.            172800  IN  NS  d.gtld-servers.net.
com.            172800  IN  NS  c.gtld-servers.net.
com.            172800  IN  NS  b.gtld-servers.net.
com.            172800  IN  NS  a.gtld-servers.net.
;; Received 492 bytes from 198.41.0.4#53(198.41.0.4) in 100 ms

google.com.     172800  IN  NS  ns2.google.com.
google.com.     172800  IN  NS  ns1.google.com.
google.com.     172800  IN  NS  ns3.google.com.
google.com.     172800  IN  NS  ns4.google.com.
;; Received 168 bytes from 192.26.92.30#53(192.26.92.30) in 99 ms

www.google.com.     300 IN  A   216.58.192.4
;; Received 48 bytes from 216.239.38.10#53(216.239.38.10) in 13 ms

对于需要更新 DNS 的人来说,这里有一些不错的 DNS 资源。今年我肯定更新了我的 DNS :)

相关内容