Skip to content
← 返回全部工具

Pi-hole

免费

一台设备,让全家所有屏幕都不见广告

开源 无广告 无追踪 离线可用 无需注册 可自建

运行在局域网里的 DNS 层广告拦截器。所有设备把 DNS 指向它之后,广告和追踪域名在解析阶段就被拦掉——手机 App 里的广告、智能电视的广告、游戏机的追踪请求都一起拦,不需要在每台设备上装扩展。

为什么推荐它

浏览器扩展只能管浏览器。手机 App 里的横幅广告、智能电视首页的推荐位、 各种设备偷偷发回厂商的遥测,扩展一个都拦不到。Pi-hole 换了个位置解决问题—— 它站在 DNS 这一层,设备要连广告服务器就得先问域名,它直接回答"查无此地址"。

效果是全屋级的:一次部署,家里连着 Wi-Fi 的每一样东西都受益, 包括那些根本不允许你装软件的设备。60,356 颗星,EUPL 开源。

它还附带一个信息量很大的管理面板:哪台设备发了多少请求、 请求最多的域名是什么、拦截率多少。第一次看这个面板的人通常会被吓一跳—— 你会发现家里某台设备每天默默发出成千上万次请求。

部署门槛比想象中低。经典做法是一块树莓派(项目名字就是这么来的), 但任何一台常年开机的 Linux 机器、NAS 上的 Docker 容器都可以, 官方一条安装脚本搞定。装好之后在路由器 DHCP 设置里把 DNS 改成它的地址,全家自动生效。

要知道的三个局限:

  • 它拦域名,不拦内容。同域名下的广告(比如 YouTube 视频里插播的广告)它拦不掉, 那种还得靠浏览器里的 uBlock Origin。两者是互补的,很多人两个都用。
  • 偶尔会误伤。某些 App 的图片或链接跳转可能被拦,表现是"打不开"。 面板里能查最近被拦的域名并一键加白名单,遇到问题先去那看。
  • 它成了单点。这台机器挂了,全家都上不了网(因为 DNS 没人应答)。 建议在路由器里配一个备用 DNS,或者跑两个实例。