http://www.right.com.cn/forum/forum.php?mod=viewthread&tid=178799

# This is a mwan3 example config. For mwan3 to work you will need at least这是mwan3的设置示例。至少需要以下几项才能运行mwan3)
#
# - 2 interfaces(2个接口)
# - 2 members(2个成员)
# - 1 policy(1个策略)
# - 1 rule(1条规则)
#
# First define all your wan interfaces. Interface name must match with the
# name used in your network configuration:
(首先要设置所有的wan口,wan口的名字必须跟network配置文件中的wan口名字一致)
config 'interface' 'wan1'
        option 'enabled' '1'
        list 'track_ip' '8.8.4.4'(这些IP都是测试IP,验证是否能ping的通。这里有4个,前两个都是google提供的免费DNS服务器,国内访问应该比较慢。)
        list 'track_ip' '8.8.8.8'
        list 'track_ip' '208.67.222.222'
        list 'track_ip' '208.67.220.220'
        option 'reliability' '2'(可靠性,测试以上IP的可靠性,必须是有响应的链接的个数。简单说就是要求上面的ip几个能ping通)
        option 'count' '1'(ping几次)
        option 'timeout' '2'(ping后如果超时,超时几秒)
        option 'interval' '5'(多次ping之间的间隔时间)
        option 'down' '3'(出现几个ping不通时就认定该wan口掉线了)
        option 'up' '8'(出现几个ping能成功时就认定已经掉线的wan口又上线了)

config 'interface' 'wan2'
        option 'enabled' '1'
        list 'track_ip' '8.8.8.8'
        list 'track_ip' '208.67.220.220'
        option 'reliability' '1'
        option 'count' '1'
        option 'timeout' '2'
        option 'interval' '5'
        option 'down' '3'
        option 'up' '8'

# Next define a member and configure metric and weight values for this member.(接着设置一个成员的权重和跃点值)
# Each interface can have multiple member definitions. Give each member a correct(每一个接口可以含有多重成员定义。每一个成员名称必须有正确的名称)
# name (A-Z, a-z, 0-9, "_" and no spaces).

config 'member' 'wan1_m1_w3'
        option 'interface' 'wan1'
        option 'metric' '1'(1-1000的范围)
        option 'weight' '3'(1-1000的范围)

config 'member' 'wan1_m2_w3'
        option 'interface' 'wan1'
        option 'metric' '2'
        option 'weight' '3'

config 'member' 'wan2_m1_w2'
        option 'interface' 'wan2'
        option 'metric' '1'
        option 'weight' '2'

config 'member' 'wan2_m2_w2'
        option 'interface' 'wan2'
        option 'metric' '2'
        option 'weight' '2'

# After that create a routing policy. A routing policy consist of one or more(然后创建一条路由策略。包括一个或者几个成员。每个策略必须有正确的名称。可以创建多重策略,以至于可以使不同的通信走不同的主/次wan口)
# members. Give each policy a correct name (A-Z, a-z, 0-9, "_" and no spaces). You 
# can create multiple policies, so that it is possible for different traffic to
# have different primary and/or backup interfaces.

config 'policy' 'wan1_only'(只走wan1)
        list 'use_member' 'wan1_m1_w3'

config 'policy' 'wan2_only'(只走wan2)
        list 'use_member' 'wan2_m1_w2'

config 'policy' 'wan1_wan2_loadbalanced'(wan1、wan2负载平衡)
        list 'use_member' 'wan1_m1_w3'
        list 'use_member' 'wan2_m1_w2'

config 'policy' 'wan1_pri_wan2_sec'(wan1主,wan2次)
        list 'use_member' 'wan1_m1_w3'
        list 'use_member' 'wan2_m2_w2'

config 'policy' 'wan2_pri_wan1_sec'(wan2主,wan1次)
        list 'use_member' 'wan1_m2_w3'
        list 'use_member' 'wan2_m1_w2'

