6步搭好Moonlight主机:Sunshine免费开源游戏串流服务器完整上手
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
书房里的旧电脑 + 客厅的大屏电视,是很多人的配置。装上 Sunshine,游戏画面被实时编码成视频流推到任意屏幕,键盘和手柄输入再原路传回——Sunshine 是一款免费开源的自托管游戏串流服务器,专门做 Moonlight 的主机端。
它到底解决什么问题
本节解决:Sunshine 和 Moonlight 谁干什么、它和云游戏/厂商串流差在哪。
先分清角色:Sunshine 是跑在你电脑上的服务端,负责抓屏、硬件编码视频、模拟客户端发来的键鼠手柄输入;Moonlight 是客户端,负责把画面播出来。两者分开装,但配合起来就是一条完整的串流链路。你在网页端"精选应用"页能看到各类 Moonlight 客户端的入口:
把三种"玩别人屏幕"的路子摆一起:
| 维度 | 云游戏订阅 | 厂商闭源串流 | Sunshine(开源自托管) |
|---|---|---|---|
| 游戏跑在哪 | 厂商机房 | 你的电脑 | 你的电脑 |
| 月成本 | 订阅费 | 通常免费 | 0 元 |
| 数据去向 | 第三方服务器 | 厂商生态 | 只在你自己的网络里 |
| 客户端平台 | 有限 | 自家生态 | Moonlight:Windows / macOS / Linux / Android / iOS / tvOS 等 |
| 编码方式 | 服务端统一 | 厂商自研 | 直接吃自家显卡硬件编码:NVENC(NVIDIA 显卡硬件编码器)、AMD AMF、Intel QuickSync、VAAPI,也能软件编码 |
给新手一句话结论:游戏继续跑在你自己的显卡上,数据不出家门,延迟和画质全由你说了算。
动手前,三关自检
本节解决:装之前先确认系统、硬件、网络都达标,避免装完跑不动。
| 类别 | 最低要求 | 备注 |
|---|---|---|
| 系统 | Windows 11+;Ubuntu 22.04+ / Debian 13+ / Fedora 43+;macOS 14.2+;FreeBSD 15.1+ | macOS 版目前标记为实验性,且暂不支持手柄;想用手柄玩,主机选 Windows 或 Linux |
| 硬件 | CPU:Ryzen 3 或 Core i3 及以上;内存:4GB+;显卡:带硬件编码即可(NVENC / Intel VAAPI / AMD VCE 1.0+) | 三样编码卡都没有时用软件编码(CPU 编码,略吃资源)。4K 门槛更高:AMD 要 VCE 3.1+,Intel 要 HD 510+,NVIDIA 要 RTX 2000 系 / GTX 1080 及以上,并配 Ryzen 5 / i5 级 CPU;HDR 流另有显卡门槛,且主机系统需先开启 HDR |
| 网络 | 主机与客户端都在 5GHz WiFi(802.11ac)下 | 想跑 4K,建议两边都用 CAT5e 及以上网线直连 |
装完就开玩:一条主线走到底
本节解决:从安装到第一次串流成功,6 步一次讲完,照做即可。
按系统选一行执行安装(Linux 有发行版专属包时优先用它):
# Windows:从发布页下载 Sunshine-Windows-AMD64-installer.msi 安装包,双击安装 # Linux(Flatpak): flatpak install --user flathub dev.lizardbyte.app.Sunshine flatpak run --command=additional-install.sh dev.lizardbyte.app.Sunshine # macOS(Homebrew): brew tap LizardByte/homebrew && brew install sunshine # Docker(官方注明不推荐大多数用户使用): docker pull lizardbyte/sunshine启动服务。Linux 执行
systemctl --user start app-dev.lizardbyte.app.Sunshine拉起用户服务;Windows 安装后默认以系统服务方式运行。浏览器打开
https://localhost:47990进入 Web 管理界面。页面提示"不安全网站"是正常现象——用的是自签名证书,继续访问即可。首次进入时按提示创建 Web 登录用户名和密码。这是管理界面的钥匙,务必记牢。
在目标设备上装好 Moonlight 客户端,添加这台主机;弹出 PIN 请求时,回到网页导航栏的 PIN 页填入该码并给设备起名,看到成功提示即配对完成。
在 Moonlight 应用列表里选一个应用,点击开始。
三条验收标准:目标屏幕 5 秒内出现主机画面;按键和手柄都有响应;Moonlight 性能叠加层里码率稳定不掉零。三条齐了,就是通了。
跑通之后,还能这么用
本节解决:串通只是起点,三个进阶用法把这台主机用出价值。
想看主机整块桌面,一键投屏?
目标:在 Moonlight 里直接看到主机桌面。
- 什么都不用配——Sunshine 自带Desktop应用(整块桌面直接串流,不启动任何程序)和Steam入口(启动后直进大屏游戏模式);
- 在 Moonlight 应用列表里选Desktop,点击开始;
- 用
Ctrl+Alt+Shift+N隐藏或显示光标(所有快捷键都以Ctrl+Alt+Shift开头)。
体验提示:跑 3A 大作优先走 Steam 入口进大屏模式,手柄会被模拟成主机上配置好的手柄类型,输入几乎无感延迟。
想让每个游戏一键直达,不用翻桌面?
目标:Moonlight 里一点就进游戏,告别"串流桌面再找图标"。
- Web 管理界面进"应用"(Applications)页,点Add New;
- 填应用名、程序路径(
cmd)与工作目录(cwd),比如浏览器或某款游戏的启动命令; - 保存后回到 Moonlight 刷新列表即可看到新入口。命令里支持环境变量,
$(HOME)会自动替换成你的家目录。
体验提示:串流中按Ctrl+Alt+Shift+F1到F12可切到不同显示器继续玩;被串流的应用退出时,串流会自动结束。
人不在家,也能开机开玩?
目标:出门在外连回主机串流。
- Web 配置页搜索
upnp(UPnP=路由器自动开转发的协议),把默认disabled改成enabled,让路由器替你映射串流端口(Sunshine 基础端口默认47989,网页管理走47990); - 在 Moonlight 里手动添加这台主机的公网 IP;
- 远程串流对上行带宽更敏感——先把分辨率和码率调低再试。
体验提示:Web 管理页的访问范围由origin_web_ui_allowed控制,默认lan表示只有局域网设备能打开;想从外网管理,得另做路由器端口转发,同时配强密码、保持软件更新。
卡住时,按症状开药
本节解决:串流出问题别慌,照症状对表开药,再用日志精确定位。
| 症状 | 常见原因 | 解法 |
|---|---|---|
| Moonlight 发现不了主机 | 不同网段或防火墙拦截 | 确认同一局域网并放行相关端口;在 Moonlight 里手动填 IP 添加 |
| Web 界面打不开 | 用了http或端口被占 | 用https://localhost:47990访问;检查防火墙规则 |
| 日志报编码器错误 | 显卡驱动或编码支持缺失 | 更新显卡驱动,对照 README 里的功能兼容表核对 GPU 与编码 API |
| 画面卡顿、掉帧 | 带宽不足或码率过高 | 先降分辨率/码率再谈画质,参考 性能调优 |
| 键盘鼠标手柄没反应 | 输入设备权限问题 | Linux 把用户加入input组(sudo usermod -aG input $USER)或重启系统;Windows 安装 Virtual HID Driver 后重启 |
| 忘记 Web 登录密码 | 凭据丢失 | 命令行执行sunshine --creds 新用户名 新密码重置 |
日志定位:网页端Logs标签页直接看运行日志,Troubleshooting页逐条列出警告与错误,编码器、GPU、网络各环节一眼可见:
本地日志文件:Linux 默认在~/.config/sunshine/sunshine.log,Windows 在%ProgramFiles%\Sunshine\config\sunshine.log;位置可用配置项log_path修改。想看有哪些启动参数,终端跑一句sunshine --help就行。
那台书房旧电脑里存着的 3A 大作,现在正躺在卧室的电视里——零订阅费,数据一步不出家门。照着下面这份清单走一遍:
- 在主机上装好 Sunshine(对应系统的安装命令见"一条主线"一节)
- 访问
https://localhost:47990,完成首次用户名密码设置 - 在 Moonlight 中添加主机,完成 PIN 配对
- 用内置 Desktop 应用串流一次桌面,确认画面与输入都正常
- 在 Applications 页添加至少一个自定义游戏入口
- 按症状对照表处理一次卡顿或输入问题
- (进阶)启用 UPnP,解锁远程串流
延伸阅读(仓库内文档):
- 上手安装:各发行版的安装方式与首次启动的全部细节
- 全部配置项:每个配置项的含义、默认值与可选值
- 性能调优:码率、分辨率、编码器怎么选
- 故障排查:按平台细分的疑难问题手册
- 构建指南:想从源码编译 Sunshine 的开发者入口
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考