主路由+旁路由SmartDNS终极教程和优化方案

12333社保查询网www.sz12333.net.cn 2026-02-12来源:人力资源和社会保障局

  家里主路由越来越卡,DNS一堵就是半秒,YouTube开个4K都转圈。

  我试过换DNS、关IPv6、清缓存,全没用。后来才知道,不是DNS慢,是它根本没被好好管。

  原来DNS不只是填个IP的事。它像家里的快递分拣站,谁的包裹走高速,谁的绕道,谁的直接退回,全看它怎么判。主路由CPU只有几百兆,还要扛WiFi、防火墙、QoS,再让它干DNS这活,等于让外卖小哥边送餐边写代码。

  我拿一台旧x86小主机当旁路由,装了OpenWrt,再配SmartDNS。不装任何UI插件,全用命令行操作。先`opkg update && opkg install smartdns`,装完立刻`smartdns --version`看是不是4.0以上。低版本不支持DoT健康检测,装了也白搭。

  配的时候狠下心——删掉所有IPv6相关行。`disable-ipv6 yes`和`no-dualstack yes`必须写死,日志里看到`AAAA query dropped`才算生效。实测下来,开了IPv6 DNS,延迟真能涨40%,不是玄学,是双栈查询多一次往返。

  上游DNS分两拨:国内用223.5.5.5走UDP,干净利落;国外全扔给1.1.1.1:853走DoT。不是迷信Cloudflare,是跑过几十次tcpdump,它握手稳定在35ms左右,比DoH省一个RTT。`server-tls`后面必须跟`-b 1.1.1.1`指定绑定地址,不然会连错本机端口。

  规则不写“google.com=代理”,而是用正则`/\.google\./i`,这样maps.google.com、fonts.googleapis.com全包进去。第二DNS服务器字段,只填`1.1.1.1:853`,专门喂给这些域名。别的不管,让它专干一件事。

  我还搭了个AdGuard Home,但没让它干DNS,只让它过滤。把AGH的上游DNS改成`127.0.0.1:6053`,也就是SmartDNS的监听端口。这样广告域名先被AGH拦一遍,再转发给SmartDNS查最优IP,各干各的,不抢活。

  PassWall也照此办理,DNS设置里关掉“自动获取”,手动填`192.168.0.8:6053`。最怕它俩规则重复:比如PassWall把github.com导去代理,SmartDNS又给它加一条`/github\.com/`规则,结果查着查着就套娃,最后超时。

  验证不靠感觉。用`dig +short github.com @192.168.0.8`跑10次,看返回几个IP。运营商DNS常吐4-6个,SmartDNS基本就2个,还都是延迟最低的。再用`smartdns-cli cache info`看命中率,低于70%就翻日志,找哪条`no server`报错最多。

  日志必须开level 3,`log-file /var/log/smartdns.log`不能省。某天发现`latency: 1200ms`扎堆,顺藤摸到是114 DNS接口被运营商限速,直接删掉那行`server`,换成了腾讯DNS(119.29.29.29),立马恢复正常。

  我设了个定时任务,每天凌晨3点重启smartdns,防内存泄漏。每周日自动wget更新广告规则,链接是anti-ad.net给的原生SmartDNS格式,不用转换。配置文件全放进Git,哪怕哪天崩了,`scp`拉回来就能跑。

  有次SmartDNS挂了,我没急着修,先执行`uci set dhcp.lan.ignore=1 && uci commit && /etc/init.d/dnsmasq restart`,3秒钟,主路由接管DNS,全家上网照常。接着`logread -e smartdns | tail -100 > /tmp/fail.log`,把日志拷出来慢慢看。

  孩子上网课那天,腾讯会议连了三次都是秒进。我没截图发朋友圈,只是关掉终端,倒了杯水。NAS下载BT时Tracker解析总在30ms内,没再出现“连接超时”。刷抖音,广告跳转页少了,不是卡住了,是压根没发出去请求。

  DNS堵得像早高峰地铁,换几个IP根本没用,它到底听谁的话?

本文标题:主路由+旁路由SmartDNS终极教程和优化方案本文网址:https://www.sz12333.net.cn/zhzx/kexue/55528.html 编辑:12333社保查询网

本站是社保查询公益性网站链接,数据来自各地人力资源和社会保障局,具体内容以官网为准。
定期更新查询链接数据 苏ICP备17010502号-11