Openwrt系列教程:使用SmartDNS加速DNS解析
        
        
             
                SmartDNS介绍
SmartDNS是一个运行在本地的DNS服务器,SmartDNS接受本地客户端的DNS查询请求,从多个上游DNS服务器获取DNS查询结果,并将访问速度最快的结果返回给客户端,提高网络访问速度。 同时支持指定特定域名IP地址,并高性匹配,达到过滤广告的效果。
详情可见SmartDNS官网
本文主要实现加速访问的效果,暂不考虑其他功能。
安装SmartDNS
SmartDNS安装主要参考上述官网,本文将以OpenWrt luci为例,安装步骤如下:
- 点击系统下的软件包选项
- 在过滤器中输入smartdns,点击查找软件包
- 下载luci-app-smartdns,luci-i18n-smartdns-zh-cn,smartdns三项

大部分openwrt编译版本一般都含有此软件包
SmartDNS的基本配置
见下图:

应注意以下选项:
- 双栈IP优选,应注意您的设备是否完全支持IPv6,尤其是您所在的网络运营商是否支持
- 重定向,应选择- 重定向53端口到SmartDNS,但如果您存在其他涉及DNS的软件,应自行选择
上游服务器配置
| DNS服务器名称 | DNS服务器地址 | 
|---|---|
| 阿里 AliDNS | 223.5.5.5 | 
| 百度 BaiduDNS | 180.76.76.76 | 
| 114 DNS | 114.114.114.114 | 
| 腾讯DNS | 119.29.29.29 | 
| 山东联通 | 202.102.128.68 | 
| Google DNS | 8.8.8.8 | 
| CloudFlare | 1.1.1.1 | 
| Quad9 | 9.9.9.9 | 
最终效果如下图:

特殊设置
由于SmartDNS具有一般的DNS能力,我们可以在域名地址中进行指定的域名解析IP。
| 1 | address /home.lan/192.168.10.50 | 
如上述设置的作用是,当访问http://home.lan时,将解析成192.168.10.50,即我个人的路由器地址。
客户端设置
在Windows 10中,通过以下步骤完成DNS设置:
- 点击 - Windows 设置下的- 网络和Internet选项
- 点击 - 状态中的- 属性,如下图:

- 下滑到IP设置,点击编辑,如下图:

- IP地址填入任一未被占用的IP地址,- 子网前缀填入- 32,网关填入- 192.168.10.50,DNS服务器填入- 192.168.10.50,点击- 保存
测试
测试方法1:
打开浏览器,输入http://home.lan,如果生效可以直接访问到软路由主页
测试方法2:
打开cmd,输入nslookup baidu.com,如果设置正确则结果如下图:

配置正确返回的IP地址仅有一个,若返回多个则配置不正确