# And to finish the config define your traffic rules. Rules are matched in top to(最后来设置通信规则。他是从你设置的规则由上到下依次匹配,如果你定义的一条规则匹配上了,后面的规则都将忽略。如果平衡选项已经设置,mwan3将使每一个新的包走同一个目标主机地址来到达负载平衡,如果没有设置,那么mwan3会根据目标地址自动负载平衡)
# bottom order. If you define a rule and it matches, all following rules are ignored.
#
# If the option equalize is set, mwan3 will load-balance each new session to the same
# host. If not set, it will load-balance based on destination.

config 'rule'
        option 'src_ip' '192.168.21.0/24'(源IP,支持网段的表示方法)
        option 'proto' 'tcp'(指定协议)
        option 'dest_port' '563'(目标端口)
        option 'use_policy' 'wan2_only'(指定走上面设定的哪个策略)

config 'rule'
        option 'src_ip' '192.168.21.0/24'
        option 'proto' 'tcp'
        option 'dest_port' '995'
        option 'use_policy' 'wan1_only'

config 'rule'
        option 'dest_ip' '88.154.0.0/16'(目标IP)
        option 'proto' 'tcp'
        option 'dest_port' '1024:65535'(1024-65535的所有端口)
        option 'equalize' '1'(1为选中。如果选中,mwan3将使每一个新的包走同一个目标主机地址来到达负载平衡。如果没有,那么mwan3会根据目标地址自动负载平衡)

option 'use_policy' 'wan1_wan2_loadbalanced'

config 'rule'
        option 'dest_ip' '77.11.41.0/24'
        option 'proto' 'tcp'
        option 'dest_port' '1024:65535'
        option 'use_policy' 'wan1_pri_wan2_sec'

config 'rule'
        option 'dest_ip' '112.136.0.0/16'
        option 'proto' 'udp'
        option 'dest_port' '5352'
        option 'use_policy' 'wan2_pri_wan1_sec'

config 'rule'
        option 'dest_ip' '0.0.0.0/0'
        option 'use_policy' 'wan1_wan2_loadbalanced'

http://blog.csdn.net/liubiggun/article/details/50805706

  搞多线多拨的时候,手上刚好有一个8M和一个22M的移动宽带,8M的准备不用了,但是浪费可是很罪恶的,于是想到多线多播,并使用mwan3来负载均衡。其实mwan3就是是用iptables和iproute2协同作用达到负载均衡的。iptables主要是打mark,而iproute2则是根据mark走不同的路由表。源码是由shell写的,清晰简单。这里主要记录一下配置过程。 
  一、首先修改交换机配置,将4个lan口中的一个划为一个新的wan口: 
  刚开始如下图(我的路由器只有一个网卡~端口4是wan口,对应物理设备是eth0.2,0-3是lan口,对应物理设备是eth0.1,eth0.1和eth0.2是通过vlan将实际物理接口eth0划分出来的): 
  
  修改完后如下图,这时端口3变成了一个新的wan口,对应物理设备为eth0.3,即通过vlan将eth0分为了eth0.1,eth0.2,eth0.3: 
  
  在网络接口处添加新的wan接口,命名为wan2,再添加一个pppoe2,这时就有wan、wan2、pppoe、pppoe2,四个属于防火墙wan域的接口了。 
   
  二、让wan和wan2的协议为dhcp,pppoe和pppoe2的协议为pppoe并填写好相应的宽带账号和密码。 
   
  三、设置以上4个网络接口的网关跃点(不设置的话,mwan3无法工作)优先级高的跃点设置小一点,比如pppoe所拨号的宽带是22M,那么它可以设置为10,则pppoe2设置为20,而wan和wan2只是用来访问校内资源的,可以简单设置为30、40。 
   
  四、配置uci config第一步,配置interface,这里只列出wan和pppoe的,其他两个同理。假设校园网某台服务器为192.168.66.123,那么能ping通它则说明我们的wan是正常连接的;我们的pppoe则ping多个常用DNS,要是ping通则说明是可以正常连接网络的。track_ip 列表是一次测试所需要测试的ip列表,reliability是指track_ip列表中几个能ping通就说明正常,count 是对每一个ip ping几次,timeout 是超时,interval 是每一次测试的间隔,down 是有多少次测试不正常则说明掉线,up 是有多少次测试正常则说明在线。

