AdGuard Home Linux 端(强烈推荐)
无论是 OpenWRT 插件安装,还是 docker 运行的 AdGuard Home,使用方法是一样的。我这里介绍一种,另外的就不多介绍了。AdGuard Home 后面就简称为 adg,方便一些。
1 OpenWRT 插件版 AdGuard Home 📦
1.1 准备工作 基础概念
无论是什么版本的 adg,都有一个关键点:通过 macvlan 搭建独立 IP,可以单独享受端口。
| 功能 | 默认端口 | 建议改为 | 说明 |
|---|---|---|---|
| 网页管理(初始化) | 3000 | 33000 | 3000 常被其他 docker 项目占用 |
| HTTP 管理入口 | 80 | 880 | 改后通过 http://IP:880 登录 |
| HTTPS / DoH | 443 | 881 | 加密 DNS 形如 https://IP:881/dns-query,需开启加密并配置证书 |
| 标准 DNS | 53 | 953 | OpenWRT 的 53 默认被 dnsmasq 占用 |
| 加密 DNS DoT | 853 | 853 | 被占用时可改其他 |

1.2 作为 dnsmasq 的上游服务器
首先 adg 可以作为 dnsmasq 的上游服务器使用,但是这样的好处就是保留 dnsmasq 的本地 DNS 解析功能,坏处就是在 adg 的客户端排行统计面板全部显示127.0.0.1。这样的逻辑处理方式为如图所示。

1.3 重定向 53 端口到 Adguard Home
重定向你可以理解为劫持,重定向 53 端口,意思就是用户请求的 53 端口,都会被 adg 劫持到 953 端口。但是保留了 dnsmasq 的 dhcp 功能。并且在 adg 的客户端排行统计面板显示用户 IP。这样的逻辑处理方式为如图所示。

1.4 使用 53 端口替换 dnsmasq
WARNING
OpenWRT 旁路由可以用,主路由分配 dhcp。
使用 53 端口替换 dnsmasq,意思等于禁用了 dnsmasq,也没 dhcp 功能。直接使 AdGuard Home 监听和处理 53 端口上的 DNS 请求。 dnsmasq 不再处理任何 DNS 请求。所有 DNS 相关的功能完全由 AdGuard Home 接管。这样的逻辑处理方式为如图所示。

2 AdGuard Home 初始化 ⚙️
2.1 启动
因为我喜欢用重定向 53 端口到 Adguard Home,所以可以如下操作。修改好网页管理端口 33000,勾选启动,拉到最低保存并应用。那么就可以浏览器打开 http://IP:33000。

2.2 开始配置

2.3 修改端口
网页管理端口为 880,dns 端口为 953。

2.4 自定义用户名和密码

2.5 监听地址
了解下监听的地址,点击下一步。

2.6 打开仪表盘

2.7 登录 Adguard Home
最后浏览器打开 http://IP:880,输入账号密码就可以登录 adg。


3 AdGuard Home 配置 🛠️
TIP
我没提到的配置保持默认就好,只需要改文中提到的配置。
3.1 DNS 设置
打开设置 > DNS 设置

- 上游 DNS 服务器
# 加密
https://dns.alidns.com/dns-query
https://223.5.5.5/dns-query
https://doh.360.cn/dns-query
https://1.12.12.12/dns-query
https://doh-home.onedns.net/dns-query
https://dns10.quad9.net/dns-query- 并行请求

- Bootstrap DNS 服务器
183.60.83.19
223.5.5.5
1.1.1.1
8.8.8.8- 测试上游,应用

- DNS 缓存配置
- 覆盖最小 TTL 值 60,覆盖最大 TTL 值 600
- 乐观缓存,保存
3.2 DNS 黑名单
打开过滤器 > DNS 黑名单 > 添加黑名单 > 添加自定义列表 > 输入名称和规则列表,随便填写几个黑名单规则就行。

# name: 不是DD啊-高效的广告过滤规则
# url
https://raw.githubusercontent.com/afwfv/DD-AD/main/rule/DD-AD.txt
# name: 大萌主-专注于界面广告拦截的实用规则
#url
https://raw.githubusercontent.com/damengzhu/banad/main/jiekouAD.txt
#name: 下个ID见-基于安卓APP抓取的规则
# url
https://raw.githubusercontent.com/2Gardon/SM-Ad-FuckU-hosts/master/SMAdHosts
# name: CHN: anti-AD
# url
https://adguardteam.github.io/HostlistsRegistry/assets/filter_21.txt
# name: 秋风
# url
https://raw.githubusercontent.com/TG-Twilight/AWAvenue-Ads-Rule/main/AWAvenue-Ads-Rule.txt
# name: 晴雅
# url
http://rssv.cn/adguard/api.php?type=black
3.3 完结撒花
这样就可以完美使用 adg,假如你的 adg,不生效,你可以在 OpenWRT 系统网络 > DHCP/DNS > 转发 > DNS 转发 > 127.0.0.1#953,这样添加一条。如果 OpenWRT DNS 没有生效可以在 SSH 终端输入下列命令刷新。
service dnsmasq restart

4 docker 版本 🐳
4.1 网卡桥接版
这个版本其实和插件版使用是一样的,最后在 DNS 转发一下端口就可以。
4.2 macvlan 版
这个版本使用更简单,因为是独立的 IP,独立使用端口 80、443、53、853、3000。所以直接在使用实话填写这个IP,比如是 192.168.5.250。