设为首页收藏本站

恩山无线论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
小博无线
查看: 45656|回复: 671

【2018-12-1】SmartDNS,高性能本地DNS服务器,极大优化网络访问速度,高性能广告屏蔽

    [复制链接]
发表于 2018-7-22 21:25 | 显示全部楼层 |阅读模式
本帖最后由 shenmuecn 于 2018-12-1 20:36 编辑

SmartDNS

SmartDNS是一个运行在本地的DNS服务器,SmartDNS接受本地客户端的DNS查询请求,从多个上游DNS服务器获取DNS查询结果,并将访问速度最快的结果返回个客户端,避免DNS污染,提高网络访问速度。同时支持指定特定域名IP地址,并高性匹配,达到过滤广告的效果。
支持树莓派,openwrt,华硕路由器等设备。

smartdns是移动宽带,长城宽带,用户的福音,也是出国旅游的好工具。

效果展示
以百度为例,分别用阿里DNS 223.6.6.6和SmartDNS对比。
阿里DNS结果:
baidu.com-ali.png

SmartDNS结果:

local.png

可以看到,在未使用SmartDNS时,访问百度时延在30ms左右,使用smartdns后,时延在6ms。

某P站使用阿里DNS,无法访问,使用smartDNS,可以访问。
P.png

特性
  •     多DNS上游服务器
    支持配置多个上游DNS服务器,并同时进行查询,即使其中有DNS服务器异常,也不会影响查询。
  •     返回最快IP地址
    支持从域名所属IP地址列表中查找到访问速度最快的IP地址,并返回给客户端,避免DNS污染,提高网络访问速度。
  •     支持非标准端口
    支持非53端口查询,支持TCP查询,有效避免DNS污染。
  •     特定域名IP地址指定
    支持指定域名的IP地址,达到广告过滤效果,避免恶意网站的效果。
  •     域名高性能后缀匹配
    支持域名后缀匹配模式,简化过滤配置,过滤20万条记录时间<1ms
  •     Linux多平台支持
    支持标准Linux系统(树莓派),openwrt系统各种固件,华硕路由器原生固件。
  •     支持IPV4, IPV6双栈
    支持IPV4,IPV6网络,支持查询A, AAAA记录。
  •     高性能,占用资源少
    多线程异步IO模式,cache缓存查询结果。

功能说明

  • SmartDNS接收本地网络设备的DNS查询请求,如PC,手机的查询请求。
  • SmartDNS将查询请求发送到多个上游DNS服务器,可采用标准UDP查询,非标准端口UDP查询,及TCP查询。
  • 上游DNS服务器返回域名对应的Server IP地址列表。SmartDNS检测与本地网络访问速度最快的Server IP。
  • 将访问速度最快的Server IP返回给本地客户端。

界面预览

UI.png

使用下载配套安装包

