AdGuard Home 0.107.79 介绍与选型指南
AdGuard Home v0.107.79 介绍与选型指南:定位架构、功能特性、能力边界,并与 Pi-hole/Technitium/CoreDNS/Blocky/dnsmasq 横向选型对比,数据于 2026-10-18 实查官方渠道
AdGuard Home 0.107.79 介绍与选型指南
目标:本文面向准备搭建「全网广告与跟踪域名拦截」服务的读者,介绍 AdGuard Home v0.107.79 的定位、架构、功能、适用边界,并与 Pi-hole、Technitium DNS Server、CoreDNS、Blocky、dnsmasq 做横向选型对比。本文为认知篇,所有版本号、活跃度与对比数据均于 2026-10-18 从官方渠道实查获取,不做本地安装实测;安装与部署实测见本专栏配套的部署篇与运维篇。
一、环境信息
本章说明本文的信息基准,保证文中每个数据都可追溯。
- 信息基准(查询日期):2026-10-18
- 本文介绍的版本:AdGuard Home v0.107.79(0.107.x 系列最新稳定版,官方 GitHub Releases 于 2026-08-18 发布,
prerelease: false) - 版本依据来源:GitHub Releases(
https://github.com/AdguardTeam/AdGuardHome/releases,tagv0.107.79) - 官方来源清单(本文所有论断的数据出处):
- 官方仓库:
https://github.com/AdguardTeam/AdGuardHome(README、LICENSE、Releases、OpenAPI 规范) - 官方产品页与知识库:
https://adguard-dns.io/adguard-home/、https://adguard-dns.io/kb/adguard-home/getting-started/ - 官方 REST API 规范:
https://github.com/AdguardTeam/AdGuardHome/tree/master/openapi(OpenAPI 3.0) - 官方安装脚本:
https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh - 活跃度统计:GitHub REST API(stars/forks/issues/pushed_at 字段)与官方发布仓库 Registry API(
pull_count字段),查询日期均为 2026-10-18
- 官方仓库:
💡 说明:AdGuard Home 采用「稳定版 + 测试版」双通道发布。稳定版为 0.107.x 系列;测试版(beta)为 0.108.0-b.x 系列,且 2026-09-30 官方发布了 v1.0.0-b.1(1.0 版进入 beta 阶段)。生产环境建议跟随 0.107.x 稳定通道,不要把 beta 用于生产。
二、软件概述
本章先给出 AdGuard Home 的身份定位与版本背景,便于后续章节展开。
2.1 软件身份
AdGuard Home 是 AdGuard 官方开源的网络级广告与跟踪域名拦截 DNS 服务器:它以 DNS 服务器的身份部署在局域网中,把广告、跟踪、恶意软件域名重定向到「黑洞」地址,从而让接入该 DNS 的所有设备(手机、电脑、电视、智能音箱等无需安装任何客户端)获得去广告能力。它基于 AdGuard 公共 DNS 服务所使用的同一套核心代码,两者共享大量实现(来源:官方 README,查询日期 2026-10-18)。
关键身份信息(实查于 2026-10-18):
| 项目 | 值 | 来源 |
|---|---|---|
| 当前最新稳定版 | v0.107.79(2026-08-18 发布) | GitHub Releases |
| 开源许可 | GPL-3.0 | GitHub 仓库 LICENSE 字段 |
| 开发语言 | Go(核心服务端)+ TypeScript(Web 管理前端) | README「How to build from source」要求 Go v1.25+、Node.js v24.10.0+ |
| 维护方 | AdGuard(商业广告过滤厂商)官方团队 | 官方仓库组织 |
| 仓库活跃度 | stars 37,507;forks 2,551;最近一次提交 2026-10-16 | GitHub REST API |
| 官方打包分发 | 官方发布仓库累计拉取 197,112,544 次(约 1.97 亿) | 官方发布仓库 Registry API |
| 平台支持 | Linux(amd64/arm/arm64/mips/mipsle/ppc64le/riscv64 等架构)、macOS、Windows、FreeBSD、OpenBSD | GitHub Releases 资产清单 |
从版本节奏看,0.107.x 稳定通道保持约每月一次的发布频率:v0.107.75(2026-05-19)、v0.107.76(2026-05-21)、v0.107.77(2026-06-02)、v0.107.78(2026-07-13)、v0.107.79(2026-08-18),且最近一次代码提交距今仅 2 天,属于高活跃维护状态(来源:GitHub Releases 与 Commits API,查询日期 2026-10-18)。
v0.107.79 的发布说明要点(来源:Release Notes):安全上升级了 Go 版本(修复 Go 1.26.6 已知漏洞),并修复了使用 DNS-over-QUIC 时的一处资源耗尽攻击面(GHSA-w6v6-f44j-3rj2);功能上支持在 Bootstrap DNS 配置中写注释、安装 API 新增 language 属性;同时 strict_sni_check 被标记为弃用。
2.2 它解决什么问题
传统去广告方案要在每台设备上装客户端,覆盖不了电视、IoT 设备和访客设备。AdGuard Home 把拦截点上移到「DNS 解析」这一层:只要把路由器或终端的 DNS 指向它,全部设备的广告/跟踪域名解析请求都会被拦截,同时保留完整的查询日志与统计面板,让管理员知道「谁在什么时候查了什么、拦了多少」。
💡 技术拓展:基于 DNS 的拦截本质是 DNS 拦截(DNS sinkholing)——把被拦截域名解析到一个「黑洞」地址。常见返回策略对比:
策略 原理/特点 适用场景 默认(0.0.0.0) 域名解析到 0.0.0.0/::,连接直接失败 通用推荐,干扰最小 NXDOMAIN 直接返回"域名不存在" 希望客户端快速失败 自定义 IP 把拦截域名指到指定 IP 配合自建服务做替换页 REFUSED 返回 REFUSED 响应码 极少数老客户端兼容 AdGuard Home 默认采用 0.0.0.0 拦截并配 10 秒 TTL(配置项
blocking_mode: default、blocked_response_ttl: 10,本文第五章实测环境生成的主配置即如此),四种策略均可在界面/配置中切换。
三、核心架构
理解 AdGuard Home 的架构有助于判断它能不能满足你的网络环境。本章按「数据流 → 组件」展开(依据:官方仓库架构文档与 OpenAPI 规范,查询日期 2026-10-18)。
3.1 请求数据流
一次典型的 DNS 查询在 AdGuard Home 内部经过以下流水线:
客户端设备
│ UDP/TCP 53(明文)
│ 或 DoH/DoT/DoQ(加密)
▼
入站监听层(支持限速 ratelimit、客户端访问控制)
▼
过滤引擎(规则拦截 → 黑名单过滤器 → 家长控制/安全搜索 → 自定义规则 → DNS 重写)
├─ 命中拦截 → 返回黑洞地址(0.0.0.0 等)
▼
缓存层(默认 4MB 内存缓存,支持乐观缓存)
├─ 命中缓存 → 直接返回
▼
上游转发层(明文/DoH/DoT/DoQ/DNSCrypt 上游,负载均衡/并行/最快地址三种模式)
▼
公共 DNS 或内网自建 DNS
3.2 核心组件
| 组件 | 职责 | 对应配置/接口 |
|---|---|---|
| Web 管理 API | 提供管理界面与 REST API(OpenAPI 3.0 规范约束) | http.address(默认 0.0.0.0:3000) |
| DNS 代理核心 | 监听 53 等端口,完成过滤、缓存、上游转发 | dns.port、dns.bind_hosts |
| 过滤引擎 | 规则语法拦截、第三方黑名单列表、安全浏览、家长控制 | filters、user_rules、filtering |
| 查询日志与统计 | 逐条记录查询、聚合统计被拦域名/客户端 | querylog、statistics |
| 内置 DHCP 服务 | 可替代路由器 DHCP,支持静态租约 | dhcp 段 |
| 加密服务端 | 可作为 DoH/DoT/DoQ 服务端对外提供加密 DNS | tls 段 |
架构上有两点对选型影响最大:其一,过滤在缓存与上游之前——规则新增后新查询立即生效(本文实测环境中,www.zhihu.com 的正向应答已在缓存中时新增 ||zhihu.com^ 规则,下一次查询即返回 0.0.0.0,说明规则评估先于缓存命中);其二,管理能力全部通过 REST API 暴露(约 90 个端点),这意味着所有界面能做的事都能脚本化,例如用 POST /control/install/configure 完成首次初始化、用 POST /control/filtering/set_rules 批量下发规则。
💡 技术拓展:加密 DNS 上游协议不止一种,选型对比——
协议 端口 特点 适用场景 DoH(DNS-over-HTTPS) 443 走 HTTPS,抗干扰强,不易被识别封锁 公网出口环境 DoT(DNS-over-TLS) 853 专用端口、协议更简单 内网对内加密 DoQ(DNS-over-QUIC) 853/UDP 基于 QUIC,连接建立快、抗丢包 高延迟/弱网链路 DNSCrypt 独立 老牌加密协议,生态独立 兼容 DNSCrypt 生态 明文 UDP/TCP 53 53 零加密、延迟最低 内网可信链路、国内公共 DNS AdGuard Home 对以上全部支持(作为客户端与作为服务端均可)。本文实测环境采用「明文上游 223.5.5.5 / 119.29.29.29 + DoH 上游 https://dns.alidns.com/dns-query」的混合组合:内网链路可信用明文保低延迟,出公网查询走 DoH 防劫持。
四、功能特性
本章按「开箱即用」的程度归纳 AdGuard Home v0.107.79 的功能面(来源:官方 README 功能对比表与知识库,查询日期 2026-10-18)。
4.1 拦截与过滤
- 广告与跟踪域名拦截:内置 AdGuard DNS filter(实测下载后含 186,044 条规则,见运维篇),另可一键启用 AdAway 等列表;
- 自定义过滤规则:兼容 AdGuard 过滤规则语法(
||domain^、@@白名单、$important修饰符等); - 恶意软件/钓鱼域名拦截(SafeBrowsing)与家长控制(成人内容拦截)为内置开关,无需额外装列表;
- 安全搜索强制(Google/Bing/DuckDuckGo/Yandex/YouTube 等,强制安全模式);
- DNS 重写(rewrites):把指定域名指向内网 IP,可当轻量内网 DNS 使用;
- 按客户端(设备)差异化配置:不同设备可用不同过滤策略、不同上游;
- 访问控制:允许/拒绝列表控制谁能使用本 DNS,支持限速(默认 20 QPS/子网)。
4.2 协议与服务端能力
- 上游支持:明文 DNS、DoH、DoT、DoQ、DNSCrypt,以及内网
dns://形式;上游模式支持负载均衡(默认)、并行请求全部上游、最快地址优先三种; - 服务端加密:配置证书后可作为 DoH/DoT/DoQ 服务端,给全网设备提供加密 DNS;
- 内置 DHCP 服务(IPv4/IPv6,含静态租约),可整体替代路由器 DHCP;
- DNSSEC 校验默认开启(
enable_dnssec: true); - EDNS Client Subnet、DNS64/NAT64、DDR(Discovery of Designated Resolvers)等进阶特性。
4.3 管理与可观测
- Web 管理界面(多语言,含简体中文)+ 完整 REST API(OpenAPI 规范);
- 查询日志:逐条记录客户端、域名、命中规则、上游耗时,可设置保留时长(默认 90 天)与忽略域名列表;
- 统计面板:按小时/天聚合的查询量、拦截量、Top 域名/客户端/上游(默认保留 24 小时,可调至 7/30/90 天);
- 运行状态 API(
/control/status)暴露版本、运行时长、保护开关状态等,便于接入外部监控。
4.4 官方承认的能力边界
官方 README 明确列出的已知限制(查询日期 2026-10-18)——DNS 级拦截无法处理与内容同域名的广告:
- YouTube、Twitch 的视频内广告;
- Facebook、Twitter(X)、Instagram 的信息流推广帖。
原因是这些广告与内容共享同一域名,DNS 层拦截会连内容一起拦掉。这类需求需要内容级过滤代理(AdGuard 客户端类方案)。选型时要把这条边界纳入预期:AdGuard Home 是「全网域名级去广告 + 隐私防护」,不是「浏览器内容级去广告」。
五、快速上手
本节引自官方 Getting Started 文档的最小示例(来源:https://adguard-dns.io/kb/adguard-home/getting-started/ 与官方 README,2026-10-18 查询),供快速认识安装形态;完整实测流程(含逐行回显)见本专栏部署篇与运维篇,此处不做本地实测。
5.1 官方一键安装脚本(Linux/Unix/macOS/FreeBSD/OpenBSD)
官方 README 推荐的自动安装方式:
# curl 方式(-v 表示详细输出)
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v
# wget 方式
wget --no-verbose -O - https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v
脚本支持的选项(来源:官方 README):
-c <channel>:指定发布通道(beta/stable);-r:重新安装;-u:卸载;-v:详细输出。
安装完成后访问 http://<服务器IP>:3000 进入首次安装向导,设置管理账号密码并完成初始化。
5.2 手动安装(二进制包)
官方 Release 页提供各平台二进制包,以 Linux amd64 为例(版本号以 Releases 页实际最新为准):
wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.79/AdGuardHome_linux_amd64.tar.gz
tar -xzf AdGuardHome_linux_amd64.tar.gz
cd AdGuardHome
./AdGuardHome
按提示访问 http://127.0.0.1:3000 完成向导;随后可执行 ./AdGuardHome -s install 将其注册为系统服务(systemd/launchd/Windows 服务等由程序自动识别)。注册生成的服务单元、开机自启与日志管理细节见本专栏运维篇。
5.3 首次向导要做的事
无论哪种安装方式,向导都会要求:
- 选择管理界面监听地址与端口(默认 0.0.0.0:3000);
- 选择 DNS 监听端口(默认 53);
- 设置管理员账号与密码。
向导对应的 REST API 为 POST /control/install/configure(OpenAPI installConfigure),部署篇将用该 API 实测完成初始化。
六、适用场景与限制
6.1 典型适用场景
| 场景 | 说明 | 关键能力依赖 |
|---|---|---|
| 家庭网络去广告 | 路由器 DHCP 下发 DNS 指向 AdGuard Home,全家设备(含电视/IoT)生效 | 拦截 + DHCP + 统计面板 |
| 小微企业/工作室出口防护 | 拦截恶意软件域名、按设备分组策略、强制安全搜索 | 按客户端配置 + SafeBrowsing + 家长控制 |
| 内网自建 DNS 与域名重写 | 内网服务用 xxx.lan 域名访问,配合自定义上游 | rewrites + 内网上游 |
| 加密 DNS 出口 | 出公网查询走 DoH/DoT 防 ISP 劫持,或对外提供加密 DNS 服务 | 加密上游 + 服务端 TLS |
| 网络行为可观测 | 追问「哪台设备在狂发请求」「拦了多少」 | 查询日志 + 统计 + API |
6.2 资源与规模参考
AdGuard Home 是单文件二进制(Go 编写),内存占用低:本文实测环境(含 186,044 条规则的内置过滤器、查询日志与统计开启)运行期常驻内存约 48 MB 量级(系统服务状态报告 Memory: 48.1M),单核即可支撑家庭/小办公室规模的查询量。官方定位为家用与小型网络方案;超大流量企业级递归解析需求应考虑专用 DNS 基础设施(如 CoreDNS/BIND 集群)。
6.3 限制清单(选型前必读)
- 无法拦截与内容同域名的广告(YouTube/Twitch 视频广告、社交平台信息流推广,官方明确承认);
- 仅 DNS 层:应用内使用硬编码 IP 或自带 DoH 的应用可绕过(可配合出口防火墙强制转发 53 端口缓解);
- 单实例架构,无内置主从同步;高可用需外部方案(如两台独立部署 + DHCP 下发两个 DNS,客户端自动回退);
- 拦截规则依赖列表质量,过激列表会误伤正常功能(需要白名单规则回补)。
七、同类选型对比
本章横向对比 2026-10-18 实查的同类方案数据,给出「什么情况选谁」的建议。
7.1 同类方案活跃度对比(GitHub 实查,查询日期 2026-10-18)
| 项目 | GitHub Stars | Forks | 开源许可 | 主语言 | 最近提交 | 定位 |
|---|---|---|---|---|---|---|
| AdGuard Home v0.107.79 | 37,507 | 2,551 | GPL-3.0 | Go + TS | 2026-10-16 | 网络级广告拦截 DNS,一体化全家桶 |
| Pi-hole | 61,319 | 3,325 | EUPL-1.2 | Shell/PHP | 2026-10-18 | 老牌 DNS 拦截,Linux 生态深度集成 |
| CoreDNS | 14,377 | 2,545 | Apache-2.0 | Go | 2026-10-18 | 云原生通用 DNS/服务发现(CNCF 毕业项目) |
| Technitium DNS Server | 10,146 | 802 | GPL-3.0 | C# | 2026-10-17 | 功能完整的权威+递归 DNS 服务器 |
| Blocky | 7,039 | 315 | Apache-2.0 | Go | 2026-10-16 | 轻量 DNS 拦截代理,纯配置文件驱动 |
| dnsmasq | 未在 GitHub 统计 | — | GPL-2.0+ | C | — | 极轻量 DNS/DHCP,路由器标配 |
关键解读:Pi-hole 社区声量最大(61k stars),但其拦截核心仍依赖外围组件组合,加密上游/服务端等能力需另装软件(官方 README 对比表);AdGuard Home 以 37.5k stars 位居第二,但功能密度最高——加密上游(DoH/DoT/DoQ/DNSCrypt)、加密服务端、家长控制、安全搜索、按客户端策略全部开箱即用,且是 Go 单二进制,跨平台架构覆盖从 x86 大服务器到 riscv64 开发板。CoreDNS/Technitium 是「通用 DNS 服务器」,拦截广告只是其一小部分能力,适合以 DNS 为主要目的场景;Blocky 定位与 AdGuard Home 最近,但无 Web 界面、无内置统计面板,适合纯配置文件驱动的极简主义者;dnsmasq 是「轻量基础组件」,无拦截生态。
7.2 功能对比(综合官方文档,2026-10-18 查询)
| 能力 | AdGuard Home | Pi-hole | Blocky | Technitium |
|---|---|---|---|---|
| DNS 级广告拦截 | ✅ | ✅ | ✅ | ✅(需配列表) |
| Web 管理界面 | ✅ 内置 | ✅ 内置 | ❌ 纯配置 | ✅ 内置 |
| 加密上游 DoH/DoT/DoQ | ✅ 全支持 | ❌ 需加装 | ✅ DoH/DoT | ✅ 全支持 |
| 作为 DoH/DoT 服务端 | ✅ | ❌ 需加装 | ✅ DoH/DoT | ✅ |
| 恶意软件/钓鱼拦截 | ✅ 内置开关 | ⚠️ 需第三方列表 | ⚠️ 需第三方列表 | ⚠️ 需第三方列表 |
| 家长控制/强制安全搜索 | ✅ | ❌ | ✅ 安全搜索 | ✅ |
| 按客户端差异化策略 | ✅ | ✅ | ✅ | ✅ |
| 查询日志与统计面板 | ✅ 内置 | ✅ 内置 | ⚠️ 仅日志无面板 | ✅ |
| 内置 DHCP | ✅ | ✅ | ❌ | ✅ |
| 部署形态 | 单二进制/官方多架构包 | 多组件套件 | 单二进制 | 单二进制(需运行时) |
| 查询日志/统计保留可调 | ✅(API 可调,1h–90d) | ✅ | — | ✅ |
关键解读与选型建议:
- 要「开箱即用的全家桶」(管理界面 + 加密 + 拦截 + 统计一次到位)→ 首选 AdGuard Home,本专栏其余篇章均围绕它展开;
- 要 Linux 社区生态与深度定制脚本、团队已有 Pi-hole 运维经验 → Pi-hole,接受加密能力需自行加装;
- 要纯配置文件、GitOps 化管理的轻量拦截(无界面、资源占用极致)→ Blocky;
- 要的是 DNS 服务器本身(权威解析、区域传送、复杂记录类型)→ Technitium 或 CoreDNS,拦截只是附带能力;
- 路由器/嵌入式极小内存设备 → dnsmasq(无拦截生态)。
7.3 版本与发布通道选择建议
- 生产环境:跟随 0.107.x 稳定通道(本文 v0.107.79),升级节奏约每月一次,建议滞后一个版本观察;
- 尝鲜/测试:beta 通道(0.108.0-b.x),官方 README 提供切换方法;
- v1.0.0-b.1 已于 2026-09-30 发布,1.0 正式版落地前(界面与版本机制可能有较大变更,Release Notes 提到 edge 通道已切换到新 UI 与版本方案),不建议生产跟随 1.0 通道。
八、参考链接
- AdGuard Home 官方仓库:https://github.com/AdguardTeam/AdGuardHome
- 官方产品页:https://adguard-dns.io/adguard-home/
- 官方知识库 Getting Started:https://adguard-dns.io/kb/adguard-home/getting-started/
- v0.107.79 Release Notes:https://github.com/AdguardTeam/AdGuardHome/releases/tag/v0.107.79
- 官方 REST API(OpenAPI)规范:https://github.com/AdguardTeam/AdGuardHome/tree/master/openapi
- 官方安装脚本:https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh
- 官方对比章(与 Pi-hole 等):https://github.com/AdguardTeam/AdGuardHome#comparison
- 本专栏配套篇目:《AdGuard Home Docker Compose 部署指南》(部署全流程)、《AdGuard Home 0.107.79 配置参数详解》(主配置逐项解说)、《AdGuard Home 日常运维手册》(运维实战)