AdGuard Home是一款可以拦截手机、平板、电脑等各平台广告的全网广告的实用工具,他还可以实现禁止跟踪的软件。在网络内安装AdGuard Home后,它可以保护您网络内的所有设备,也就不再需要安装任何去广告的插件或客户端了。
AdGuard Home 项目是著名广告拦截器AdGuard里DNS Server的一个开源版本,它的原理是在DNS的域名解析的过程里拦截网页上的广告以及断开跟踪。
AdGuard Home项目的代码与ADGuard DNS核心代码几乎相同,所以效率还是不错的。
简单的讲就是AdGuard Home在给我们提供DNS服务的同时还提供去广告和屏蔽跟踪的功能,
ADGuard Home官方中文版主页:https://adguard.com/zh_cn/adguard-home/overview.html
ADGuard Home Github开源地址:https://github.com/AdguardTeam/AdGuardHome/wiki/Getting-Started#installation
ADGuard Home下载地址:https://github.com/AdguardTeam/AdGuardHome/releases
适合里面各种平台的安装程序应有尽有,现在最新版是0.106.2
我的树莓派是64位的,所以下载arm64版本的:
wget -c https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.106.2/AdGuardHome_linux_arm64.tar.gz#wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_arm.tar.gztar xvf AdGuardHome_linux_arm64.tar.gzcd AdGuardHomesudo chmod u+x AdGuardHomesudo ./AdGuardHome -s install会出现如下提示:2021/05/11 10:53:43 [info] Service control action: install2021/05/11 10:53:48 [info] Service has been started2021/05/11 10:53:48 [info] Almost ready!AdGuard Home is successfully installed and will automatically start on boot.There are a few more things that must be configured before you can use it.Click on the link below and follow the Installation Wizard steps to finish setup.2021/05/11 10:53:48 [info] AdGuard Home is available on the following addresses:2021/05/11 10:53:48 [info] Go to http://127.0.0.1:30002021/05/11 10:53:48 [info] Go to http://192.168.3.66:30002021/05/11 10:53:48 [info] Action install has been done successfully on linux-systemd
直接访问 http://192.168.3.66:3000 即可打开AdGuard Home 网页管理界面,开始安装,一切都是傻瓜化安装。
DNS 服务器 监听 端口 53 ,这个不建议修改,其他端口都可以自己修改,自己记住即可。
AdGuard Home 设置 DNS配置
上游 DNS 服务器
223.5.5.5
223.6.6.6
119.29.29.29
182.254.116.116
2400:3200::1
2400:3200:baba::1
240c::6666
240c::6644
tls://223.5.5.5
tls://223.6.6.6
tls://dns.pub
https://dns.alidns.com/dns-query
https://doh.pub/dns-query
https://dns10.quad9.net/dns-query
模式选择 负载均衡
上游dns的意思是AdGuard Home查询你使用网络访问网址时用的dns服务器
Bootstrap DNS 服务器
Bootstrap DNS 服务器用于解析您指定为上游的 DoH / DoT 解析器的 IP 地址。
114.114.114.114:53
1.1.1.1:53
1.0.0.1:53
208.67.220.220:53
208.67.222.222:53
9.9.9.10
149.112.112.10
2620:fe::10
2620:fe::fe:10
Bootstrap DNS 服务器 是AdGuard Home查询dns服务器ip时用的dns服务器,上游服务器应该设置成响应最快的多个dns地址
AdGuard Home 过滤器
DNS封锁清单
AdGuard Home将阻止匹配DNS拦截清单的域名
建议添加如下规则:
HalfLife,规则合并自 EasylistChina、EasylistLite、CJX’sAnnoyance 合并规则(每周更新)https://gitee.com/halflife/list/raw/master/ad.txtanti-AD 目前中文区命中率最高的广告过滤列表,精确的广告屏蔽和隐私保护。已支持AdGuardHome,dnsmasq,Surge,Pi-Hole,SmartDNS等。Github地址:https://github.com/privacy-protection-tools/anti-ADhttps://raw.githubusercontent.com/privacy-protection-tools/anti-AD/master/anti-ad-easylist.txtChinaList+EasyListhttp://sub.adtchrome.com/adt-chinalist-easylist.txtEasyList China 中文补充规则https://easylist-downloads.adblockplus.org/easylistchina.txtxinggsf,乘风广告过滤规则https://gitee.com/xinggsf/Adblock-Rule/raw/master/rule.txt
设置部分就完成了,修改dns后就可以使用了,其他设置不太重要,自己摸索一下吧。
AdGuard Home需要一个静态IP地址才能正常工作,所以请为安装AdGuard Home的机器分配一个静态IP地址。
为保证 AdGuard Home 可以开始正常工作,您需要在设备上或者路由器上修改DNS地址,将默认DNS服务器地址改为树莓派静态IP地址即可。
修改路由器上DHCP内的DNS服务器地址是最简单的方法了,修改后将自动覆盖连接到您的家庭路由器的所有设备,无需手动一个个设备分别修改。
AdGuard Home的运行命令:
./AdGuardHome -s run
启动AdGuard Home
systemctl start AdGuardHome
重启AdGuard Home
systemctl restart AdGuardHome
停止AdGuard Home
systemctl stop AdGuardHome
查看AdGuard Home运行状态
systemctl status AdGuardHome
设置AdGuard Home开机自启动
systemctl enable AdGuardHome
以上:2021-05-13 09:20:47
以下2021-5-28 16:47:18更新
某些设备使用AdGuard Home无法过滤封禁广告的解决方法
有些设备端使用了AdGuard Home的解析DNS设置无错误,但也封禁不了广告,极有可能是使用了ipv6,而路由器里并没设置DNSv6服务器ipv6地址,这样的情况下客户端获取的DNSv6服务器地址就是路由器的ipv6地址,或是运营商直接推送下来的DNSv6的ipv6地址。
这样客户那些走ipv6解析的自然就不会经过AdGuard Home了,导致广告依然会显示,封禁无效。
解决方法很简单,有两种:
第一种:关闭路由器/光猫上获取ipv6的功能,仅使用ipv4,这是最简单有效的方式。
第二种:在路由器上指定DNSv6服务器的ipv6地址为AdGuard Home所在机器的地址
设置一般修改如下两个选项设置即可:
内部网络 (LAN) - DHCP 服务器 ,自己指定一个局域网ipv6地址
外部网络 (WAN) - IPv6 设置,关闭自动获取IPv6 DNS
详细如下图:
这里面的DNSv6服务器地址是内网的ipv6地址,因为外网ipv6地址经常会变化。
第二个方法兼顾了保留ipv6,但麻烦一些,设置错误可能会有问题;如无特殊需求直接用第一种方法关闭ipv6即可解决问题。