如何验证转发请求时哪个 DNS 服务器真正应答了请求?

如何验证转发请求时哪个 DNS 服务器真正应答了请求?

ISC BIND 有一个名为的工具dig,它允许我们向根据参数设置的 DNS 服务器发送 DNS 请求,并查看该服务器的答复。

我想知道该 DNS 服务器是否根据其缓存、其区域做出响应,或者是否转发了请求。如果转发了,那么转发到了哪里。

有什么方法可以获得这些信息吗?

答案1

不,那里没有。

具体来说,因为您查询的远程名称服务器可能是权威的(那么您的请求要么被拒绝,要么使用名称服务器本地的内容提供服务,因为它是权威的)或递归的(那么您的请求可能会立即由缓存的内容满足,或者递归名称服务器需要执行一个或多个迭代查询才能找出您要求的结果)。并且在得到答复之前,您无法知道给定的名称服务器对于您的特定请求是权威的还是递归的。

但为什么不需要有这些信息呢?

唯一的补救措施是运行您自己的递归名称服务器并让它对权威名称服务器进行迭代查询。然后您可以根据自己的喜好控制其缓存。您已经dnsmasq在标签中提到了,因此您知道要遵循的方向。

相关内容