为什么查询时NS记录一直随机变化?

为什么查询时NS记录一直随机变化?
dig NS soundshare.co.uk


;; ANSWER SECTION:
soundshare.co.uk.   168415  IN  NS  ns-1179.awsdns-19.org.
soundshare.co.uk.   168415  IN  NS  ns-1909.awsdns-46.co.uk.
soundshare.co.uk.   168415  IN  NS  ns-311.awsdns-38.com.
soundshare.co.uk.   168415  IN  NS  ns-972.awsdns-57.net.

几秒钟后:

soundshare.co.uk.   167643  IN  NS  ns-1289.awsdns-33.org.
soundshare.co.uk.   167643  IN  NS  ns-1581.awsdns-05.co.uk.
soundshare.co.uk.   167643  IN  NS  ns-41.awsdns-05.com.
soundshare.co.uk.   167643  IN  NS  ns-806.awsdns-36.net.

为什么会发生这种情况?

这些都是我之前设置的值。我应该与域名提供商联系吗?

答案1

这是负载分配的一种形式。通过提供不同的且可能是随机的名称服务器,那么对这些服务器的请求可以相当平衡。

答案2

迄今为止的所有其他答案都忽略了这一非常重要的点:您的挖掘结果毫无价值......因为我们看不到名称服务器回复您的内容。根据 TTL,您似乎查询了递归名称服务器,但是哪个?

您观察到的内容与选播无关,也与 RRset 顺序更改无关。您似乎在每个查询中观察到不同的 NS,这很奇怪,但同样,哪个名称服务器回复您?

以下是您可能发生的情况:在您的设置中,您不会每次都访问相同的递归名称服务器。所以你观察他们的缓存中有什么。如果您查看 whois,您会发现昨天已对该域应用了更新。也许是 DNS 更改。因此,您查询的名称服务器之一包含更改之前的数据,而另一个名称服务器则包含更改之后的数据。我想如果您现在进行查询,您将始终得到相同的答复,或者在 46 小时后,因为您报告的 TTL 很大。如果这是您的域,您可能昨天进行了多次 DNS 更改,因此现在缓存不再具有相同的信息。这是正常现象,您只需等待即可。

DNS 的变化确实清晰可见: https://securitytrails.com/domain/soundshare.co.uk/history/ns截屏

1.1.1.1尝试通过咨询已知的公共服务器( 、8.8.8.89.9.9.9首先)以及 的权威名称服务器来进行观察.co.uk。如果你这样做,你会发现你总是得到完全相同的结果名称服务器的数量(这意味着顺序可以更改,这是根据 DNS 标准,但设置的内容不会更改)。

正如预期的那样,权威域名服务器都回复相同的内容:

$ (for ns in $(dig NS co.uk +short); do dig soundshare.co.uk @$ns +noall +authority | grep NS; done) | sort | uniq -c
   8 soundshare.co.uk.  172800 IN NS ns1033.ui-dns.org.
   8 soundshare.co.uk.  172800 IN NS ns1039.ui-dns.biz.
   8 soundshare.co.uk.  172800 IN NS ns1079.ui-dns.de.
   8 soundshare.co.uk.  172800 IN NS ns1089.ui-dns.com.

只是1.1.1.1无法解决(我还不知道为什么),其他人也回复了同样的事情:

$ (for ns in 1.1.1.1 8.8.8.8 9.9.9.9; do dig soundshare.co.uk @$ns NS | grep 'IN NS '; done) | awk '{print $5}' | sort | uniq -c
   2 ns1033.ui-dns.org.
   2 ns1039.ui-dns.biz.
   2 ns1079.ui-dns.de.
   2 ns1089.ui-dns.com.

相关内容