config interface 'pppoe'option enabled '1'list track_ip '8.8.4.4'list track_ip '8.8.8.8'list track_ip '4.2.2.1'list track_ip '223.5.5.5'option reliability '2'option count '1'option timeout '2'option interval '5'option down '3'option up '8'config interface 'wan'option enabled '1'option reliability '1'option count '1'option timeout '2'option interval '5'option down '3'option up '3'list track_ip '192.168.66.123'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

  五、配置uci config第二步,配置member,设置它的权重和跃点,决定该wan的优先权。这里的跃点指的是在同一个policy下的优先值,值越小,优先值越大,而跃点相同的几个member将会根据它们的权重来分配比例,数值越大,比例越大。比如我这里的22M的pppoe和8M的pppoe2可以如此设置:

config member 'pppoe_m1_w3'option interface 'pppoe'option metric '1'option weight '3'config member 'pppoe2_m1_w1'option interface 'pppoe2'option metric '1'option weight '1'config member 'wan_m2_w1'option interface 'wan'option metric '2'option weight '1'config member 'wan2_m2_w1'option interface 'wan2'option metric '2'option weight '1'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

  member的名字可以由interface名称、跃点和权重来命名,pppoe和pppoe2的跃点为一组,pppoe的权重是pppoe2的3倍,因为pppoe的带宽大概为pppoe2的3倍,wan和wan2为一组,它们只是为了访问校园内站点,只用一个member就好了,权重不需要考虑。 
  六、配置uci config第三步,配置policy,这里开始利用各个member,制定policy。policy决定了要使用那些网络接口,并且按怎样的比例使用它们。如:

config policy 'wan_only'list use_member 'wan_m2_w1'option last_resort 'unreachable'config policy 'pppoe_only'list use_member 'pppoe_m1_w3'option last_resort 'unreachable'config policy 'balanced'list use_member 'pppoe_m1_w3'list use_member 'pppoe2_m1_w1'option last_resort 'unreachable'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

  wan_only只使用了一个member,这个member是关联网络接口’wan’的,因为访问校内站点而已,从其中一个校园网线走就可以了;pppoe_only只使用了关联网络接口’pppoe’的一个member,这个policy用来以后8M宽带过期后只有一个宽带(22M)的情况;而balanced则使用了两个member,它们关联’pppoe’和’pppoe2’,使用了它们的意思就是融合这两个宽带,进行负载均衡的意思了。这个policy就是当前所需要使用的。 
  七、配置uci config第四步,配置rule,这个则是确定怎样的数据包应该使用怎样的policy,最终的负载均衡或策略路由就是靠它们的了。例如:

config rule 'VPN_rule'option dest_ip '192.168.67.0/24'option proto 'all'option use_policy 'wan_only'config rule 'CN_rule'option dest_ip '192.168.66.0/20'option proto 'all'option use_policy 'wan_only'config rule 'default_rule'option dest_ip '0.0.0.0/0'option proto 'all'option use_policy 'balanced'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

  VPN_rule等效于我们前边所说的在PPTP VPN设置时添加的静态路由,通往实验室的电脑的数据包走校园网(wan_only);CN_rule则等效于我们要访问校内站点所要添加的静态路由,通往校内站点的数据包走校园网(wan_only);default_rule则是默认的规则,即其他的所有数据包都走pppoe和pppoe2(balanced,成功负载均衡则融合了两个宽带)。

  设置完毕以后,启动mwan3,发送我们的获取权限的udp包给服务器,然后成功拨号后,多线多拨就成功了,下载东西理论上可以达到22+8=30M。

How to use multiple WAN connections using the mwan3 package

https://wiki.openwrt.org/doc/howto/mwan3

