PDNS 如何才能在本地权威记录没有的情况下,继续递归查询互联网的记录然后返回给客户端?

2020-06-30 23:17:37 +08:00
 mrco

这个需求有点妖,内部维护了 abc.com 这个域名,之前是用 dnsmasq 做的内部 DNS 解析,通过一个类似 hosts 文件来储存 DNS 条目,解析结果是:

1. 如果条目在此文件中,直接返回文件内的记录;
2. 如果条目不在文件中,去配置的互联网递归 DNS ( 223.5.5.5 等)去查询并返回互联网上的结果给客户端;
3. 相当于是用本地的记录值去覆盖了互联网上的解析;

现在将 dnsmasq 方案迁移至pdns + pdns-recursor (最新版),pdns-recursor 的 53 端口对外提供服务,如果是 abc.com 的请求则 forward 到本机的 pdns 的 5300 端口,其余则全部丢给公网的 DNS 去查询,主要配置为:

forward-zones-recurse=.=223.5.5.5;223.6.6.6
# 尝试过 forward-zones-recurse=abc.com=127.0.0.1:5300 表示请求带 rd flag 为 1
forward-zones=abc.com=127.0.0.1:5300

现在的情况是,只有 pdns 中存在的条目才正确返回,没有的就 NXDOMAIN 了,我知道这是合理的,但是由于各种原因,还是需要 pdns 的方案能实现“本地权威域里没有,再去互联网找下记录返回给客户端。。。”这个功能,求教大家了。感谢!!!

1022 次点击
所在节点    问与答
4 条回复
defunct9
2020-07-01 07:01:46 +08:00
coredns
mrco
2020-07-01 08:53:10 +08:00
@defunct9 不会用 coredns 找个方案,因为我们需要 WEBGUI 的图形界面,还需要后端 MySQL 的支持(为其他应用提供数据等)
defunct9
2020-07-01 09:13:15 +08:00
coredns 跟 dnsmasq 很像的,就先找文件,文件找不到往上级 dns 问
mrco
2020-07-01 14:52:14 +08:00
顶上去。。。。。。。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/686080

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX