在 NAS、虚拟机或内网服务器中部署 Docker 服务很方便,但服务启动后往往只能在本地网络访问。人在外面想打开测试网站、内部面板或自建应用,传统做法通常是申请公网 IP、配置端口映射,再处理动态域名和安全防护。
这次换一种方式:在飞牛 OS 中实际部署一个 Nginx 容器,再使用星空组网的子网路由功能,让手机在 5G 网络下直接访问它的内网地址。
星空组网子网路由的价值,不只是连接两台安装了客户端的设备。它可以让一台在线设备充当网关,把这台设备能够访问的整个局域网开放给指定成员。这样,Docker 容器、NAS、摄像头等无法或不方便安装客户端的设备,也能通过原来的内网 IP被远程访问。
整个过程没有把 8088 端口映射到公网,也没有给 Nginx 容器安装组网客户端。最终访问链路如下:
Android 手机(5G)
│
│ 星空组网
▼
Windows 11(子网路由网关)
│
│ 192.168.71.0/24
▼
飞牛 OS Docker
Nginx:192.168.71.128:8088
文中的地址和端口是本次实测参数。复现时应替换为自己的 Docker 主机地址、端口和目标网段。
一、这个场景解决什么问题
许多自建服务只监听在局域网中,例如:
-
Docker 管理面板;
-
内部测试网站;
-
Home Assistant 等家庭服务;
-
Git、知识库和监控面板;
-
不准备公开发布的开发环境。
这些服务并不适合直接开放到公网,但使用者又希望在外出时随时访问。
星空组网子网路由提供的思路是:不改动每个 Docker 容器,也不逐个建立公网映射,而是让一台已经加入星空组网、同时能访问 Docker 主机的设备作为网关。授权设备连接星空组网后,就能继续使用服务原来的局域网地址。
本次实测参数如下:
| Docker 主机 | 飞牛 OS 虚拟机 |
| Docker 主机 IP | 192.168.71.128 |
| 测试服务 | Nginx |
| 主机访问端口 | 8088 |
| Nginx 容器端口 | 80 |
| 子网路由目标网段 | 192.168.71.0/24 |
| 子网路由网关 | Windows 11 |
| 授权设备 | Android 手机 |
二、在飞牛 OS 中下载 Nginx 镜像
登录飞牛 OS,打开 Docker 应用,进入“镜像仓库”。在列表中找到官方 nginx 镜像。

图 1 镜像仓库提供官方 Nginx 镜像,可直接下载并创建容器
点击 Nginx 右侧的下载按钮。镜像标签保持默认的:
latest

图 2 下载 Nginx 的 latest 镜像用于本次 Web 服务测试
下载完成后,进入“本地镜像”,可以看到 Nginx 镜像已经保存到飞牛 OS。

图 3 Nginx 镜像下载完成,可以从本地镜像直接运行
三、创建容器并映射 8088 端口
点击 Nginx 镜像右侧的运行按钮创建容器。
Nginx 默认在容器内部监听 80 端口。本次将飞牛 OS 的 8088 端口映射到容器的 80 端口:
主机端口 8088 → 容器端口 80 / TCP
网络模式使用默认的 bridge 即可。
需要注意,界面中两个端口框的含义不同:
-
主机端口决定局域网用户实际访问哪个端口;
-
容器端口必须对应 Nginx 在容器内部监听的端口。
创建完成后,容器列表中的 Nginx 显示蓝色运行状态,CPU、内存和网络数据也开始更新。

图 4 Nginx 容器已经启动并保持运行
四、先在内网确认 Docker 服务正常
远程访问之前,必须先在能够访问飞牛 OS 的 Windows 电脑上打开:
http://192.168.71.128:8088
浏览器显示“Welcome to nginx!”,说明以下环节均正常:
-
Nginx 容器已经启动;
-
8088 → 80 端口映射有效;
-
Windows 可以访问飞牛 OS 所在的内网;
-
飞牛 OS 防火墙没有阻止该连接。

