Skip to content

AdGuard Home Linux 端(强烈推荐) ​

无论是 OpenWRT 插件安装,还是 docker 运行的 AdGuard Home,使用方法是一样的。我这里介绍一种,另外的就不多介绍了。AdGuard Home 后面就简称为 adg,方便一些。

1 OpenWRT 插件版 AdGuard Home 📦 ​

1.1 准备工作 基础概念 ​

无论是什么版本的 adg,都有一个关键点:通过 macvlan 搭建独立 IP,可以单独享受端口。

功能默认端口建议改为说明
网页管理(初始化)3000330003000 常被其他 docker 项目占用
HTTP 管理入口80880改后通过 http://IP:880 登录
HTTPS / DoH443881加密 DNS 形如 https://IP:881/dns-query,需开启加密并配置证书
标准 DNS53953OpenWRT 的 53 默认被 dnsmasq 占用
加密 DNS DoT853853被占用时可改其他

/webp/40.adg_use/2010-进阶使用AdguardHome-op01.webp

1.2 作为 dnsmasq 的上游服务器 ​

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op02.webp

1.3 重定向 53 端口到 Adguard Home ​

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op03.webp

1.4 使用 53 端口替换 dnsmasq ​

WARNING

OpenWRT 旁路由可以用,主路由分配 dhcp。

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op04.webp

2 AdGuard Home 初始化 ⚙️ ​

2.1 启动 ​

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op05.webp

2.2 开始配置 ​

/webp/40.adg_use/2010-进阶使用AdguardHome-op06.webp

2.3 修改端口 ​

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op07.webp

2.4 自定义用户名和密码 ​

/webp/40.adg_use/2010-进阶使用AdguardHome-op08.webp

2.5 监听地址 ​

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op09.webp

2.6 打开仪表盘 ​

/webp/40.adg_use/2010-进阶使用AdguardHome-op10.webp

2.7 登录 Adguard Home ​

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op11.webp

/webp/40.adg_use/2010-进阶使用AdguardHome-op12.webp

3 AdGuard Home 配置 🛠️ ​

TIP

我没提到的配置保持默认就好,只需要改文中提到的配置。

3.1 DNS 设置 ​

打开设置 > DNS 设置

/webp/40.adg_use/2010-进阶使用AdguardHome-op13.webp

  • 上游 DNS 服务器
yaml
# 加密
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
  • 并行请求

/webp/40.adg_use/2010-进阶使用AdguardHome-op14.webp

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

/webp/40.adg_use/2010-进阶使用AdguardHome-op15.webp

  • DNS 缓存配置
  • 覆盖最小 TTL 值 60,覆盖最大 TTL 值 600
  • 乐观缓存,保存

3.2 DNS 黑名单 ​

打开过滤器 > DNS 黑名单 > 添加黑名单 > 添加自定义列表 > 输入名称和规则列表,随便填写几个黑名单规则就行。

/webp/40.adg_use/2010-进阶使用AdguardHome-op16.webp

yaml
# 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

/webp/40.adg_use/2010-进阶使用AdguardHome-op17.webp

3.3 完结撒花 ​

这样就可以完美使用 adg,假如你的 adg,不生效,你可以在 OpenWRT 系统网络 > DHCP/DNS > 转发 > DNS 转发  > 127.0.0.1#953,这样添加一条。如果 OpenWRT DNS 没有生效可以在 SSH 终端输入下列命令刷新。

sh
service dnsmasq restart

/webp/40.adg_use/2010-进阶使用AdguardHome-op18.webp

/webp/40.adg_use/2010-进阶使用AdguardHome-op19.webp

4 docker 版本 🐳 ​

4.1 网卡桥接版 ​

这个版本其实和插件版使用是一样的,最后在 DNS 转发一下端口就可以。

4.2 macvlan 版 ​

这个版本使用更简单,因为是独立的 IP,独立使用端口 80、443、53、853、3000。所以直接在使用实话填写这个IP,比如是 192.168.5.250。