国庆节快乐,一个人在屋子里带了一天,多少有点浪费假期了,对付着又提交了一遍cv/ps/rl,真心憋不出来,晚上来补一篇blog吧。

前言

越是忙碌紧张的时候,电脑越是好玩,所以前两天才想起来寝室的R7000为什么不多拨呢,如果可以多拨的话,以后可以用软路由更多倍数的多拨,于是开始尝试,可以说是成功了,但是效果并不好,具体体现在只有第一次多拨速度叠加了,也就是成功了,但是后面再多拨,就失效了,即使双wan都显示已联机,其次梅林的双路线并没有高级的分流功能,导致双ip会让网页浏览等日常使用受到影响,网页直接就打不开,但是qq微信等可用,所以后续有必要再用软路由尝试一下。

本文转载来源:
光纤带宽翻倍不花钱——新版网件R7000双拨最全新手教程
【干货】梅林终于可以多拨了R6300V2单线四拨

什么是双拨?为啥要双拨?

  “双拨”的拨,指的是拨号,这个要从modem上网的时代说起。那时用电话线上网,需要一个modem(调制解调器)来拨号,就和打电话一样,拨通网络运营商的电话号码之后,输入账号密码就可以上网了。那时的modem有56k和64k,下载速度是4-5K/s,下载一首3MB的MP3需要十几二十分钟。网络计费是按照时间来计算的,一分钟多少钱,就和打电话一样。不过上网费用=电话费+网络使用费。所以在那个年代,上网属于奢侈品消费。现在已经改为光纤上网,不再需要电话线了,但是依然需要光调制解调器(也就是光猫),光猫可以把光纤的光信号调制转换为电信号,并转换成合适的接口协议然后接入路由器或者电脑的网卡。因为光纤宽带目前依旧使用PPPoE协议,所以依然被称为“拨号”上网。不过现在的“拨号”只需要填入用户账号和密码,而不再需要拨通某个网络运营上的电话号码了。

  “双拨”在窄带和ADSL宽带的时代,指的是使用不同的电话线但使用同一个账号拨号上网,这样就可以钻空子省网费。例如我有一个包月的ADSL账号,我用家里的电话线拨号上网,然后我表弟可能在他自己家里,用他家的电话线拨号但是用我的ADSL账号密码上网,这样就可以省下一份ADSL包月的钱了。而到了光纤宽带的时代,运营商已经把用户账号和光纤绑定,你的账号在别人家的光纤上是上不了网的,所以“双拨”往往被用在利用一条光纤,拨两次号,登陆两次,以实现带宽的叠加翻倍。例如你家里有一条百兆光纤宽带,你可以分别用两台电脑通过“光猫”进行拨号上网,分别享受百兆的带宽,也可以用一台电脑拨两次号,叠加两条百兆宽带达到200M的带宽。简单一点来说,“双拨”就是为了花一条宽带的钱享受两条宽带的服务。

双拨有哪些要求

​ 实现双拨的前提,首先是网络运营商没有对一个账号同时登陆做出限制。以我这里当地的运营商为例,移动宽带不允许同一个宽带账号同时登陆多次的情况出现,也就是一个账号只能登陆一次,假如同时出现大于一次的登陆,就被认为是违规的。所以在移动宽带上,是不要想着可以“双拨”的。但是电信的宽带则没有这样的限制,所以使用电信光纤宽带可以实现“双拨”。要想试试本地的网络运营商有无限制“双拨”,方法很简单,使用两台电脑同时直接连接光猫的LAN1和LAN3或者LAN4网络接口(LAN2一般为IPTV),然后先后用两台电脑的宽带连接进行PPPoE拨号,如果能同时登陆成功,说明运营商没有限制双拨。

双拨方法:单线/双线双拨

具体操作起来的话,双拨的方法有三种。

1、第一种是多台电脑多拨。使用两/三台电脑直接连接光猫的LAN1和LAN3/LAN4网络接口,然后先后用两/三台电脑的系统自带宽带连接进行PPPoE拨号,两/三台电脑都可以登陆成功的话,就可以实现“双拨”甚至“三拨”,以百兆光线宽带为例,使用这种方法的话,每台电脑都可以独享100M带宽。这种方法最简单,不需要使用路由器,而且每台电脑独享100M带宽,比经过路由器的多台电脑共享100M带宽更爽更省钱,但缺点是无法实现宽带的带宽叠加翻倍。

2、第二种是使用支持双拨的千兆路由器,一线双拨。一线,指的是光猫LAN口和路由器WAN口之间只需使用一条网线连接。假如是要百兆宽带实现双拨、带宽叠加翻倍的话,那么要求光猫的LAN口和路由器的WAN口都必须是千兆接口,而使用的网线必须是超五类网线(CAT5e)。不然的话即使你的带宽翻倍达到了200M,依然会受到网络接口和网线的限制,只能达到100M宽带的速度。

3、第三种是使用支持双拨的千兆/百兆路由器,双线双拨。双线,指的是光猫LAN口和路由器WAN口之间使用两条网线连接。如果路由器没有双WAN口,那么能够支持双拨的路由器一般是使用LAN1来连接光猫LAN口(或者可以自定义路由器某个LAN口来作为第二个WAN口使用)。光猫与路由器之间的两条网线可以是五类网线(200M光线宽带就需要超五类以上网线),但是路由器与电脑之间的网线就要使用超五类网线才能实现200M的带宽。

