0

我的pdns_recursor设置包括这个

forward-zones=net=127.0.0.1:5353;8.8.8.8

在哪里127.0.0.1:5353监听我自己的 DNS 服务器,该服务器充当.net区域下所有 DNS 请求的过滤器。当我的 DNS 服务器认为一个请求应该被阻止时,它会将阻止页面的 IP 返回给 pdns_recursor。如果不是,则NXDOMAIN返回pdns_recursor.

我的理解是,如果它从我自己的 DNS 服务器接收pdns_recursor到,它将继续转发 DNS 请求。这样,未阻止的请求将通过 Google DNS 到达其目的地。但是,客户端总是会看到阻止页面或来自!8.8.8.8NXDOMAINNXDOMAINpdns_recursor

我在这里想念什么?

非常感谢!

4

1 回答 1

1

NXDOMAIN是对 DNS 查询的完美回答,当 PowerDNS 已经收到回答时,它没有理由尝试另一台服务器。事实上,RFC1034 说递归器应该不断询问服务器,直到它收到“响应”。假设 PowerDNS 遵循 RFC,来自您的过滤器的任何响应都将传递给用户。因此,如果您希望将查询传递到列表中的下一个服务器,则您的过滤器根本不能回答。在这种情况下,您的所有用户将不得不等待所有非阻塞查询超时,然后才能将它们传递给 Google,这可能会让他们非常恼火。

于 2016-12-29T07:40:39.400 回答