设为首页收藏本站

恩山无线论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 289|回复: 9

64bit改进版dnsmasq-fastlookup,n2n_v2_9344-4,dns2socks_1.8

[复制链接]
发表于 2017-8-9 09:17 | 显示全部楼层 |阅读模式
本帖最后由 bca3218 于 2017-8-9 09:25 编辑


原帖 http://v2ex.com/t/172010
大家有没有发现dnsmasq配置文件里的ipset,address,server条目一多,路由器CPU使用率就上去了。往路由器/etc/dnsmasq.d/目录下放一个含几百上千条server的配置文件,试试就知道了。

这里介绍的是针对这个问题的改进版。原版dnsmasq处理这几个配置项的方法是遍历链表,一个dns查询可能要多次遍历一个几千上万项的链表,自然需要匹配的域名越多越慢。这个部分现在改成查询hash表,效果很明显:
在一个32M内存/500MHzCPU路由器上用dnsblast作压力测试,原版dnsmasq每秒接受90-100个dns请求时CPU使用率就飙升到近100%, 而改进版这时CPU使用率在20%上下。我估计如果配置文件再大些,可能每秒几十个甚至十几个dns查询就能让原版dnsmasq爆表。

下载在https://github.com/infinet/dnsmasq ,有适用于OpenWrt 12.09和14.07的预编译包。下载后复制到路由器/tmp目录,先opkg remove dnsmasq删除原来的dnsmasq,然后opkg install /tmp/xxxx.ipk,安装前最好备份一下/etc/dnsmasq.conf和/etc/config/dhcp。


简单编译下载
opkg install --force-depends      在安装、删除软件包时无视失败的依赖
opkg install --force-downgrade      允许 opkg 降级软件包

x64.zip (328.67 KB, 下载次数: 3)
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-8-9 09:20 | 显示全部楼层
一直用这个fastlookup过滤广告hosts,已经离不开了,之前编译过32位的,现在换64位系统了,重新编译
我的恩山、我的无线 The best wifi forum is right here.
发表于 2017-8-9 09:41 | 显示全部楼层
这个hash查询的dnsmasq实在是不错的,可惜有少许bug,时间一长会无法查询dns

点评

哦,这样吗? 我x86时候用2.72-5版本一年多没这个问题嘢。277test4版本运行了3天,暂时还没出现这个问题  详情 回复 发表于 2017-8-9 09:50
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-8-9 09:50 | 显示全部楼层
sadoneli 发表于 2017-8-9 09:41
这个hash查询的dnsmasq实在是不错的,可惜有少许bug,时间一长会无法查询dns

哦,这样吗?
我x86时候用2.72-5版本一年多没这个问题嘢。277test4版本运行了3天,暂时还没出现这个问题
我的恩山、我的无线 The best wifi forum is right here.
发表于 2017-8-12 16:58 | 显示全部楼层
楼主,有没有dnsmasq-full_2.76-6_x86_64.ipk这个LEDE的插件,找遍了官方源和第三方源都没有。

点评

dnsmasq哪有什么插件  详情 回复 发表于 2017-8-12 21:14
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-8-12 21:14 | 显示全部楼层
本帖最后由 bca3218 于 2017-8-12 21:15 编辑
甜橙飘飘 发表于 2017-8-12 16:58
楼主,有没有dnsmasq-full_2.76-6_x86_64.ipk这个LEDE的插件,找遍了官方源和第三方源都没有。

lede的dnsmasq最低就是2.77了吧。再低去openwrt找

点评

openwrt最新的是2.76-1,可能里面的配置参数和LEDE之前集成的2.76-6有差异,装在koolshare的LEDE X64 2.0上还是有点小问题。  详情 回复 发表于 2017-8-13 14:16
我的恩山、我的无线 The best wifi forum is right here.
发表于 2017-8-13 14:16 | 显示全部楼层
bca3218 发表于 2017-8-12 21:14
lede的dnsmasq最低就是2.77了吧。再低去openwrt找

openwrt最新的是2.76-1,可能里面的配置参数和LEDE之前集成的2.76-6有差异,装在koolshare的LEDE X64 2.0上还是有点小问题。

点评

其实KS是没夜版编译的好多软件都不太稳定,我之前也是用KS的lede,换回官方LEDE17.01.2用很稳定,而且想安装什么软件都不怕与内核不匹配了  详情 回复 发表于 2017-8-14 09:06
我这个2.77test4装koolshare试过没有?我之前用KS安装了一下没用多久就换回官方LEDE用了  详情 回复 发表于 2017-8-14 09:01
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-8-14 09:01 | 显示全部楼层
甜橙飘飘 发表于 2017-8-13 14:16
openwrt最新的是2.76-1,可能里面的配置参数和LEDE之前集成的2.76-6有差异,装在koolshare的LEDE X64 2.0 ...

我这个2.77test4装koolshare试过没有?我之前用KS安装了一下没用多久就换回官方LEDE用了

点评

2.77的dnsmasq都会崩溃,只能降级的。  详情 回复 发表于 2017-8-14 16:41
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-8-14 09:06 | 显示全部楼层
甜橙飘飘 发表于 2017-8-13 14:16
openwrt最新的是2.76-1,可能里面的配置参数和LEDE之前集成的2.76-6有差异,装在koolshare的LEDE X64 2.0 ...

其实KS是每夜版编译的好多软件都不太稳定,我之前也是用KS的lede,换回官方LEDE17.01.2用很稳定,而且想安装什么软件都不怕与内核不匹配了
我的恩山、我的无线 The best wifi forum is right here.
发表于 2017-8-14 16:41 | 显示全部楼层
bca3218 发表于 2017-8-14 09:01
我这个2.77test4装koolshare试过没有?我之前用KS安装了一下没用多久就换回官方LEDE用了

2.77的dnsmasq都会崩溃,只能降级的。
我的恩山、我的无线 The best wifi forum is right here.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2017-8-22 13:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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