写在前面
本来想写一篇突破蒲公英免费版突破三个设备限制的文章的,结果在最后的完成阶段出了意外:
公司的网络有防火墙策略,可以实现外网访问局域网的设备,反过来局域网内设备访问外网不行,到这就搞不下去了。
到最后只能换个标题把写完这部分分享出来,然后再提供一种另外的解决方式,也能突破设备限制,不过有点麻烦。
树莓派刷openwrt做旁路由
这里用的是这个固件,这个固件功能很强大,具体可以参考作者博客
刷固件也不再详细介绍了,可以参考我之前的文章,这里只说下我用的固件版本
如果作者页面有更新版本,可以使用带update字样的镜像,在网页后台更新
刷好后将树莓派网口接入电脑,通电开机,此时电脑需处于未接入网络状态,等待电脑获取到IP,输入IP地址192.168.1.1账号 root 密码 password 登入openwrt后台(这里也可以通过无线连接,无线SSID是openwrt)。这里需要确认下你的上级路由器LAN地址,我这里是192.168.1.1,这里需要修改树莓派IP为192.168.1.180,这个IP必须是跟主路由是同一网段并且不为.1/.255同时又没有被其它设备占用的地址,确定地址后可以连上主路由ping下
这里推荐使用SSH连接树莓派输入以下命令,这里可以使用PuTTY或者网页端的TTYD终端执行
1 | uci set network.lan.ipaddr=192.168.1.180 #设置openwrt的LAN口IP |
通过新IP地址192.168.1.180访问管理界面再网络接口做如下修改
完成以上操作后,把树莓派的网线接入主路由的LAN口,树莓派的旁路有设置就完成了(可能到这已经劝退好多人了吧)。
ps:这里多说一句,不要照抄上面的IP地址,除非你的上级路由同我一样也是192.168.1.1,否则请根据实际情况填写。
安装蒲公英软件
这里用到的是Docker版,通过系统内置的Docker服务安装,这里老规矩,放一下部署命令
1 | docker run -d \ |
直接把自己改好的命令填入docker中
运行容器,然后进入容器内部
这里获取的虚拟局域网的IP是172.16.1.43 ,后面要用到。
安装firefox
可能有人会奇怪,安装这个干嘛?后面会讲,这里放下作者的部署命令
1 | docker run -d \ |
照着上面蒲公英的部署方式贴入命令
完成容器创建后启动容器,通过访问地址http://172.16.1.43:6080/vnc.html?autoconnect=true 实现打开chrome(此处我使用访问此地址的电脑也是通过蒲公英远程连接的,地址是172.16.2.232)
这里多说两句,我测试了几个浏览器的docker镜像,发现一个问题,在unraid中都正常,但是在这个旁路由中不能正常显示中文,只有这个显示是正常的。
突破限制的一种实现方式
这里简单放下目前我写文章状态下的网络拓扑图
其实写道这有些人已经猜到我的实现方式了,简单的说就是通过树莓派旁路由上安装的chrome访问局域网其它设备,比如UNRAID
另外做一些优化,在笔记本中加入路由,具体操作管理员权限运行CMD ,贴入如下命令
1 | route add 192.168.1.0 mask 255.255.255.0 172.16.1.43 -p |
然后就可以直接访问了
当然,这里只是这一个设备可以实现,内网的其他设备需要通过装好的Firefox访问。
就到这吧。