OpenWrt 安装 SmartDNS 插件与配置使用教程

SmartDNS 是运行在本地的 DNS 服务器,它接受来自本地客户端的 DNS 查询请求,然后从多个上游 DNS 服务器获取 DNS 查询结果,并将访问速度最快的结果返回给客户端,以此提高网络访问速度,支持指定特定域名 IP 地址,并高性匹配,可达到过滤广告的效果,同时也支持 DOT(DNS over TLS) 和 DOH(DNS over HTTPS),更好的保护隐私。

fWpHzMv5ZXmDaq8

所需依赖

smartdns.ipk(smartdns 核心依赖)

luci-app-smartdns.ipk(smartdns 插件界面包)

内容翻新于 2023年05月26日,相关依赖都是由 Github 的 pymumu/smartdns 提供而来,有兴趣的朋友可以去了解了解 SmartDNS 源代码,支持树莓派、OpenWRT、华硕路由器原生固件和 Windows 系统等。

安装使用

1、通过 OPENSSH 登录到设备终端,执行以下代码卸载原有安装包,有些第三方固件可能以前安装过存在残余,如果确认没有安装过,可以忽略这步,命令如下:

# 卸载残余文件
opkg remove smartdns
rm -f /etc/config/smartdns
rm -f /etc/config/smartdns-opkg

2、确认卸载 SmartDNS 残留文件完成,就通过本站提供的 SmartDNS 插件包地址进行在线下载,下载完成进行解压安装包,本站地址只适用于 aarch64 架构使用,其他设备请查看 SmartDNS 的 Github 仓库,如下图:

# 下载 SmartDNS 插件包
wget https://git.opclash.com/opsupes/luci-app-smartdns.zip

# 解压 SmartDNS 安装包
unzip luci-app-smartdns.zip

# SmartDNS Github 仓库
https://github.com/pymumu/smartdns/releases

3、解压完成就可以通过以下命令批量安装 smartdns.ipk 和 luci-app-smartdns.ipk 文件了,注意批量安装时需要在 ROOT 根目录无任何 IPK 文件下,不然就单独安装,如下图:

# 批量安装文件
opkg install *.ipk

# 单独安装文件
opkg install smartdns.1.2021.08.27-1923.aarch64-openwrt-all.ipk
opkg install luci-app-smartdns.1.2021.08.27-1923.all-luci-compat-all.ipk

Z6fgRs4hMoAkbeG

4、执行完成安装 smartdns 命令就可以到 LuCI 管理界面查看了,路径为“服务”-“SmartDNS”,如下图:

9QI6gpO3dfjiYVW

5、在 SmartDNS 服务器页面下拉找到“上游服务器”,填写服务器名称、DNS地址,建议协议类型的 UDP、TCP 都填写上,这里已部分为例,你可以填写更多,建议查看本站的《国内外常用的 免费公共DNS 大全详解》,如下图:

CvO6r1dVFfsZuRj

6、接着在基本设置,启用 SmartDNS 服务,本地端口无需修改,勾选TCP服务器、IPV6服务器、双栈IP优选、域名预加载、过期缓存服务,重定向选择 重定向53端口 到 SmartDNS,缓存大小推荐设置 1000000 - 5000000,如下图:

7、显示 SmartDNS - 运行中,那么就可以在 Windows 的运行下使用 CMD 打开命令框,执行 nslookup 进行查询结果,运行成功结果,如下图:

# 执行 nslookup 进行查询结果
nslookup taobao.com
nslookup baidu.com
nslookup opclash.com

8、查询结果返回为,打开第二组 DNS 服务器,一般情况下无需开启,如果需要开启,那么勾选启用,勾选跳过测速、跳过address规则、跳过双栈优选、跳过cache、Force AAAA SOA,如下图:

UZLofQqbl2BW7tK

补充内容

本地端口会受到其他插件和代理工具的影响,所以这里不要做任何修改,双栈优选会自动判断 IPV4 和 IPV6 那个更快,优先选择更快的服务,前提是你的运营商必须支持 IPV6,域名预加载会自动获取主流网站的DNS结果并匹配,过期缓存服务会自动查询DNS访问记录,在无访问情况下也会查询,会占用CPU资源,如果是单核CPU,建议不要开启了。

在上游服务器内已经添加了海外的 DNS 服务器地址,那么其实是没有必要开启第二组 DNS 服务器,本身上游服务器内的 DNS 就会自动切换国内外 DNS 服务器,如已经安装了其他的 DNS 插件,比如:ChinaDNS-NG,Turbo ACC 网络加速,请选择关闭插件,Turbo ACC 网络加速可以单独选择关闭 DNS 加速,其他服务选择开启即可。

THE END