mwan3的教程网上并不少,但都是针对BB版的,而我使用的是官方CC正式版,按老的教程走没有一个是成功的。每次设置好mwan3后就上不了网,甚至进不了路由设置界面,也ping不通路由,扯了wan线才行。经过无数次的实验,我在CC正式版上成功实现了基于mwan3的单线多拨,现在分享一下我的过程,以免更多的人被坑。

本教程基于官方纯净版Openwrt 15.05,理论上通用于正式版和之后的trunk版。

1.准备工作:安装Openwrt,luci中文界面等等,不再阐述。注意路由器的联网方式,要直接将WAN的协议从DHCP修改成PPPoE,而不是额外添加一个PPPoE端口。

2.由于是单线多拨,需要安装虚拟网卡。首先SSH登入路由器,先opkg update更新软件包列表,再opkg install kmod-macvlan安装虚拟网卡的内核模块,这步完成暂时不要重启。

3.添加虚拟网卡:在LuCI界面进入系统->启动项,在本地启动脚本exit 0之前添加如下代码,要n拨就加n-1个虚拟网卡,因为有一个是从物理网卡拨出去的,然后重启使其生效。

ip link add link eth0.2 name vth0 type macvlan
ifconfig vth0 up

ip link add link eth0.2 name vth1 type macvlan
ifconfig vth1 up

ip link add link eth0.2 name vth2 type macvlan
ifconfig vth2 up

4.卸载自带dnsmasq并安装dnsmasq-full:opkg remove dnsmasq && opkg install dnsmasq-full。这点很重要,自带dnsmasq不支持ipset,mwan3启动后客户端会无法上网,甚至无法ping通路由器,网上没有任何教程提及这一点,或许是老版本不需要,但对新版是必要的。

5.安装相关软件和内核模块:opkg install mwan3 luci-app-mwan3,相关依赖会自动补全。安装完成后看看/lib/modules下面有没有ip_set开头的内核模块。如果有,重启,lsmod看看是否挂载上了;如果没有,检查ipset和kmod-ipt-ipset有没有装上,没有就自己装。

6.配置多拨:在LuCI的网络->接口->添加新的PPPoE连接,分别选择不同的虚拟网卡,并且防火墙都添加到wan。每个PPPoE连接的网关跃点都要不同,包括虚拟网卡的和物理网卡的。这里直接搬运恩山一篇教程的图,原帖http://www.right.com.cn/forum/thread-132875-1-1.html

1

2

3

设置完成后连接,确认所有线路都拨上并且获取到ip,然后进入下一步。

7.设置负载均衡:

在LuCI界面选择网络->Load Balancing进入mwan3设置,在配置->接口下面删除自带的所有接口,然后添加你自己的,Tracking IP填写一个随时都能正常访问的ip,比如阿里的DNS服务器223.5.5.5,其他设置用默认的。

然后进入Members选项卡,删除自带的所有成员,再新建你自己的,名字随便,跃点数Weight都是1。

然后进入Policy选项卡,删除自带所有,新建一个叫balanced的策略,在Member used把你刚才建的所有Members都加进去,Last resort改为default,保存。

Rules下面全部用自带的即可。

此时配置结束,在总览里面应该能看到所有的interface都是绿色,说明连接成功,在网络->接口可以看到所有的PPPoE线路负担的流量基本一致。

教程结束。

分类: Openwrt

8 条评论

openwrt · 2015年11月30日 下午9:26

Collected errors:
 * opkg_install_cmd: Cannot install package kmod-macvlan.
怎么解决?

openwrt · 2015年12月10日 上午5:21

在系统日志里显示 can not find "eth0.2" 如何解决?

lingbaoboy · 2016年8月12日 下午3:02

楼主有并发多拨的脚本没?
我这里不并发多拨不了

    dianlujitao · 2016年8月12日 下午3:05

    不知道你说的“并发”是啥意思

hhb · 2016年10月3日 上午1:39

我是拿Openwrt x86来做的,安装完dnsmasq-full或者ipset后,再重启路由时机器就会down掉,lan口拿不到ip,填上ip后ping不通,VGA输出(嗯,没错,DIY软路由机器)kmodloader [993]: segfault at cb25206b ip b778a35f sp bf921854 error 5 in libuClibc-0.9.33.2.so

有点懵….

网件WNDM3800 使用OpenWrt Chaos Calmer 15.05单线多拨教程 – 拯救记忆 · 2016年10月1日 下午12:36

[…] 前段时间入手了一台洋垃圾wndr3800,参考OpenWrt Chaos Calmer 15.05使用mwan3单线多拨教程一文尝试单线多拨,但是根据上文教程中的步骤我总是无法成功添加虚拟网卡,故放弃这个方法。 […]

网件WNDR3800 使用OpenWrt Chaos Calmer 15.05单线多拨教程 – 's Memory · 2017年4月12日 下午4:59

[…] 前段时间入手了一台洋垃圾wndr3800,参考OpenWrt Chaos Calmer 15.05使用mwan3单线多拨教程一文尝试单线多拨,但是根据上文教程中的步骤我总是无法成功添加虚拟网卡,故放弃这个方法。 […]

发表评论

电子邮件地址不会被公开。 必填项已用*标注