iStoreOS 软路由部署指南
iStoreOS 是一款目前极其流行、针对软路由和轻 NAS 优化的人性化系统,底层基于 OpenWrt。 由于软路由通常放置在网络网关或旁路网关的位置,直接在 iStoreOS 中运行云手机信令与前端服务能提供最高效的网络数据转发路径。
🛠️ 方式一:iStoreOS 网页端图形化创建 (推荐)
iStoreOS 内置了精简的 Docker 管理应用,您无需通过命令行,在浏览器中即可一键完成拉起:
- 进入 Docker 应用:登录 iStoreOS 后台,点击左侧菜单的 「Docker」,然后选择 「容器」。
- 下载最新镜像:
- 在「容器」或「镜像」选项卡中,点击 「拉取镜像」 (或「下载」)。
- 输入镜像名称:
buutuu/scrcpy-over-webrtc:latest并点击拉取下载。
- 创建容器:
- 下载完成后,在容器列表页点击 「添加」。
- 容器名称:输入
cp-aio。 - 镜像:选择刚刚拉取的
buutuu/scrcpy-over-webrtc:latest。
- 网络配置 (Host 模式):
- 在配置页面的“网络设置”中,网络类型 必须选择
Host(主机网络)。 WARNING
云手机推流涉及大段 UDP 动态端口(55000-55100 等)交互,若选择 Bridge(桥接)模式,您必须在图形界面上手动添加 100 多个端口转发映射,这会导致配置工作极其低效。Host 模式直接使用软路由的网口,配置最简单且转发性能最强。
- 在配置页面的“网络设置”中,网络类型 必须选择
- 环境变量配置:
- 切换到“高级设置”中的“环境变量”选项卡。
- 点击 「添加」,增加以下两个关键变量:
- 变量名:
PUBLIC_IP➔ 值:<您的软路由局域网 IP>(例如192.168.100.1)。 - 变量名:
NO_AUTH➔ 值:true(用于内网免密测试)。
- 变量名:
- 启动容器:
- 其他卷挂载选项保持默认,点击 「保存并应用」 ➔ 「启动」 即可。
💻 方式二:SSH 终端命令行直接拉起 (极客推荐)
如果您习惯使用终端或者旁路由调试,可以通过 SSH 登录软路由终端直接执行以下指令:
bash
docker run -d --name cp-aio \
--restart always \
--net host \
-e PUBLIC_IP=<您的软路由局域网 IP> \
-e NO_AUTH=true \
buutuu/scrcpy-over-webrtc:latest(只需将 <您的软路由局域网 IP> 替换为您软路由的 LAN 口 IP,如 192.168.100.1 即可。)
🔒 关键防坑:iStoreOS 软路由防火墙放行
由于 iStoreOS 本质上是一个路由器系统,底层内置了严格的 OpenWrt 防火墙保护。 如果您的 Android 手机或电脑客户端处于不同的网段下(例如跨越了旁路由、或者是从软路由的 WAN 口方向接入访问),防火墙可能会拦截 WebRTC 的 UDP 数据包,导致“黑屏”或“无法加载”。
开放防火墙通信规则步骤:
- 进入 iStoreOS 网页后台,点击 「网络」➔「防火墙」。
- 切换到 「通信规则」 选项卡。
- 点击 「添加」 规则:
- 名称:
cloudphone-webrtc。 - 协议:选择
TCP+UDP。 - 源区域:选择
任意或WAN。 - 目标区域:选择
设备 (入站)。 - 目标端口:填入信令网页端口及中转媒体端口段:
8443, 3478, 55000-55100。 - 动作:选择
接受 (ACCEPT)。
- 名称:
- 点击 「保存并应用」,彻底打通音视频推流网络链路!