只是测速点是深圳,我家是广州电信50M
关于(双)多拨,大家应该都有所耳闻,详细我不多说,大意就是可以通过多次拨号来叠加网速 让你的带宽高于签约速度
而多拨的教程网上也多如牛毛,有各种各样的方法,但是今天我要发的教程是我在网上从没找到过的 梅林固件的多拨教程
大家一直存在一个误区就是梅林只支持双拨,但是实际上梅林完全可以实现多拨,只是没有人发出过教程(也许有人做过 但是我没搜到)
至于为什么我不用OpenWrt多拨,显而易见的是:openwrt对于网件路由器的支持很差,没有硬件nat,也没有 5G WIFI ac支持(R7000甚至没有无线)
so,经过三天的研究,终于在今天搞定了,把方法发出来让大家都能享受梅林多拨~
因为这是一篇教程而不是个人记录,所以我会直接把结果和原理发出来,而不会把自己探索的过程写出来。
0x00 前提条件
网件路由器(这里是R6300v2) 梅林固件(我用的版本为380.65_X7.4) 已经配置好wan0口的拨号(就是已经可以正常拨号上网)
提示:最后到底能不能有效果取决于当地运营商,如果你已经有双拨经验,可以视情况开启MultiPPPd并发拨号(我这边不用)
0x01 配置阶段
你需要把梅林的SSH打开,系统管理-系统设置-Enable SSH-LAN Only
也要启用JFFS,系统管理-系统设置-JFFS Enable JFFS custom scripts and configs-是
使用putty或者别的什么ssh软件连接上路由器,用户名和密码与web一致(ssh连接教程请自行百度)
cp /tmp/ppp/options.wan0 /jffs/options.duobo1 cp /tmp/ppp/options.wan0 /jffs/options.duobo2 cp /tmp/ppp/options.wan0 /jffs/options.duobo3
执行以上命令(如果需要更多次拨号就以此类推)
然后修改/jffs/options.duoboX的内容,每一个都要修改
如何修改文件内容?自行百度,你可以用vim编辑,也可以用WinSCP连接编辑
noauth refuse-eap user '用户名' password '密码' nomppe nomppc plugin rp-pppoe.so nic-vlan2 mru 1492 mtu 1492 persist holdoff 10 maxfail 0 usepeerdns ipcp-accept-remote ipcp-accept-local noipdefault ktune default-asyncmap nopcomp noaccomp novj nobsdcomp nodeflate lcp-echo-interval 6 lcp-echo-failure 10 lcp-echo-adaptive unit 0 linkname duobo1
实际上,上面那些都不需要管,只需要把最后一行的linkname修改为duoboX就行(每一个都要修改,其实只要保证每个linkname不同即可)
0x02 连接!
现在你系统上本身已经有一个建立了的连接ppp0(就是系统自带的wan0拨出去的),我们再来拨多几个
/usr/sbin/pppd file /jffs/options.duobo1 /usr/sbin/pppd file /jffs/options.duobo2 /usr/sbin/pppd file /jffs/options.duobo3
此部分操作,如果是需要并发拨号的请同时加上 /usr/sbin/pppd file /tmp/ppp/options.wan0 在第一行
然后等待拨号成功 运行 ifconfig 命令
当你看到有多个ppp(有多少个以你自己拨的数量为准)全部上线并且获取到ip后 就可以进行下一步操作了
请记住图中的P-t-P:14.147.28.1中的14.147.28.1是网关地址,后面需要用到
0x03 进一步配置
配置路由表
ip route del default ip route add default nexthop via 14.147.28.1 dev ppp0 weight 1 \ nexthop via 14.147.28.1 dev ppp1 weight 1 \ nexthop via 14.147.28.1 dev ppp2 weight 1 \ nexthop via 14.147.28.1 dev ppp3 weight 1 ip route flush cache
请把里面的 via 14.147.28.1 改为你前面记住的网关地址,dev ppp3依据你拨号数量以此类推
添加SNAT(第一行是清空默认表防止干扰)
iptables -t nat -F POSTROUTING iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp1 -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp2 -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp3 -j MASQUERADE
需要修改-s 192.168.1.0/24为你实际的内网段(默认就是这个 如果不知道就不要改了,改过的人自然知道怎么改)
到这里配置已经全部结束了,上网一段时间后通过 iptables -t nat -L POSTROUTING -nv 来查看状态
Chain POSTROUTING (policy ACCEPT 119 packets, 38504 bytes) pkts bytes target prot opt in out source destination 1713 115K MASQUERADE all -- * ppp0 192.168.200.0/24 0.0.0.0/0 2173 161K MASQUERADE all -- * ppp1 192.168.200.0/24 0.0.0.0/0 1631 105K MASQUERADE all -- * ppp2 192.168.200.0/24 0.0.0.0/0 1113 71012 MASQUERADE all -- * ppp3 192.168.200.0/24 0.0.0.0/0
可以看到四个网口负载均衡了,目标达成,具体测速效果就是本文开头的图
0x04 可选优化项目
实际上按照上面的做,测速还是没有我开头图片的那个效果,只有bt下载(多源)才会有效果
(这时候如果你直接测速 只有开头的1s会有叠加的效果,然后就掉下去了?)
如果要像我一样得出明显的测速结果,可以尝试禁用路由缓存
具体参考 http://www.openwrt.org.cn/bbs/forum.php?mod=viewthread&tid=7538
要直接给命令的话就是
echo -1 > /proc/sys/net/ipv4/rt_cache_rebuild_count
0x05 温馨提示
路由器每次重启之后你都需要按照上面来一次,为了避免多次复制修改拨号文件我已经把它放到了jffs里
所以0x01部分的操作重启之后不用重做,但是其他后面的全部都要再做一次
虽然后面的操作并不繁琐,但是如果有人来把他写成自启动脚本就更好,可以实现方便的自动负载均衡多拨。
http://koolshare.cn/thread-123990-1-1.html 论坛大佬bbis改进的这个可否做个视频或者详细的教程,毕竟我只会连putty,还有就是我在r8000上面简单的双拨已经成功了。