使用 Docker 部署 UU 加速器
dianqk
2021年02月03日 22:44

上一次谈到 UU 加速服务完全可以以旁路由形式安装,避免影响主路由流程

使用上述方案后,部分阿婆主遇到了游戏主机在 app 中发生了设备转瞬即逝情况,推测因为每个人 OpenWrt 环境不同,可能影响了 UU 检测接入的主机设备。

因此,我们部署个 Docker 版本的 OpenWrt 就好啦,经过一段时间的尝试,我完成了 Dockerfile 的编写。


这里仅以单网口群晖设备为例说明如何使用该 Docker 镜像。

开启 IP 混杂模式

群晖网卡名称并非 eth0,为 ovs_eth0,开启命令如下:

代码块
Shell
自动换行
复制代码
ip link set ovs_eth0 promisc on
复制成功

实际该输入什么,你可以通过 ip addr 判断。

创建桥接网络 macvlan

命令示例如下, 和  应当根据实际情况选择:

代码块
Shell
自动换行
复制代码
docker network create -d macvlan \
--subnet=192.168.18.0/24 \
--gateway=192.168.18.1 \
-o parent=ovs_eth0 \
bridge-host
复制成功

subnet 应当和局域网下使用同一网段,gateway 使用上游网关。

这一步的命令会创建一个可以让容器使用不同 IP 的网络配置。

启动容器

启动命令示例如下:

代码块
Shell
自动换行
复制代码
docker run -d --name uuplugin \
--network bridge-host \
--privileged \
-e UU_LAN_IPADDR=192.168.18.77 \
-e UU_LAN_GATEWAY=192.168.18.1 \
dianqk/uuplugin
复制成功
  • UU_LAN_IPADDR 输入为容器设定的 IP,这也是游戏主机的网关 IP

  • UU_LAN_GATEWAY 为上游网关

绑定 UU 服务

UU 主机加速 app 会检测手机网关进行通信判断是否安装的 UU 插件,所以你需要将手机网关和 DNS 指向刚刚创建的容器使用的 IP。 打开 app 点击安装路由器插件绑定即可。 此后为了避免影响手机上网,绑定完毕后,手机的网关和 DNS 可以改回原来的设定。

这部分的详细设置方式可以在上一篇 Openwrt 旁路由用上 UU 加速器​ 中了解。

为游戏主机加速

将需要加速的游戏主机的网关和 DNS 设置为容器的 IP 后,打开 app 即可看到设备出现,点击加速即可。

补充内容

Dockerfile 一直没写出来,是因为我将群晖网口和 AP 设备(小米 AX6000 开 AP 模式)连接到一起,导致设备设置为容器网关时 ping 不通,同时让容器内部变得异常卡顿。

如果你也是这样的连接方式,需要将群晖网口改成主路由连接。

如果你知道为什么会出现这样的问题,还请留言指导。

相关链接:

  • https://github.com/DianQK/uuplugin