图 5 Windows 通过飞牛 OS 的局域网 IP 和 8088 端口打开 Nginx
这一步很重要。如果网关设备本身都打不开服务,子网路由也无法把服务“变通”。应先解决容器、端口或防火墙问题,再检查远程访问。
五、用星空组网子网路由承载整个内网服务
本次使用星空组网管理平台创建子网路由,核心配置为:
网关设备:Win11
目标网段:192.168.71.0/24
网卡:VMware Network Adapter VMnet2
授权设备:Android-5G
状态:正常

图 6 星空组网已发布 192.168.71.0/24 网段,子网路由状态为“正常”
这里发布的是整个 192.168.71.0/24 网段,而不是单独发布 Nginx 的 8088 端口。
这意味着同一网段中新增服务后,只要满足以下条件,通常不需要再创建一条新的子网路由:
Windows 网关可以访问该服务;
目标设备和防火墙允许连接;
访问设备已经获得这条子网路由的授权。
因此,前一次能够访问飞牛 OS 管理页面后,这次新增 Nginx 容器不需要再次申请公网端口,也不需要给容器安装额外客户端。192.168.71.0/24 这条路由已经覆盖 192.168.71.128:8088。
这正是星空组网子网路由区别于单端口映射的重要价值:它连接的是一个网络,而不是只暴露某一个服务端口。以后在该网段中新增其他 Web 服务,也可以继续复用这条路由。
六、手机使用 5G 访问内网 Nginx
手机关闭 Wi-Fi,使用 5G 网络,并连接星空组网。然后在手机浏览器中输入:
http://192.168.71.128:8088
页面成功显示“Welcome to nginx!”。

图 7 手机没有连接本地 Wi-Fi,仍能通过子网路由访问内网 Nginx 服务
截图顶部可以看到手机正在使用 5G,并且星空组网处于连接状态。手机访问的仍然是 192.168.71.128 这个私有地址,而不是公网 IP或经过改写的外部域名。
最终数据路径为:
手机浏览器
→ 星空组网连接
→ Windows 11 子网路由网关
→ VMware VMnet2
→ 飞牛 OS 8088 端口
→ Nginx 容器 80 端口
七、星空组网子网路由为什么适合内网 Web 服务
不需要公网 IP
即使家庭宽带位于运营商大内网,只要网关和授权设备能够连接星空组网,就可以通过子网路由建立访问路径。
不逐个配置公网端口映射
新增一个局域网服务,不必再次登录路由器,把端口暴露到互联网。本次 Nginx 只在飞牛 OS 的内网地址上提供服务。
Docker 容器不用安装组网客户端
Nginx 使用标准官方镜像,没有为了远程访问而修改镜像,也没有在容器中安装星空组网。访问能力由星空组网子网路由统一提供。
继续使用原局域网地址
Windows 本地访问和手机远程访问使用的是同一个地址:
http://192.168.71.128:8088
开发工具、浏览器收藏和内部文档不需要同时维护“内网地址”和“外网映射地址”。
一条路由可以承载多个服务
同一台主机后续还可以运行其他端口的应用。只要这些服务位于已发布网段中,并符合访问控制要求,就可以继续通过原内网 IP访问。
八、总结
本次实操在飞牛 OS 中部署了一个 Nginx Docker 服务,并通过 Windows 电脑发布 192.168.71.0/24 子网路由。手机关闭 Wi-Fi、使用 5G 并连接星空组网后,成功打开:
http://192.168.71.128:8088
这个地址与 Windows 在局域网中使用的地址完全相同。整个过程没有申请公网 IP,没有配置路由器公网端口映射,也没有在 Nginx 容器中安装额外的组网客户端。
这次测试体现了星空组网子网路由最直接的价值:它连接的不只是几台安装了客户端的设备,还能通过一台网关,把设备背后的整个局域网接入组网。NAS、Docker 服务、摄像头、打印机和其他内网设备,都可以继续使用原来的局域网 IP和端口进行访问。
一台网关连接一个网段,一条子网路由打通多个内网服务。通过星空组网,人在外面也能像身处本地局域网一样,直接访问原来的内网地址。




