自托管的全网络 DNS 服务器,无需在设备上安装软件即可拦截广告和追踪器。
- Star
- 7,053
- Fork
- 316
- 未关闭 Issue
- 63
- 最近提交
- 前天
这是什么?
Blocky 是一个用 Go 编写的局域网 DNS 代理和广告拦截工具。它会根据外部黑名单和白名单过滤 DNS 查询,并可以为不同客户端分组(如儿童设备、智能家居设备)分别配置名单和上游解析器。拦截既可以针对请求域名,也可以针对响应中的 CNAME 记录或 IP 地址。
除了过滤,Blocky 也可以作为通用 DNS 解析器使用。它支持为指定域名自定义解析结果、条件转发到外部 DNS 服务器,并通过缓存和预取加快重复查询。它支持 UDP、TCP、DoH、DoT、DoQ 和 DoH3 等协议,并可以对上游响应进行 DNSSEC 验证。
配置采用 YAML 文件,服务本身无状态,默认不需要数据库。查询日志可以以 CSV 格式保存,也可以写入 MySQL、MariaDB、PostgreSQL 或 Timescale。项目提供 Prometheus 指标、REST API 和命令行工具,以单一二进制文件和支持多架构的 Docker 镜像发布,可运行于 x86-64、ARM 和 MIPS 设备。
核心功能
- 01基于外部黑名单和白名单拦截广告与恶意域名,支持正则规则
- 02可为每个客户端分组配置独立名单和上游解析器
- 03支持自定义域名解析和条件转发
- 04缓存 DNS 应答并预取常用查询
- 05支持 UDP、TCP、DoH、DoT、DoQ 和 DoH3
- 06提供 Prometheus 指标、Grafana 仪表板,以及 CSV 或数据库形式的查询日志
适用场景
- 无需在每台设备上安装软件,即可在家庭网络中拦截广告和追踪器
- 通过独立客户端分组,为儿童设备设置更严格的过滤规则
- 在树莓派或 OpenWrt 路由器上运行私有 DNS 解析服务
- 在家庭实验室中用 Prometheus 和 Grafana 监控 DNS 查询情况
快速上手
- 1
阅读完整文档中的安装章节
- 2
按文档安装指南运行 Docker 镜像
使用前须知
- 需要在你的网络中自行搭建 DNS 服务,配置有一定工作量。
- 项目主要由一位维护者利用业余时间维护。
收录于专题
标签
常见问题
- blocky 是什么?
- 一款快速轻量的 DNS 代理,可为整个局域网拦截广告和追踪域名,并支持按客户端分组设置规则。 Blocky 是一个用 Go 编写的局域网 DNS 代理和广告拦截工具。它会根据外部黑名单和白名单过滤 DNS 查询,并可以为不同客户端分组(如儿童设备、智能家居设备)分别配置名单和上游解析器。拦截既可以针对请求域名,也可以针对响应中的 CNAME 记录或 IP 地址。
- blocky 可以免费使用吗?用的什么许可证?
- blocky 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- blocky 还在维护吗?
- 活跃维护中。blocky 最近一次提交是在 2026年10月23日。
- blocky 适合用来做什么?
- 无需在每台设备上安装软件,即可在家庭网络中拦截广告和追踪器 通过独立客户端分组,为儿童设备设置更严格的过滤规则 在树莓派或 OpenWrt 路由器上运行私有 DNS 解析服务 在家庭实验室中用 Prometheus 和 Grafana 监控 DNS 查询情况
- blocky 怎么安装和运行?
- 阅读完整文档中的安装章节 按文档安装指南运行 Docker 镜像
- 在哪里获取 blocky?
- 源代码和安装说明在 GitHub 上:https://github.com/0xERR0R/blocky
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一款 DNS 黑洞工具,无需在设备上安装客户端,即可拦截全网络中的广告。
开源的权威与递归 DNS 服务器,自带 Web 控制台,支持网络级广告与恶意域名拦截及加密 DNS。
合并多个公开黑名单生成的统一 hosts 文件,可拦截广告、追踪、恶意软件,并按需启用多个分类。
一套 DNS 拦截列表,在全网范围屏蔽广告、追踪器、遥测、钓鱼、恶意软件和诈骗域名,兼容常见 DNS 服务与广告拦截工具。
用 Go 编写的命令行 DNS 客户端,类似 dig,输出简洁,支持 DoH、DoT、DoQ 和 DNSCrypt。