通过OpenWrt路由转发免费实现外网访问局域网内所有设备
软路由和All In One家庭服务器的普及,越来越多的用户在家庭服务器上部署了OpenWrt、Home Assistant、群晖/黑群晖、Alist、Unraid等系统和插件,随着IPV4的资源枯竭,运营商在新办理的宽带几乎都不给公网IP导致无法通过公网IP访问这些内网服务,Frp端口映射又需要每一个服务生成一个地址和端口,小白用户部署起来很繁琐而且速度较慢导致用户体验很差。我这里提供一种利用OpenWrt系统几分钟就可以实现局域网内所有设备的免费外网访问方法。
准备:
1、支持Docker的OpenWrt软路由一台,ARM和X86,主路由或者旁路由模式都可以;
2、OpenWrt /opt/docker目录剩余存储大于80M;
3、一台Mac或者Windows电脑;
4、两者均可访问互联网;

第一步:下载Solopace.Gem客户端
1、访问Solopace.Gem官网
2、下载Solopace.Gem客户端并根据提示安装。

3、安装成功后,打开客户端,使用手机号或邮箱登录并选择个人用户角色。


4、自动创建组网,等待设备连接
选择我是个人用户后,系统会自动创建网络,进入这一页面当前步骤结束,停留在此页即可,不要退出程序。

第二步:在Openwrt内安装组网工具Solopace.Gem Docker版本
打开Openwrt地址并登录
5、选择菜单栏 Docker - 容器

6、点击命令行

7、复制以下命令并粘贴到命令行
docker run -d --name=solopacegemed -v /var/lib:/var/lib -v /dev/net/stun:/dev/net/stun --network=host --restart=always --privileged doaction/solopacegem solopacegemed
8、命令添加完毕后,系统提根据命令自动填充创建Docker容器的数据,点击提交创建容器。

9、创建成功后,勾选对应的容器并启动。

第三步:启动TTYD终端,生成登录验证URL
10、系统 - TTYD终端,输入OpenWrt账户密码

11、复制以下命令并粘贴到命令行回车,生成URL。
sudo docker exec SolopaceGem solopacegem status
12、将上述链接复制到浏览器并登录,注意要用上面mac/win设备登录的同一手机号

13、选择加入网络

14、回到mac/win客户端点击我已下载并登录,点击连接


此时在客户端内设备列表复制OpenWrt的组网IP就可以直接外网访问了,但是目前只是PC客户端与OpenWrt连接成功了,但是要想访问OpenWrt下面的其他设备就需要开启路由转发了,此软件默认免费两台设备,开启路由转发之后就可以脱离这个限制。


第四步:开启OpenWrt的路由转发
15、进入Solopace.Gem后台管理 - 设备列表

16、点击上图中管理路由转发,填写Openwrt的内网网段,比如Openwrt的管理地址是192.168.1.1,就填写192.168.1.0/ 24,点击下一步

17、此时出现开启OpenWrt的路由转发命令,此时停留此页面。

18、复制命令至OpenWrt的ttyd终端或者ssh到openwrt开启

19、分别执行上图中的命令并将路由转发状态按钮改为开启,点击保存并应用,必须先执行命令后再点击后台的保存,否则会报错,保存后会显示已开启路由转发

20、Solopace.Gem PC端客户端连接后即可外网访问内网IP地址,组网IP也能访问OpenWrt,下图为与OpenWrt同一网段的Home Assistant。

21、Enjoy it!!

谢小萌
校验提示文案
奸商给爷爪巴
校验提示文案
奇怪的火
校验提示文案
大力9527
校验提示文案
伢子
校验提示文案
Jacky89
校验提示文案
王小丶二
校验提示文案
醉书香
校验提示文案
值友7989372361
校验提示文案
梦太晓
校验提示文案
瞎掰8848
校验提示文案
一天天的真无聊
校验提示文案
企鹅又归来
校验提示文案
飞紫龙翔
校验提示文案
飞紫龙翔
校验提示文案
企鹅又归来
校验提示文案
一天天的真无聊
校验提示文案
瞎掰8848
校验提示文案
梦太晓
校验提示文案
值友7989372361
校验提示文案
醉书香
校验提示文案
奇怪的火
校验提示文案
王小丶二
校验提示文案
奸商给爷爪巴
校验提示文案
Jacky89
校验提示文案
伢子
校验提示文案
谢小萌
校验提示文案
大力9527
校验提示文案