Openwrt 下广告过滤插件 adbyby 对网速影响的研究 ——主要是软 nat 不给力

2015-04-03 12:29:06 +08:00
 coffeecat

电信100Mbps光纤,主路由是netgear wndr4300,刷op前后家里的nas迅雷离线均可以达到11MB/s下载速度,但是路由装上adbyby以后,迅雷离线平均速度不会超过6.2MB/s(50Mbps),经过分析测试,原因在于如下语句:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8118

由于op目前不支持硬件nat,上述语句的nat是软nat实现,性能较差。
由于路由上还有ss,所以一般不会用pc主机上迅雷下东西,我将nas ip加入了ss例外列表,同时为了下载提速,将nas ip加入不使用adbyby的nat转发的ip段。
解决方案:
将局域网分成2个子网,掩码25,低地址段使用静态ip,分配其中一个给nas用于离线下载,高地址段使用dhcp,通过adbyby的nat转发proxy实现广告过滤。路由器、nas和客户机的掩码设置为24,这样可以互相访问,千兆局域网。
首先在luci里面‘网络’-‘接口’-‘lan’-‘DHCP服务器’-‘开始’,将dhcp起始段设为128。

将/etc/rc.local里面的语句修改为:
……
iptables -t nat -A PREROUTING -p tcp -s 192.168.1.128/25 --dport 80 -j REDIRECT --to-ports 8118
……
重启路由。
这样,将终端的ip设为小于128的时候,adbyby广告过滤功能对其无效,下载速度100M,当终端大于等于128时,adbyby广告过滤功能又对其开启,下载速度50M。

39184 次点击
所在节点    路由器
42 条回复
ixufuyang
2017-05-21 19:58:37 +08:00
@pig1983 网件的 3800 啊
h0r1z0n
2017-06-07 10:56:16 +08:00
这个方法不错 期待 koolproxy 继续完善

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/181316

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX