本文的多拨配置不代表能够突破运营商限制, 如果运营商明确限制多拨, 就不用浪费时间了.

注意事项

  • 本文适用于OpenWrt作为主路由/单臂路由, 如需要旁路由可去文章末尾的参考链接
  • 选用一个带有多拨和负载均衡的固件(这好像是句废话)
  • 请勿开启UPNP, UPNP默认使用第一个出口, 开启会影响端口转发
  • 是否允许多拨,运营商有时会在带宽套餐中注明
  • 如无注明可在配置多拨时, 将虚拟WAN接口数量最低在线接口数量设置为3
  • 启用拨号后等待5分钟, 再去查看接口, 如果只能拨上2个, 那说明运营商限制多拨次数为2, 将虚拟WAN接口数量最低在线接口数量改为2即可

多拨配置

拨号设置

多拨类型选中单线多拨, 选择外网接口wan.
虚拟WAN接口数量就是需要多拨的次数, 不勾选不自动配置MWAN3负载均衡.
启用并发多拨绑定物理接口看情况勾选, 一般保持默认即可, 如果是可以多拨但是拨不上再做修改.
最后保存&应用, 再前往接口处查看是否拨号成功.

建议启用掉线检测, 最低在线接口数量设置为你需要多拨的次数, 重拨等待时间推荐默认25, 这样如果一次多拨没拨上它会自动重拨, 直到拨上为止, 不需要我们手动重新拨号.

多拨设置.png

测速

拨号成功后可以进行测速, 看看是否有提升, 部分地区运营商是允许多拨, 但是带宽是限制死的.
当然也有限制下载, 但不限制上传的.

推荐使用windows 10 商店中的Speedtest

如果出现多拨成功, 测速并却未叠加, 但曾经使用爱快/高恪能够叠加的情况, 可以尝试给光猫断电五分钟后重启并重新拨号.

添加策略

配置负载均衡时建议点击保存, 在策略规则都配置完后再点击保存&应用

前往网络 - 负载均衡 - 策略 添加策略.
添加的策略名不应该与接口、成员、规则中的任意一个设置项使用相同的名称
策略1.png

使用的成员 选中一个vwan即可, 备用成员保存默认.
(拨几个号就添加几个策略)
策略2.png

图例中, 博主添加的就是ttnode1ttnode2两个策略, 分配的成员分别是vwan1vwan2.
策略3.png

配置规则

网络 - 负载均衡 - 规则
同样添加的规则名不应该与接口、成员、策略中的任意一项重名
规则1.png

添加ttnode_1, 源地址只需要填写为容器的IP地址, 分配的策略选中之前创建的其中一个, 其他设置保持默认即可.
(同样拨几个号就添加几个规则, 确保每个容器都是使用不同的策略)
规则2.png

添加完成后需要把规则移动到最上方. 因为每条流量至上而下进行匹配, 如果匹配中了某条规则,则其下方的规则将被忽略, 不符合任何规则的流量将使用主路由表进行路由.

规则3.png

容器配置

查看挂载点

插上U盘/硬盘后大多数固件都会进行自动挂载, 我们可以去 系统 - 挂载点 - 已挂载的文件系统 中查看挂载点.
然后我们可以在挂载点对应的目录下创建甜糖缓存的目录, 开几个甜糖就创建几个目录.
具体命令如下, 请自行替换/mnt/sdb1为你的路径.

mkdir /mnt/sdb1/ttnode1
mkdir /mnt/sdb1/ttnode2

博主在使用Docker容器共享缓存时, 出现两个容器只有其中一个能跑满, 另一个跑不满的情况, 所以这里并没有使用, 如有需求可以去末尾的参考链接查看.

创建网络

只有用户自己创建的网络,才可以指定容器IP.
需要注意的是创建的网段不能和局域网相同,且必须是保留网段.

docker network create --subnet=10.0.0.0/24 bridge2

创建甜糖

容器启动后直接运行docker logs 容器名命令会显示端口获取中,建议在容器启动后五分钟运行命令获取二维码、IP和端口.

在TTYD或SSH里运行以下命令, 启动甜糖容器.
如果还需要开更多个, 请依照下方命令修改其中-v参数后的/mnt/sdb1/ttnode1映射路径--name参数后的ttnode1容器名以及--ip=10.0.0.100中的IP地址.

# 甜糖容器一
docker run -itd \
    -v /mnt/sdb1/ttnode1:/mnts \
    --net=bridge2 --ip=10.0.0.100 --dns=119.29.29.29 \
    --name ttnode1 \
    --privileged=true \
    --restart=always \
    registry.cn-hangzhou.aliyuncs.com/744287383/linux_ttnode:latest

# 甜糖容器二
docker run -itd \
    -v /mnt/sdb1/ttnode2:/mnts \
    --net=bridge2 --ip=10.0.0.200 --dns=119.29.29.29 \
    --name ttnode2 \
    --privileged=true \
    --restart=always \
    registry.cn-hangzhou.aliyuncs.com/744287383/linux_ttnode:latest

挂载之前的甜糖缓存

如果需要共享缓存请在命令中添加一行-v /之前的缓存路径:/mnts/.yfnode/cache,请注意修改缓存路径
假设之前的甜糖容器的映射目录为/mnt/sdc1,那么缓存的路径就是/mnt/sdc1/.yfnode/cache

# 甜糖容器共享之前缓存的路径,请注意修改缓存路径
docker run -itd \
    -v /mnt/sdb1/ttnode:/mnts \
    -v /之前缓存的路径:/mnts/.yfnode/cache
    --net=bridge2 --ip=10.0.0.200 --dns=119.29.29.29 \
    --name ttnode \
    --privileged=true \
    --restart=always \
    registry.cn-hangzhou.aliyuncs.com/744287383/linux_ttnode:latest

刚刚启用的容器在甜糖APP上会显示信息获取, 等待半小时即可正常显示.

运行docker logs 容器名可以获取容器日志, 查看容器的二维码、容器的IP地址以及所使用的端口.
docker logs ttnode1 命令可以查看ttnode1容器的二维码、容器的IP地址以及所使用的端口.
端口1.png

端口配置

开启端口转发

网络 - 防火墙 - 常规设置
打开防火墙的转发
端口2.png

添加端口转发

网络 - 防火墙 - 端口转发
添加端口转发, 名称随意但请勿重复, 传输协议使用TCP+UDP, 外部区域内部区域必须是wanlan.
(有多少就添加多少)
端口3.png

最后如果本文有帮到你, 可以填写我的邀请码935139

参考链接
Openwrt下挂docker版甜糖CDN 支持X86/ARM设备 -保姆级原创教程
本文使用的容器就是他的哦!

最后修改:2023 年 01 月 10 日
如果觉得我的文章对你有用,请随意赞赏