远程串流方案分享
方案刚需
2c4g 200M 上下行的有公网ip的服务器,2g机器也可以,200M比较重要。
方案原理及部署体验
服务器部署 frp 服务端,开放对应端口
宿主机开启 sunshine,开放对应端口,配置 frp 客户端,实现内网穿透
串流设备通过服务器公网 ip 连接并转发数据,实现远程串流
iqoo neo9 在 wifi 环境下 720p 10码率的延迟表稳定在 50ms/9ms(网络延迟/解码延迟),游玩大表哥、黑猴等体验还不错,服务器流量跑的比较快,自己游玩时需要注意一下
部署教程
使用 1Panel 面板小白化部署,避免一些版本以及奇奇怪怪的问题,服务器使用的系统为 CentOS 7.9
安装 Docker
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ceyum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken# 设置docker镜像源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
yum makecache fastyum install -y docker-ce启动docker服务
systemctl start docker测试docker是否安装成功
docker images安装 1Panel 面板
bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"可以全程默认,密码要记住
查看1Panel面板用户信息及安全入口
1pctl user-info服务端部署 frp
通过面板安全入口进入 1Panel 面板
在应用商店找到 frp 服务端进行下载

如图填写,密码和密钥自己修改

在系统防火墙中开放如下端口

在浏览器地址栏输入 "你的ip:7500" 进入 frp 面板,正常显示即安装成功
宿主机配置 sunshine
去 sunshine 官网下载 sunshine 安装包
或者在这直接下载 sunshine-windows-installer.exe
注册并记住密码后在设置页面可以将语言设置为中文
如果首页有 ViGEmBus 报错,安装一下手柄驱动,否则串流设备将无法使用手柄
自行下载或在这直接下载 ViGEmBus_1.18.367_x64_x86.exe

点击 network 配置如下

宿主机防火墙设置
打开控制面板,依次点击系统和安全,Windows Defender 防火墙,左边的高级设置,点击入站规则,然后新建规则
选择端口

下一页,注意逗号是英文逗号

一直下一步,取一个名字即可
再新建一个规则用来开放 udp 协议,如图

宿主机配置 frp
去 github 下载 frp 客户端压缩包,版本要和 1Panel 面板一致
下载地址:Releases · fatedier/frp,找到对应版本,在 assets 找到 amd64.zip 结尾的文件进行下载
或在这直接下载 frp_0.64.0_windows_amd64.zip,需要注意的是,这个文件或被系统当作危险文件直接删除,记得在 windows 安全中心进行还原
解压后编辑里面的 frpc.toml,修改 IP 和 token
输入以下配置
serverAddr = "你的服务器 IP"
serverPort = 7000
auth.method = 'token'
auth.token = '你的token'
[[proxies]]
name = "moonlight-47984"
type = "tcp"
localIP = "127.0.0.1"
localPort = 47984
remotePort = 47984
[[proxies]]
name = "moonlight-47989"
type = "tcp"
localIP = "127.0.0.1"
localPort = 47989
remotePort = 47989
[[proxies]]
name = "moonlight-47990"
type = "tcp"
localIP = "127.0.0.1"
localPort = 47990
remotePort = 47990
[[proxies]]
name = "moonlight-48010"
type = "tcp"
localIP = "127.0.0.1"
localPort = 48010
remotePort = 48010
[[proxies]]
name = "moonlight-47998"
type = "udp"
localIP = "127.0.0.1"
localPort = 47998
remotePort = 47998
[[proxies]]
name = "moonlight-47999"
type = "udp"
localIP = "127.0.0.1"
localPort = 47999
remotePort = 47999
[[proxies]]
name = "moonlight-48000"
type = "udp"
localIP = "127.0.0.1"
localPort = 48000
remotePort = 48000在当前文件夹下打开 cmd

执行命令
frpc.exe -c frpc.toml
如图所示即为打洞成功
再次打开 ip:7500,如图,可以看到端口数据可以正常转发

启动串流
下载 moonlight 客户端
可以自行下载官方版的,这里提供安装包 app-nonRoot-release.apk
也可以下载魔改版,这里推荐阿西西日常的魔改版,视频入口点 这里
进入串流界面

点击上面的十字加号
输入你的 ip 地址

然后就可以快乐地进行远程串流游戏力