openwrt mwan3配置相关推荐

  1. Openwrt上配置Aria2迅雷离线下载步骤

    Openwrt上配置Aria2迅雷离线下载步骤 1.首先,保证root目录下的空间充足,然后使用命令将所需的文件及依赖库放进去:(方法是:配置主机静态IP,如:192.168.1.66.然后打开tft ...

  2. OpenWrt路由配置Openνρη服务器访问内网资源

    OpenWrt路由配置Openνρη服务器访问内网资源(LuCI界面实现) 本篇文章想表达的意思是把OpenWrt路由器作为Openνρη服务端,就相当于一个服务器,然后手机/iPad/电脑需作为客户 ...

  3. OPENWRT VLAN 配置

    OPENWRT VLAN 配置 OPENWRT VLAN 配置 openwrt中配置vlan 1.先配置switch使能 config switch option name 'eth0' option ...

  4. openwrt 网络配置

    openwrt dsa vlan 新版本openwrt vlan配置 arp 命令 arp 命令可以查看当前交换机下连接的设备. docker openwrt 使用docker帖子 docker界面配 ...

  5. OPENWRT MWAN3 负载均衡验证

    已经配置好两个WAN口,一个是物理WAN口,在配置文件中名为wan,另一个是偷楼上的无线做中继的WLAN0口,在配置文件中名为wwan. 权重为各50%. 按官方的说法[OpenWrt Wiki] m ...

  6. openwrt手工配置pptpd

    官方wiki:http://wiki.openwrt.org/doc/howto/vpn.server.pptpd#prerequisites 20190220更新:PPTP VPN协议已经被 IOS ...

  7. 在OpenWrt上配置原生IPv6 NAT,,实现校园网路由器使用ipv6

    我的环境 网络:教育网原生双栈,IPv4地址固定,IPv6地址自动获取 固件版本:OpenWrt Chaos Calmer 15.05-rc2 r45918 内核版本:3.18.14 准备工作 第一步 ...

  8. openwrt 安装 配置网络

    安装openwrt参考网站:: https://www.cnblogs.com/yczz/p/3893102.html https://m0n0.ch/wall/physdiskwrite.php 拓 ...

  9. 将Openwrt路由器配置为无线交换机,实现同网段无线中继功能

    配置完成的效果: 相当于对主路由器进行接口扩展,不过是使用WiFi代替了网线,而原有的网段不变,设备间处于相互可访问的状态 这里以全新刷机的OpenWRT无线路由器(副路由)为假设.          ...

最新文章

  1. Jetson TX2 开机测试及刷机
  2. Android Studio环境搭建
  3. zabbix4.0 使用nginx前端安装
  4. String str=“i“与 String str=new String(“i”)一样吗?
  5. java list对象按照某个属性去重
  6. LeetCode Lowest Common Ancestor of a Binary Search Tree (LCA最近公共祖先)
  7. ros melodic控制真实机械臂之moveit_setup_assistant配置
  8. linux的shell键盘输入,linux shell获取键盘输入
  9. Spark1.0.0 应用程序部署工具spark-submit
  10. 中国地震断层分布(约495条)
  11. 写个简单的chrome插件-京东商品历史价格查询
  12. 明星玩跨界,全民娱乐时代来临!
  13. 大脑原理计算机,三个记忆系统大脑储存记忆的原理是什么
  14. android开发关机代码,android代码实现关机
  15. java.sql.SQLException: 无法转换为内部表示原因及解决办法
  16. [cpp项目]2048
  17. 11月25日:tp框架中的架构,配置,路由,控制器
  18. 关于设计(三)设计存在的意义
  19. java统计单词出现次数_java-统计一段句子中各单词出现的次数
  20. 微擎视频小程序4.3.0 视频音频图文发布平台

热门文章

  1. ABR中使用超分辨率的一些知识
  2. 深入浅出kafka原理-5-kafka同步副本ISR高低水位HW
  3. 测试开发进阶——常用中间件概念——JDBC——连接数据库理解
  4. CleanMyMac 3自定义智能清理
  5. 红米手机4android os是木马怎么清除,红米Note4卡刷教程_红米Note4用recovery刷第三方系统包...
  6. 外挂框架开发(1)HOOKAPI
  7. 不再贩卖「情怀」的锤子手机
  8. 研究人员创建一种安全的CAR T细胞疗法来对抗儿童的实体瘤
  9. Android入门篇(四):自动拨打电话、手动拨打电话
  10. mysql数据库中怎么删除一行_数据库教程_mysql如何删除表中一行数据?- 中国it教程网...