blog icon indicating copy to clipboard operation
blog copied to clipboard

OpenWrt/LEDE 利用MWAN3多线多拨配置

Open luckyyyyy opened this issue 8 years ago • 2 comments

OpenWrt/LEDE是目前大部分联发科、博通、高通解决方案的路由器固件,可玩性较高,基于Linux,具体内容请各位自行查阅资料,这里主要记录个人的一些配置过程。

多线多拨主要是用于多运营商,目前由于我个人住所有移动和电信两条线路,电信的带宽较小,希望只用于游戏,移动的带宽可以拿来看视频或其他娱乐,希望通过MWAN3负载均衡来达到预期的效果。

接下来直接上配置过程,由于个人很少使用Luci,如果希望使用luci的同学也可以根据本文反推。

安装mwan3

opkg update
opkg install mwan3
# 使用luci的同学可以安装luci界面
opkg install luci-app-mwan3

Switch配置

交换机配置这里,主要是将一个LAN口作为WAN使用,这样使路由器可以拥有两个WAN口,具体需要看各种解决方案提供的交换机方案,以下是NETGEAR R7800的配置,大部分联发科和此例有非常大的区别,建议新手通过luci观察后再进行配置。

配置文件路径/etc/config/network

config switch
    option name 'switch0'
    option reset '1'
    option enable_vlan '1'

config switch_vlan
    option device 'switch0'
    option vlan '1'
    option vid '1'
    option ports '1 2 4 6'

config switch_vlan
    option device 'switch0'
    option vlan '2'
    option vid '2'
    option ports '0 5 6t'

config switch_vlan
    option device 'switch0'
    option vlan '3'
    option vid '3'
    option ports '3 6t'

Interface配置

这就简单了,由于lan已经存在,我们就不需要在创建,一般长下面这样。

配置文件路径/etc/config/network

config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

下面我们需要创建两个wan接口,分配到不同的端口上,并且需要指定不同的gateway metric, 注意下面实例配置中的ifname和metric,ifname必须对应上述交换机配置的位置,使其可以正确工作。

config interface 'cmcc'
    option ifname 'eth0'
    option _orig_ifname 'eth0'
    option _orig_bridge 'false'
    option proto 'pppoe'
    option ipv6 'auto'
    option metric '41'
    option username '********'
    option password '********'

config interface 'ctcc'
    option ifname 'eth1.3'
    option _orig_ifname 'eth0'
    option _orig_bridge 'false'
    option proto 'pppoe'
    option ipv6 'auto'
    option metric '42'
    option username '********'
    option password '********'

如果完成以上步骤,网络应该已经可以通了,两个接口分别可以使用PPPoE取到对应的公网IP。 但是目前还没有配置均衡,所以也没法让对应的出口走对应的线路。 这里提醒一句,如果两条线是不同的运营商就不要想着带宽叠加了,因为由于DNS关系,不同的运营商都有最优的DNS,由于浏览器等软件都有缓存策略,反而会遇到一些意外情况的发生,例如电信走移动DNS或移动走电信DNS,都会导致解析出的IP很奇怪,当然如果仅仅是迅雷等P2P下载是没有关系的,可以完美叠加网速。

mwan3负载均衡配置

我们可以删除mwan3的示例配置文件然后一步步来重新配置。

配置文件路径/etc/config/mwan3

新建interface

我们需要新建两个和上述network中一致的interface,具体配置如下,配置项都是字面意思,可以为不同的运营商配置不同的track ip。

config interface 'cmcc'
    option enabled '1'
    option reliability '1'
    option count '1'
    option timeout '2'
    option interval '5'
    option down '3'
    option up '8'
    list track_ip '211.140.13.188'
    list track_ip '211.140.188.188'

config interface 'ctcc'
    option enabled '1'
    option reliability '1'
    option count '1'
    option timeout '2'
    option interval '5'
    option down '3'
    option up '8'
    list track_ip '223.5.5.5'
    list track_ip '114.114.114.114'

新建Member

Member用于配置每个接口的分流比例,做一个简单的配置即可,这里我们没有特殊的需求。

config member 'cmcc_m1_w1'
    option metric '1'
    option weight '1'
    option interface 'cmcc'

config member 'ctcc_m1_w1'
    option metric '1'
    option weight '1'
    option interface 'ctcc'

新建Policy

策略就简单了,我们需要建三个策略,分别是balanced,only_ctcc,only_cmcc。

config policy 'balanced'
    list use_member 'ctcc_m1_w1'
    list use_member 'cmcc_m1_w1'
    option last_resort 'unreachable'

config policy 'only_ctcc'
    list use_member 'ctcc_m1_w1'
    option last_resort 'unreachable'

config policy 'only_cmcc'
    list use_member 'cmcc_m1_w1'
    option last_resort 'unreachable'

新建Rule

路由策略就是我们最终的杀手锏了,在这里可以对不同的APP,不同的IP,配置不同的策略,balanced亦或是only_ctcc或是only_cmcc,但是注意他们的先后顺序,最先的会先被匹配。

config rule 'hz_sd'
    option proto 'all'
    option sticky '0'
    option use_policy 'only_ctcc'
    option dest_ip '202.91.240.0/24,202.75.216.0/24'

config rule 'jx3'
    option sticky '0'
    option use_policy 'only_ctcc'
    option proto 'all'
    option dest_ip '121.14.64.0/24,121.14.23.0/24,121.14.28.0/24'

config rule 'icmp'
    option proto 'icmp'
    option sticky '0'
    option use_policy 'only_ctcc'

config rule 'yy'
    option dest_port '8443:8460'
    option proto 'udp'
    option sticky '0'
    option use_policy 'only_ctcc'

config rule 'default_rule'
    option dest_ip '0.0.0.0/0'
    option proto 'all'
    option sticky '0'
    option use_policy 'only_cmcc'

luckyyyyy avatar Jun 14 '17 17:06 luckyyyyy

博主有同时使用ssr吗,我在LEDE上打开ssrlibev后,网速就跌回原速度了,请教一下😂

Icetard avatar Jun 28 '18 15:06 Icetard

没有使用ssr,我一直用的ss,没有任何证据说明协议好破解特征容易判断就会被墙或干预,是用的阿里云的HK自建,很稳定,并没有降速的情况。 @LaboratoryK

luckyyyyy avatar Jul 08 '18 17:07 luckyyyyy