前言
本站之前之前介绍过不同运营商的多线多播,如果你在同一个运营商具有多个宽带账号,则可以通过单线进行拨号,实现单线多拨。
操作
openwrt版本:22.03.5
需要依赖:kmod-macvlan(若自行编译,编译选项为Kernel modules→Network Devices→Kmod-macvlan
)
如果需要策略路由(分流/负载均衡):mwan3插件
单线多拨
1.进入openwrt后台后,点击网络→接口→设备→添加设备配置
。
创建一个MAC VLAN
,基设备选择接运营商设备的口,这里以wan
为例。
有几个账号就创建几个MAC VLAN
2.在网络→接口→接口
页面将原有的wan
,wan6
删除。
3.在网络→接口→接口
页面点击添加新接口...
,设备选择刚刚创建的MAC VLAN
设备,并将防火墙区域选择为WAN
老版本的openwrt可能不能通过luci添加macvlan接口,可以在系统→启动项→本地启动脚本
编辑本地启动脚本,通过命令添加接口。
#eth0为接运营商设备的口,wanmac0可根据需要进行修改,mode有四种模式可选bridge, vepa, passthru, private ip link add link eth0 name wanmac0 type macvlan mode private #可选,设置该接口的mac地址,mac地址也可根据需要进行修改。 ifconfig wanmac0 hw ether 00:01:6C:06:A6:29 #启动接口 ifconfig wanmac0 up
通过脚本添加的接口在重启后生效,亦可通过ttyd/ssh直接执行这些命令生效。
还可通过修改网络配置文件创建接口,具体可参考:https://forum.openwrt.org/t/save-ip-link-macvlan-interfaces-after-reboot/5215
有几个账号则创建几个接口,通过这些接口则可以实现单线多拨。
nat6
若运营商提供了IPV6,则以上操作已经可以访问IPV6了。
如果需要实现IPV6的分流与负载均衡,需要配置nat6
。
1.进入openwrt后台后,点击网络→防火墙→区域
,点击wan
的编辑,进入高级设置,勾选IPv6 Masquerading
2.进入网络→接口→接口
页面,点击添加新接口...
,协议选择DHCPv6 客户端
,设备选择@之前新建的接口
常规设置中,请求指定长度的 IPv6 前缀
选择已禁用
,高级设置中取消勾选IPv6 源路由
,防火墙选择wan
。
根据实际情况可配置多个接口
3.进入网络→接口→全局网络选项
页面,将IPv6 ULA 前缀
修改为2001:db8::/32
(若仅需要NAT6,且未安装mwan3插件,可不进行此步骤)。
自此已完成nat6的设置。
mwan3
mwan3的IPV6设置可以参考:k2p基于openwrt实现不同运营商双宽带/双线叠加。
注意:
1.添加IPV6的策略后可能导致IPV6的网络不通,需要重启路由器才能使IPV6网络恢复并使IPV6相关策略生效(与防火墙配置有关)。
2.部分情况下,DHCPv6 客户端
可能获取不到IPV6地址,可以尝试将拨号接口中的获取 IPv6 地址
改为手动
以解决该问题。
3.还可以通过脚本检测是否获取到IPV6地址,拨号后自动检测是否能使用ipv6,若否则重拨,将以下脚本加入到/etc/hotplug.d/iface
,需要将其中的wan0
与wan0_6
改成你实际使用的接口,若对脚本没有足够的了解,切勿使用该脚本。
#!/bin/sh [ "$INTERFACE" = wan0_6 ] && [ "$ACTION" = ifup ] || exit 0 sleep 20s ipv6Addr=$(ubus call network.interface.wan0_6 status | jsonfilter -e '@["ipv6-address"][0].address') if [ "$ipv6Addr" == "" ]; then logger -p notice -t check_ipv6 "no ipv6, now reboot interface" ifup wan0 else logger -p info -t check_ipv6 "obtained ipv6 address successfully" fi
该脚本将在拨号后20秒检测是否有IPV6,若无则重拨,在无法获取IPV6的环境下会导致一直重启wan0口。
参考链接:
https://openwrt.org/docs/guide-user/network/ipv6/ipv6.nat6
在 OpenWRT 19.07 上实现 NPTv6 (NAT66)
https://www.oomake.com/
https://blog.csdn.net/Cx2008Lxl/article/details/123115782