1654 字
8 分钟
【开箱即用】Docker+Qemu在IstoreOS_x86运行NX30pro定制UU加速器插件

封面图:https://www.pixiv.net/artworks/140018479

声明:#

这个版本是Deepseek辅助搓出来的,主要开发贡献者是DS,目前仅能够日常使用,有没有更多的bug还不知道。这个项目仅为学习Qemu和Docker使用,请勿进行盈利,尊重网易的知识产权。

前言:#

这一定是目前全网第一个在x86架构Openwrt上激活UU插件PC、手机加速功能的内容分享。github仓库如下:

YumeHinata
/
uugamebooster-docker
Waiting for api.github.com...
00K
0K
0K
Waiting...

目前来说这个模拟器的方案可能是解锁的唯一途径(如果你想直接尝试对原版二进制程序探索,来找出新的可能性可以跳过前面的安装使用环节)

部署与使用:#

目前建议通过命令行下载docker-compose部署的方法,而不是IstoreOS网页端进行安装

Terminal window
curl -fsSL -o docker-compose.yml http://fastly.jsdelivr.net/gh/YumeHinata/uugamebooster-docker@main/docker-compose.yml && \
docker compose pull && \
docker compose up -d

当容器启动后,打开移动端的UU主机加速器APP完成绑定即可正常使用。如果遭遇Openclash+UU加速器插件的,遇到加速效果不太成功的可以参考幻梦上一篇 【笔记】从Fake-ip模式下Openclash手里抢回UU加速器插件代理的游戏流量

碎碎念:#

幻梦确实尝试过通过对x86原版加速器插件进行伪装的方式来实现功能解锁,不过失败了。当然这也是可以给后人带来一定的经验分享的,但是也许这条路子到底是条死路。但是首先先要说借物表。

借物表:#

https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=8301860&highlight=UU

https://www.right.com.cn/forum/thread-8363665-1-1.html

尤其感谢第二篇帖子的内容,他解决了最难的没有工厂信息文件factoryinfo/etc/init.d/uu问题

官方插件下载:#

UU官方提供了一个下载插件的接口,所有的安装脚本都是通过这个接口进行下载的,目前根据大佬们公开的信息,幻梦做出如下汇总。

https://router.uu.163.com/api/plugin?type=h3c (版本过旧为4.14.6)

https://router.uu.163.com/api/plugin?type=h3c-nx30pro (aarch64架构)

https://router.uu.163.com/api/plugin?type=h3c-nx15

https://router.uu.163.com/api/plugin?type=h3c-bx54 (arm32架构)

https://router.uu.163.com/api/plugin?type=jd-hr06 (mipsel架构)

https://router.uu.163.com/api/plugin?type=steam-deck-plugin-x86_64 (steamdeck专属)

https://router.uu.163.com/api/plugin?type=merlin-mipsel (华硕梅林,可供padavan使用)

当下的uu远程桌面支持WOL的路由器机型如下:https://uuyc.163.com/help/20260407/40220_1294974.html

幻梦最后选定了已h3c-nx30pro为基础进行方案的实施。

关于伪装:#

前面提到,幻梦实际上尝试通过一些手段让Openwrt_x86版UUplugin认为自己是h3c定制版(其实是让注册服务器认为)。

  1. 首先定制版插件(以nx30pro为例,下称为h3c版)与Openwrt通用版(下简称通用版版)有显著的差异。两者通过硬硬编码的方式指向不同的注册服务器域名,h3c版为:h3crglg.uu.163.com,通用版为:rglg.uu.163.com。
  2. 两者的端口与协议也有不同,通用版可直接通过443端口访问,h3c版则是使用16000端口和tls1.2协议。
  3. 通用版采用硬编码的方式将系统名称Openwrt写入执行程序中,h3c版则通过读取工厂信息文件完成识别。

以上是第一阶段的显著差异,解决这一部分并不难,硬编码字符串可通过修改内存完成补丁。

偏移原始值修改为说明
4096733v14.2.2v14.4.20固件版本号
4097259openwrth3cnx30设备类型
4115215OpenWrtNX30Pro主机名
4099439openwrt-x86_64\0h3c-nx30pro\0\0\0\0\完整型号标识
4099834UU_SNXX_SNSN 环境变量名

注册服务器域名可通过代理的方式重定向到h3c的服务器,在代理过程中我们可以修改向注册服务器发送的数据。

消息类型方向修改内容
Register (0x24)C→Svendorh3c, 注入 fw_version=v14.4.20, SN 透传
FullRegister (0x02)C→S精简为 3 字段: device_uid + vendor=h3c + sn
DeviceInfo (0x04)C→Svendorh3c (触发设备扫描)
ConnectReply (0x11)C→S故意不修复 vendor (保留 h3cnx30, 避免触发 H3C 专属策略)
Log (0x0A)C→S拦截 [FATAL]/[FORCE] → 不转发; 清理 openwrt/x86_64 字样

此时的通用版插件基本上可以完整的被识别为h3c版。但是要记住,这两者还是有本质区别的(你骗得了别人,骗不过自己),很快第一个问题就出现了。当你打开APP试图绑定,设备确实被识别为NX30pro,点击下一步后却会提示你输入“极路由”管理员密码,我们不知道网易为极路由写了多么底层的代码,但是也许你会尝试输入ssh密码或者别的什么,结果无一例外全部都会提示错误。不过要解决这个也不难,现在幻梦直接告诉大家流程如下。

手机将会通过16363与14554端口与通用版插件通信,插件通过内部的密钥来验证密码是否正确,当密码正确将会返回HTTP 200,错误则是HTTP 400。这个处理起来比较简单粗暴,直接把HTTP 400拦截下来,发送HTTP 200即可让APP通过绑定。顺便将activate_status = 1

到这里其实整个注册流程已经完成了,服务器将会向客户端发送一组用于识别局域网设备类型的信息。接收到信息后插件就会把识别到的设备显示在手机APP上(这里幻梦有一个猜测,如果直接向插件发送这个完整识别信息,是否就无需伪装了。当然幻梦还没来得及尝试这个方案)

接下来,幻梦满心欢喜的点击了APP上对应设备的加速按钮。很快啊,加速就失败了。

服务端发送的连接节点的配置信息h3c版与通用版依旧存在区别,这两者无法互通。

字段openwrtH3C差异
f1device_iddevice_id相同
f20 (int)2 (int)路由策略不同!
f4UUEnv (device_rule + feature_switch)UUEnv (仅 feature_switch)H3C 缺少 device_rule
f5relay_configrelay_config格式不同
f6extra_paramsextra_params部分相同
f7proxy 配置缺失H3C 不包含
f8游戏 配置缺失H3C 不包含
f9DNS 配置缺失H3C 不包含
f10console 配置console 配置L0 更完整
总字段9 个6 个

这个时候的f2会直接导致报错,如果替换f2的值呢?但是你改得了f2,f7-f9又要怎么办呢?于是这个方案就卡在这了(不过现在的Qemu模拟的版本已经跑通了,也许有兴趣的朋友又可以尝试抓一下看看完整的加速流程又是怎么样的,也许会有不同的)。

结尾:#

这个项目目前就是这样一个情况了,也许未来哪位大佬能够实现原生运行状态下解锁PC、手机加速功能,又或者UU官方推出PC、手机加速这个功能吧。

【开箱即用】Docker+Qemu在IstoreOS_x86运行NX30pro定制UU加速器插件
https://www.yumehinata.com/posts/开箱即用docker-qemu在istoreos_x86运行nx30pro定制uu加速器插件/
作者
YumeHinata
发布于
2026-08-13
许可协议
CC BY-NC-SA 4.0