无需直接获取公网,非软路由下的NAS(群晖)+zerotier实现随时随地游玩PS5
前言
最近又玩了下黑群晖,本文用群晖的NAT实现游玩的方式,可以随时拿出手机真正的云游戏。
使用工具:
0、选择背景
按照现在国内运营商的分布NAT改造的基本完成,大家现在光猫或路由器分配得到的v4地址基本就是私网地址,导致DDNS方案会较为麻烦。
至于没用IPv6,是因为串流软件似乎不支持v6。
1、zerotier
内网穿透工具,选择理由:
(1)、免费
(2)、虽然需要先连远端服务器来建立连接,但打通后可以实现直连(以现在的运营商宽带网络来说,一般不会有限制),如果实在不满足直连还可以自己用VPS搭moon作为远端服务,但安卓APP似乎还未支持,但安卓客户端确实清爽方便。
(3)、界面友好,平台支持广,虽然注册需要到官网,但win和android下都有安装包,安卓界面使用简单。
2、NAS
其实是linux就行,手上只有黑群晖,无所谓黑白,无所谓版本,只需要调整下iptables,iptables作为linux防火墙模块功能十分强大可调,软路由很多功能也是基于此实现。
3、chiaki
PS5/PS4串流游玩工具,有PC端和ANDROID端版本,免费,可调整码率
(但貌似对PS5的手柄按键支持不好并且无法调整,所以不想搓玻璃的时候,我选择用PS4手柄(蓝牙连接手机))
4、PS5/PS4
远程游玩功能在PS5、PS4上都是支持的,就是最后映射端口不一样,本文用的PS5。
配置步骤
1、zerotier配置
其实站里已经有很多该工具的实现背景和教程了,这里直接简要说配置
(1)官网注册https://my.zerotier.com/
(2)新建网络
(3)下载电脑端或安卓端(看你想在哪远程游玩),然后加入网络,可以看到设备在zerotier网络下的私网地址
2、NAS
1、群晖的话直接zerotier官网找到群晖版本的包,然后在套件中心手动安装zerotier,安装后输入id加入网络,然后到官网登录管理网络允许加入,把NAS的zerotier_IP设置为固定分配。
2、打开NAS的ssh登录权限,然后ssh连接上NAS(可以使用xshell,crt或者win自带的ssh),这里用win10自带的ssh演示
3、win10打开cmd,直接ssh 群晖管理用户@群晖的内网地址
4、输入密码, 输入命令sudo -i 切换到root
然后继续命令行操作:
保存当前配置到文件中:
iptables-save > iptables_rules
备份一下:
cp iptables_rules iptables_rules_bak
编辑配置:
(vi的编辑方法可能有些小伙伴不熟悉,这里简单讲一下,vi是多模式编辑器,vi默认打开文本后是命令模式,先把光标移动到要编辑的地方,按i进入编辑模式进行增删改后,按esc退出编辑模式回到命令模式,再按下:健,输入wq保存后退出;如果不想保存就输入q!直接退出)
vi iptables_rule
要增加的内容(在*nat链的:POSTROUTING ACCEPT行后面):
-A PREROUTING -d 群晖的zerotier_IP地址 -p tcp -m tcp --dport 9295 -j DNAT --to-destination PS5的内网地址:9295
-A PREROUTING -d 群晖的zerotier_IP地址 -p udp -m udp --dport 9295 -j DNAT --to-destination PS5的内网地址:9295
-A PREROUTING -d 群晖的zerotier_IP地址 -p udp -m udp --dport 9296 -j DNAT --to-destination PS5的内网地址:9296
-A PREROUTING -d 群晖的zerotier_IP地址 -p udp -m udp --dport 9297 -j DNAT --to-destination PS5的内网地址:9297
-A PREROUTING -d 群晖的zerotier_IP地址 -p udp -m udp --dport 9302 -j DNAT --to-destination PS5的内网地址:9302
保存退出
(这里配置映射的是PS5的端口,PS4的应该只有唤醒端口9302不一样好像要改为987,这里ps4的小伙伴可以修改测试一下,不得就抓包看看)
加载iptables配置:
iptables-restore < iptables_rule
(注意以后群晖如果更改了网络策略,比如开启了nfs权限啥的,iptables配置会被覆盖,要重新添加这个配置后加载,虽然一般家庭用户也很少频繁开关网络策略吧。。闲麻烦的话可以写个cron)
3、chiaki:
PSNINE有介绍和下载,该串流软件需要先用自己的PSN生成一个注册码,对应工具这里PSNINE里也有提供:
http://psnine.com/topic/36246?page=3
以手机端为例,生成自己的串流码后直接添加设备,这里要注意添加的设备地址是群晖的zerotier_IP地址,因为通过之前的配置,现在群晖会把访问9295-9297,9302这几个端口的流量之直接转发给PS5。
外设部分
搓玻璃实在没啥手感,所以在淘宝搞了个支架
总结
每次游玩只需打开zerotier开启网络,然后到chiaki下点击唤醒PS5后,连接游玩即可,
实际游玩体验:5G网络在配置15000RATE游玩RPG或回合制(FF7,轨迹,机战)感觉是能接受的;高达VS,魂系列这些同样突然的延迟可能会导致直接YOU DIED,但如果出差党换成用电脑有线或宾馆wifi应该改善很多。
最后:welcome home, good hunter。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
踵落
校验提示文案
fgg1991
校验提示文案
森雨Plus
校验提示文案
寻找大神12138
校验提示文案
棠溪2022
校验提示文案
整多笼奶黄包
校验提示文案
浪客剑心X
校验提示文案
血豹天藏
校验提示文案
vies
校验提示文案
买___
校验提示文案
耀舞飞扬
校验提示文案
ozzzo
校验提示文案
cpss
校验提示文案
brave东东
但是dsm7的iptables似乎仍然有点问题。iptables-save导出的无法restore回去,报错error creating chain 'DEFAULT_OUTPUT':File exists。
我直接使用iptables -t nat 添加了五条转发规则,但是似乎psplay和chakia都不能连接到ps5。求教
校验提示文案
饿鱼包包
校验提示文案
饿鱼包包
校验提示文案
brave东东
但是dsm7的iptables似乎仍然有点问题。iptables-save导出的无法restore回去,报错error creating chain 'DEFAULT_OUTPUT':File exists。
我直接使用iptables -t nat 添加了五条转发规则,但是似乎psplay和chakia都不能连接到ps5。求教
校验提示文案
cpss
校验提示文案
ozzzo
校验提示文案
浪客剑心X
校验提示文案
耀舞飞扬
校验提示文案
整多笼奶黄包
校验提示文案
棠溪2022
校验提示文案
寻找大神12138
校验提示文案
踵落
校验提示文案
fgg1991
校验提示文案
vies
校验提示文案
买___
校验提示文案
森雨Plus
校验提示文案
血豹天藏
校验提示文案