自建 DNS 过滤该不该用:先看它解决的问题是不是你的问题

自建服务 · 3 分钟阅读· 229 次阅读

单实例 10 万条规则约占 100-200MB 内存,1GB 的树莓派也能跑

它擅长的是全家广告过滤;如果你只是内网域名解析,用现成的东西更省事。

先说结论

DNS 过滤是性价比最高的自建服务,但必须接受「它挂了全家断网」

  • 适合:全家广告过滤
  • 不适合:儿童上网时段控制
  • 学习成本:53 端口被 systemd-resolved 占用,是第一次部署最常见的失败原因
  • 最大收益:上游用明文 53 时,查询内容对运营商可见,DoH 才有意义
  • 最大风险:直接把 systemd-resolved 停了,本机 DNS 也跟着坏

它到底解决什么

单实例 10 万条规则约占 100-200MB 内存,1GB 的树莓派也能跑。

换句话说,它把「全家广告过滤」这件事从手工变成可重复的流程。这是它真正的价值,而不是功能列表的长度。

什么时候不该用

下面三种情况,用了反而更累:

直接把 systemd-resolved 停了,本机 DNS 也跟着坏

只配一个 DNS 地址,过滤服务重启时全家上不了网

规则表加到 50 万条,查询延迟从 5ms 涨到 40ms

和替代方案比

缓存 TTL 最小值可设 60 秒,设太大会让换域名后等很久。

方案 上手成本 适用规模 代价
自建 DNS 过滤 中等 中大型 需要维护
直接用运营商 DNS 低 小型 定制能力弱
路由器自带过滤 低 一次性任务 不可维护

自建 DNS 过滤该不该用

这台工具的关键细节

几个决定长期体验的点:

  • 53 端口被 systemd-resolved 占用,是第一次部署最常见的失败原因
  • 上游用明文 53 时,查询内容对运营商可见,DoH 才有意义
  • 缓存 TTL 最小值可设 60 秒,设太大会让换域名后等很久
  • 规则表更新后要重新加载才生效,只改文件不会自动应用

我的建议

DNS 过滤是性价比最高的自建服务,但必须接受「它挂了全家断网」。

先用两周,跑一个真实的小任务;两周后你还想用它,再谈长期。

还有几处容易忽略的

都是小地方,但出问题时往往就卡在这里。

  • 单实例 10 万条规则约占 100-200MB 内存,1GB 的树莓派也能跑
  • 所有设备都指向它时,它一挂全家断网,必须准备第二个 DNS

工具是解法,不是身份。

评论 (3)

老
老吴

备份没验证过等于没有,这条我认。

阿
阿哲

排查顺序那段直接抄进值班手册了。

南
南风

「先看日志再猜」这句话值一篇文。

发表评论

验证码

提交后需站长审核,通过后才会显示。