家用wifi折腾笔记 篇二:DNS那点儿事儿——adguardhome、smartdns、dnsmasq使用逻辑及配置
先说结论:天津联通,adguardhome可以过滤电脑端优酷、爱奇艺绝大部分广告但是效果是“干瞪眼”(如图);手机端优酷视频无广告,爱奇艺时有时无;电视端(华为智慧屏)优酷无广告,爱奇艺大部分有个别的没有;腾讯全客户端没试过~因为我有会员 。其他一些国际小视频网站效果反倒不错。
友情提醒:adguardhome目前去广告效果只能说一般吧,不如ikoolproxy来的简单有效,smartdns对dns的选择更多的是为了一些特殊功能,绝大部分普通用户是不用折腾这些插件的。当然,如果你就是“爱折腾”那一类人,也不用害怕,因为这个东西看着复杂,其实弄懂逻辑以后,并不难。
openwrt系统中,dns请求其实就是一条信息,题目中所写的这些插件无非就是在信息传递过程中,加入广告过滤、并发择优等功能而已。很多人被这些东西整的晕头转向,这里谈谈我的理解。
一、openwrt中默认的dns管理插件——dnsmasq
这其实就是所谓的dhcp/dns设置选项,默认监管的53端口(更改的话在高级选项-dns服务器端口)。我们这些上网的设备发出的dns请求都是先到这里,然后再通过dns转发(在常规设置中可以更改)送到网关,最后到运营商等dns服务器进行查询。
所以接下来,我们通过几个插件在这个dns转发过程中接入各自的服务就好,逻辑上就像“手拉手”一样,大家有接、有送就能相安无事的传递信息。而这里提到的“手拉手”就是通过“端口”设置来定位的。
二、设置去广告插件——adguardhome
安装就不介绍了,教程很多。大部分人在重定向模式中喜欢选择“作为dnsmasq上游服务器”,这里解释一下,我们的dns请求第一步默认是经过dnsmasq,然后才到上游服务器也就是adguardhome,所以adguardhome接受到的都是53端口的请求,自然也就无法区分是哪个客户端,所以在仪表台你会看到拦截的全都是127.0.0.1的数据。
理解了这里,想改变的话就简单了。选择“53端口重定向”模式个别同志反应会有bug,所以我们可以直接在adguardhome手动设置中把监听端口改成53就行了,就相当于用自己的监听端口替换系统的53端口。
这样,重定向模式选择“无”就可以了
接下来到adguardhome的网页控制面板中,将Bootstrap DNS 服务器设为127.0.0.1(本地dns)
因为我需要将过滤后的dns请求再转发给smartdns(下面将设置两组服务器端口为6053和5335),所以上游服务器设为 127.0.0.1:6053,127.0.0.1:5335。
拦截规则方面不建议大家添太多,我一般就用一个,这里大家按需填写即可https://adguardteam.github.io/HostlistsRegistry/assets/filter_21.txt
三、dns自动选择插件——smartdns
其实单纯登录国内一些网站的话是不需要smartdns的,各个dns查询服务器速度差别也就是十几毫秒,感知不到的。如果怕dns污染、就想网页秒开或者有特殊需求的话,smartdns还是比较有用的。
先把下方dns服务器填上,国内无非就是运营商的/阿里的/腾讯的/360的等等吧,国外也就是谷歌等。注意国内国外服务器分组要分别设为cn、gw。
第一组 cn 6053
第二组 gw 5335
另外,在自定义设置里加入以下分组命令
bind:6053 -group cn bind:5335 -group gw
其他设置如下图,注意不要点自动设置dnsmasq就行。
四、其他设置
dhcp/dns设置——常规设置——填写dns转发地址如下(也就是smartdns设置的两个地址)
host和解析文件里面,把忽略解析打勾(因为这活已经被smartdns包了)
五、后面就看你的需求,自己加一下其他插件,注意有一个5335端口,可以合理利用一下。
以上就是全部设置要点了,仅仅是为了折腾而折腾,其实adguardhome也有dns优选功能,smartdns也有广告过滤功能,甚至是tcc里面dns加速也可以提供dns优选功能。选哪个都好,但注意只选一个,可别开着dns加速、在adh里面添一堆dns,再去smartdns里面打开广告过滤,那就真是得不偿失了。
圣零
校验提示文案
圣零
校验提示文案