安全搜索」等特性。
不仅如此,你还可以很方便的屏蔽一些比较流行的网站。当然这些网站本来对我们都是不可用的,也就不用多此一举进行设置了,哈哈!
- 设置上游 DNS
AdGuard Home
默认使用 Cloudflare
的 DNS over HTTPS
作为上游服务器。如果你在国内使用 Cloudflare DNS
做为上游 DNS
,可能延迟会比较高。
我们可以设置为国内的公共 DNS
,如:腾讯的 119.29.29.29
、阿里的 223.5.5.5
和 114.114.114.114
等,但坏处是这些国内公共 DNS
暂时不支持 DNS over TLS
。
这里有一个比较折中的解决方法就是通过启用 「通过同时查询所有上游服务器以使用并行查询加速解析」选项来在每次查询的时候对所有的上游 DNS
同时查询,以加速解析速度。
- 过滤器
虽然 AdGuard Home
本身内置了比较知名的 AdGuard
、AdAway
广告过滤规则,但这些规则在国内显然有点水土不服。如果你想要更完美的实现广告屏蔽还需要自己添加规则,比较幸运的是 AdGuard Home
是可以兼容 Adblock
过滤规则语法的。这样,你就可以很方便的使用一些比较知名的 Adblock
过滤规则,比如:由 Adblock Plus
团队维护的 EasyList
。
目前好用的广告过滤规则还是有很多的,它们都针对不同的用途。下面推荐一些比较常用的:
- EasyList China : 国内网站广告过滤的主规则。
链接:https://easylist-downloads.adblockplus.org/easylistchina.txt
- EasyPrivacy : EasyPrivacy 是隐私保护,不被跟踪。
链接:https://easylist-downloads.adblockplus.org/easyprivacy.txt
- CJX's Annoyance List : 过滤烦人的自我推广,并补充 EasyPrivacy 隐私规则。
链接:https://raw.githubusercontent.com/cjx82630/cjxlist/master/cjx-annoyance.txt
- 广告净化器规则 : 支持国内大部分视频网站的广告过滤。
链接:http://tools.yiclear.com/ChinaList2.0.txt
- I don't care about cookies : 我不关心 Cookie 的问题,屏蔽网站的 cookies 相关的警告。
链接:https://www.i-dont-care-about-cookies.eu/abp/
除了使用已有的过滤规则外,当然你也可以根据自己的需求自定义过滤规则,要自定义过滤规则其实也很简单。
下面是自定义过滤规则的一些语法说明。
||example.org^ – 拦截 example.org 域名及其所有子域名
@@||example.org^ – 放行 example.org 及其所有子域名
127.0.0.1 example.org – 将会把 example.org(但不包括它的子域名)解析到 127.0.0.1。
! 注释符号,表示这是一行注释
# 这也是注释符号,同样表示这是一行注释
/REGEX/ – 正则表达式模式
更多规则可以参考官方帮助文档:https://kb.adguard.com/en/general/dns-filtering-syntax
- 查询日志
AdGuard Home
管理界面中也为我们提供了 DNS
请求日志查询功能,在这里,我们不但能看见所有设备最近 5000 条的 DNS
请求日志记录。你还可以根据 DNS
请求日志记录来针对某个域名进行快速的拦截和放行操作。
- 调整配置参数,以提升 QPS 能力
AdGuard Home
所有的配置参数都保存在一个名为 AdGuardHome.yaml
的配置文件中。这个配置文件默认路径通常为 AdGuard Home
二进制文件 AdGuardHome
所在的目录,比如:/usr/local/bin/AdGuardHome.yaml
。
这里我们只需调整以下两个参数,就是可以明显提升 AdGuard Home
的 QPS
能力。
这里在把 AdGuard Home
的配置文件完整版本也展示一下,有兴趣的同学可以自行研究下其它参数的用途哟!。
$ cat AdGuardHome.yaml
bind_host: 0.0.0.0
bind_port: 80
auth_name: mike
auth_pass: "123456"
language: zh-cn
rlimit_nofile: 0
dns:
bind_host: 0.0.0.0
port: 53
protection_enabled: true
filtering_enabled: true
blocking_mode: nxdomain
blocked_response_ttl: 60
querylog_enabled: true
ratelimit: 0
ratelimit_whitelist: []
refuse_any: true
bootstrap_dns:
- 1.1.1.1:53
- 1.0.0.1:53
all_servers: true
allowed_clients: []
disallowed_clients: []
blocked_hosts: []
parental_block_host: ""
safebrowsing_block_host: ""
blocked_services: []
parental_sensitivity: 13
parental_enabled: true
safesearch_enabled: true
safebrowsing_enabled: true
resolveraddress: ""
rewrites: []
upstream_dns:
- https://1.1.1.1/dns-query
- https://1.0.0.1/dns-query
- 119.29.29.29
- 223.5.5.5
tls:
enabled: false
server_name: ""
force_https: false
port_https: 443
port_dns_over_tls: 853
certificate_chain: ""
private_key: ""
filters:
- enabled: true
url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt
name: AdGuard Simplified Domain Names filter
id: 1
- enabled: false
url: https://adaway.org/hosts.txt
name: AdAway
id: 2
- enabled: false