网件R7000双拨实战

这里我们的固件是380.70_0-X7.9.1,这也是Koolcenter更新的R7000的最后一个改版梅林固件版本。

单线双拨

前面已经介绍过单线双拨的网线物理连接方式。光猫LAN1口和路由器WAN口之间使用一条超五类网线连接,路由器和电脑之间使用超五类网线连接。这里需要注意一点,目前很多千兆光猫的四个LAN口并非全部都是千兆接口,很多都是只有LAN1是千兆接口,LAN2-LAN4都是只有百兆。所以这里推荐使用光猫LAN1口和路由器WAN口连接。

在设置方面也并不复杂。首先进入网件R7000设置界面,点击“外部网络”—“双线路”选项卡,把下方的“开启双线路”设置为ON,首选WAN设置为“WAN”,第二WAN设置为“Ethernet LAN”设置为“LAN Port 1”。接着勾选下方的“Multiple PPPd support”,这一步最重要,如果你的路由器里面虽然有双线路的选项但是没有“Multiple PPPd support”选项,那么就是无法支持一线双拨的,只能跳到下面看双线双拨的设置方法。然后把“双线路模式”设置为“负载均衡”,并且把“负载均衡设置”改为“1:1”,这样才能实现带宽叠加翻倍。

然后回到“互联网连接”选项卡,在“WAN类型”一项中选择WAN,“WAN联机类型”选择PPPoE,接着在下方的账号设置那里填入你的宽带用户名和密码。最后在下方的MAC地址一栏中填入你的网件R7000的MAC地址(在路由器底部的标签上面有),或者直接点击后面的“取得计算机MAC地址”把电脑网卡的MAC克隆进来也行,然后点击“应用页面设置”保存刚才所做的修改。接下来是非常关键的一步,把“WAN类型”改为“Ethernet LAN”,“WAN联机类型”同样选PPPoE,用户账号、密码都和前面一样填进去就好。下方的MAC地址必须和刚才所填的MAC地址不一样,才不会冲突,可以把上一个MAC地址略作修改就可以,例如其中任意两位随便修改一下就好。

双线双拨

一般来说,一个路由器能够支持双拨的话都能够支持双线双拨,但不一定能够支持单线双拨,所以双线双拨的硬件要求要比单线双拨低一些。在硬件连接上,要实现双线双拨,先要用两条网线把光猫的两个LAN口分别和路由器的两个WAN口连接起来,百兆宽带可以只使用五类网线,而不要求一定要超五类以上的网线。百兆以上宽带则需要用超五类以上网线。如果路由器没有双WAN口,那么一般是使用LAN1来代替WAN口连接光猫LAN口(或者可以自定义路由器某个LAN口作为第二个WAN口使用)。在路由器的具体设置上与单线双拨是基本相同的,唯一不同的就是不要勾选“Multiple PPPd support”选项,其他设置都一样。

单线N拨(未测试)

前提条件

网件路由器(这里是R6300v2) 梅林固件(我用的版本为380.65_X7.4) 已经配置好wan0口的拨号(就是已经可以正常拨号上网)

提示:最后到底能不能有效果取决于当地运营商,如果你已经有双拨经验,可以视情况开启MultiPPPd并发拨号(我这边不用)

配置阶段

我事先打开了双线路模式(虽然LAN口没插线,另一个口也没拨号),所以拨号接口是vlan2,建议大家都先把双线路模式开启,然后只配置首选WAN。(之前没有写是因为觉得这个不影响结果,如果失败了的可以回来打开试试)

你需要把梅林的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.doboX的内容,每一个都要修改

如何修改文件内容?自行百度,你可以用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不同即可)

连接

现在你系统上本身已经有一个建立了的连接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是网关地址,后面需要用到

进一步配置

配置路由表

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

可以看到四个网口负载均衡了,目标达成,具体测速效果

可选优化项目

实际上按照上面的做,测速还是没有我开头图片的那个效果,只有bt下载(多源)才会有效果

(这时候如果你直接测速 只有开头的1s会有叠加的效果,然后就掉下去了?)

如果要像我一样得出明显的测速结果,可以尝试禁用路由缓存

具体参考 openwrt论坛的 “修改内核参数,改善负载均衡效果” 帖子

要直接给命令的话就是

echo -1 > /proc/sys/net/ipv4/rt_cache_rebuild_count

温馨提示

路由器每次重启之后你都需要按照上面来一次,为了避免多次复制修改拨号文件我已经把它放到了jffs里

所以0x01部分的操作重启之后不用重做,但是其他后面的全部都要再做一次

虽然后面的操作并不繁琐,但是如果有人来把他写成自启动脚本就更好,可以实现方便的自动负载均衡多拨。

THE END
最后修改:2022 年 10 月 02 日 00 : 30
本文链接:https://www.j000e.com/Router/merlindualwan.html
版权声明:本文『R7000改版梅林380双拨』为『Joe』原创。著作权归作者所有。
转载说明:R7000改版梅林380双拨 || Joe's Blog』转载许可类型见文末右下角标识。允许规范转载时,转载文章需注明原文出处及地址。
Last modification:October 2, 2022