下载配套版本的SmartDNS安装包,对应安装包配套关系如下。(请访问https://pymumu.github.io/smartdns/查看最新配套表)
系统安装包说明
标准Linux系统(树莓派)smartdns.xxxxxxxx.armhf.deb支持树莓派Raspbian stretch,Debian 9系统。
华硕原生固件(optware)smartdns.xxxxxxx.mipsbig.ipk支持MIPS大端架构的系统,如RT-AC55U, RT-AC66U.
华硕原生固件(optware)smartdns.xxxxxxx.mipsel.ipk支持MIPS小端架构的系统,如RT-AC68U。
openwrt 15.01smartdns.xxxxxxxx.ar71xx.ipk支持AR71XX MIPS系统。
openwrt 15.01smartdns.xxxxxxxx.ramips.ipk支持MT7260小端等路由器
openwrt 18.06smartdns.xxxxxxxx.mips_24kc.ipk支持AR71XX MIPS系统。
openwrt 18.06smartdns.xxxxxxxx.mipsel_24kc.ipk支持MT7260小端等路由器
openwrt 18.06smartdns.xxxxxxxx.x86-64.ipk支持x86-64路由器
openwrt LUCIluci-app-smartdns.xxxxxxxxx.xxxx.all.ipkopenwrt管理统一界面

openwrt系统CPU架构比较多,请查看CPU架构后下载,CPU架构可在路由器管理界面找到,查看方法:
  • 登录路由器,点击System->Software,点击Configuration Tab页面,在opkg安装源中可找到对应软件架构,下载路径中可找到,如下,架构为ar71xx

src/gz chaos_calmer_base http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/base

使用说明
https://pymumu.github.io/smartdns/

下载:下载链接

版本说明:
如果没有你要的版本,请在回复中留言,注明一下信息:
【路由器型号】:
【CPU型号】:
【openwrt适用的固件路径】:(https://downloads.openwrt.org/releases/目录中给出)
【opkg的安装源信息】:(登录路由器,点击System->Software,点击Configuration Tab页面的内容)


更新日志
【2018/12/1】
  • 增加TCP查询服务器。
  • 增加openwrt下的重定向模式配置。
  • 增加dns查询审计日志功能,记录dns查询请求。(请在自定义配置中增加配置项)
  • 修改几处BUG。



【2018/11/3】
  • 增加TLS查询支持。
  • 增加X86版本的支持。
  • 升级配套openwrt18.06
  • 修改进程可能死循环的BUG。
  • 修改进程可能异常退出的BUG。


【2018/9/4】
  • 增加关闭IPV6的功能。
  • 优化部分日志打印。


【2018/8/17】
  • 增加伪造毒IP地址过滤功能(bogus-nxdomain参数)
  • 增加支持arm_cortex-a15_neon-vfpv4
  • 修正一处代码BUG。
  • 修正潜在的一个并发问题。


【2018/8/9】
  • LUCI界面增加smartDNS自定义参数界面。
  • 增加conf-file参数。
  • 修改address匹配规则a,按域名匹配(之前版本后缀匹配)
  • 解决X86-64系统下定时器失效的错误。
  • 解决openwrt错误日志打印问题。


【2018/8/7】
1. 解决LEDE系统下,重启后,redirect未生效的问题。
2. 增加IPV6场景下的端口重定向。
3. 增加重定向是否生效的检测。并提示。


【2018/8/3】
1. 解决华硕路由器中服务重启问题。
2. 优化,当域名只有一个IP的情况下,不做检测。
3. 增加arm_cortex-a9_vfpv3的支持
4. 解决界面服务状态显示未刷新的问题
5. 优化指导书,刷新检查服务是否生效的方法
6. 界面默认启用redirect

注意:之前版本升级到此版本,需要重启路由器,否则服务状态将获取失败。

【2018/7/31】
1. 增加配置smartdns服务器名字,完善帮助。
2. 增加中文界面.

【2018/7/30】
1.增加x86_64, arm_cortex_a9, arm_cortex_a7的支持


【2018/7/25】
1. 解决smartdns服务在路由器重启时没启动的问题。

【2018/7/24】
1. 解决LEDE安装时的segment falut错误。
2. 支持X86-64系统













评分

参与人数 15恩山币 +17 收起 理由
upan + 1 面对这种帖子,我内心复杂,真不知道说什么好……
yinhao + 1 强大的恩山!(以下重复1万次)
whoweasn + 2 率全体恩山路由党以及党魁向你学习!
北方困难群众 + 1 率全体恩山路由党以及党魁向你学习!
geekman + 2 率全体恩山路由党以及党魁向你学习!
1324881770 + 1 强大的恩山!(以下重复1万次)
心太高命太薄 + 2 率全体恩山路由党以及党魁向你学习!
simenty + 1 好东西,有高通IPQ40XX的吗&amp;gt;?
edmondw + 1 不要怂、就是干
Windows10 + 1 一看就是觉得高端、大气、上档次!
炽热太阳 -1 网件3800安装不过,可能是我笨了点!
lanren + 1 强大的恩山!(以下重复1万次)
tzxinqing + 2 移动的福利
5112075 + 1 移动的福利
cdnaa + 1 强大的恩山!(以下重复1万次)

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-22 21:39 | 显示全部楼层

在准备编译环境,后面会有。

你要支持的x86_64的标准Linux,还是x86_64的openwrt?

点评

centos什么时候可以部署  详情 回复 发表于 2018-10-14 15:24
当然openwrt拉  详情 回复 发表于 2018-7-22 21:44
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-23 12:01 | 显示全部楼层
我是路人乙 发表于 2018-7-23 11:59
K2T openwrt,内核4.9.107。opkg install提示Segmentation fault错误。

是不是没有下对版本。大小端不要搞错,openwrt的版本不要搞错。

点评

K2T是Qualcomm Atheros QCA956X AR71xx和mips_24kc无法安装,又把剩下的所有都试了,都不能安装。  详情 回复 发表于 2018-7-23 13:13
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-23 12:03 | 显示全部楼层
dongfangy2011 发表于 2018-7-23 09:14
不晓得效果怎么样,特别是被监控

免费,功能不限制,无后门,如担心,建议不要使用。
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-23 12:04 | 显示全部楼层
我是路人乙 发表于 2018-7-23 10:25
期待开源,这个选择方式和dnschooser很像

嗯,看了下dnschooser,确实差不多,这个后面还会增加其他功能的,在规划中。
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-23 12:05 | 显示全部楼层
QQ66 发表于 2018-7-23 11:42
支持一下,看起来和pcap-dnsproxy的功能差不多

不同,pcap-dnsproxy是按规则过滤避免DNS污染,这个是动态检测,并且能达到提升访问速度的效果。pcap是不行的
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-23 12:06 | 显示全部楼层

免费,功能不限制,无后门,暂不开源,如担心,建议不要使用
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-24 09:09 | 显示全部楼层

编译了x86-64的版本,看看能不能用。

点评

/tmp$ opkg install smartdns.1.2018.07.24-0807.x86-64.ipk Unknown package 'smartdns'. Collected errors: * pkg_hash_fetch_best_installation_candidate: Packages for smartdns found, but incompatible w  详情 回复 发表于 2018-7-24 13:20
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-24 15:03 | 显示全部楼层
cdnaa 发表于 2018-7-24 13:11
目前最新版Pangubox 安装失败了..
系统是PandoraBox-ralink-mt7620-newifi-mini-2018-07-21-git-73ad65611 ...

查了下,潘多拉的应该是15.05的openwrt,不是lede的,你可以安装这个看一下:smartdns.1.2018.07.24-1455.mipsel_24kec_dsp.ipk

点评

换成ramips还是出错了。。 要不用它的SDK编译试试看?谢谢 https://downloads.pangubox.com/pandorabox/18.07/targets/ralink/  详情 回复 发表于 2018-7-24 15:55
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-24 15:29 | 显示全部楼层
505575853 发表于 2018-7-24 15:11
https://github.com/holmium/dnsforwarder/blob/6/default.config   其实和dnsforwarder很像,一个给ss坐上 ...

这个不只是防止DNS污染,这个会检测DNS解析后的IP访问速度的。
一个域名的多个IP地址,返回客户端的只有一个访问速度最快的IP地址。
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-24 19:13 | 显示全部楼层
sspg33 发表于 2018-7-24 19:08
那用这个插件有什么意义?

都说了,是找最快的IP给你,一般情况下一个域名会有多个IP地址的,你的手机,电脑,是找任意一个,但这个并不一定是最快的,这个软件就是帮你找到最快的IP返回的手机,电脑。

也就是你玩一游戏可能没用到最快的那个IP,这个软件可以帮你找到最快的那个IP,这样你玩游戏就快了。

但如果服务器只有一个IP,这个软件就没有用。

点评

如果服务器只有一个IP的话,那应该是应用解析最快的那个DNS吧? 那也有用处啊~~~  详情 回复 发表于 2018-8-5 22:59
懂了 !~~~~~~~~~~~~~~~~~~~~~~~~  详情 回复 发表于 2018-7-24 19:33
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-26 14:15 | 显示全部楼层
sspg33 发表于 2018-7-26 13:39
我的9341 也是和你一样  刚才没注意 还以为装好了  看了一下  也是NOT RUNNING

1. 看看是不是5353端口被占用了,比运行了china-dns .
2. 刷新下页面。
3. 看看/usr/sbin/smartdns -h是否可执行。如果不可执行,那就是包有问题,反馈下。

点评

smartdns.1.2018.09.04-0006.arm_cortex-a15_neon-vfpv4.ipk luci.ipk 均安装成功,但是一直无法启动,运行/usr/sbin/smartdns -h 提示-ash: /usr/sbin/smartdns: not found ,但是该目录下有该文件  详情 回复 发表于 2018-9-8 20:01
1 固件里没有集成china-dns功能 应该是没运行的。 2刷新了 还是NOT 3不知道在哪里执行!~说清楚点可好 新手!~  详情 回复 发表于 2018-7-26 19:02
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-28 11:42 来自手机 | 显示全部楼层
329355990 发表于 2018-7-28 10:13
刷了梅林的k3能用吗??怎么样用!下载那一个!!

梅林没有支持,没设备
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-28 11:43 来自手机 | 显示全部楼层
secowu 发表于 2018-7-28 09:27
mtk mt7261没有啊?

mt7620的就可以,通用的
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-7-31 15:04 来自手机 | 显示全部楼层
gg_1990 发表于 2018-7-31 11:59
能支持LEDE吗  X86软路由  用OP的不能安装

什么错误,目前只有先x86-64的
我的恩山、我的无线 The best wifi forum is right here.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|Archiver|恩山无线论坛 ( 苏ICP备05084872号-1 )  

GMT+8, 2018-12-15 14:39

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表