chirp+sunshine+moonlight+反向隧道实现远程串流

chirp+sunshine+moonlight+反向隧道实现远程串流

在chirp 1.1.6版本时,突然收到一个网友发来的消息,网友想要Sunshine搭配 Moonlight进程远程游戏串流。于是在1.1.7版本时,chirp果断适配了udp。1.1.8版本实现了udp/tcp共存,1.2.0版本实现了反向隧道,彻底摆脱udp被丢包的问题。

在chirp 1.1.7版本刚刚支持udp的时候,当我通过局域网测试正常通过Moonlight访问了Sunshine,但是通过chirp内网穿透之后,我的公网ip还是无法到访问到内网的Sunshine,Moonlight 显示 RTSP handshake failed 。

经过多轮测试发现

  1. 服务器udp服务正常通讯,但是对于我的本地 moonlight rtsp始终无法通讯。
  2. 服务器udp服务正常通讯,普通udp发送消息正常通讯
  3. 程序在纯内网udp时连接正常,普通udp消息通讯正常,rtsp连接正常

最终结论,运营商对音视频的udp流量进行了无差别限制。想到这里又揣测了Tailscale的原理,于是产生了一个大胆的想法。

能否模仿像Tailscale这样,两边都是局域网进行访问,中间建立一条无形的隧道,这样一来有两个好处。

  • 服务器不再需要暴露更多的端口
  • 公网只做数据转发,不必在遵守通用的udp、tcp的套路

最终效果如上图,我们可以从局域网a的内网ip端口,直接访问内网b的ip端口。当然,chirp也是支持自定义任意内网a和内网b的ip和端口,两边的局域网不必保持相同的ip和端口。

sunshine配置

登录sunshine后台,在应用处增加一个Desktop的应用

在配置页面,记录所有的端口和协议

chirp客户端配置

如果您是首次使用chirp,可以参考这篇文章进行安装部署https://mp.weixin.qq.com/s/FZsrcp1F3LI5FvA2GfFfIg

首先在sunshine所在的局域网,打开chirp客户端,在隧道管理页面,依次添加隧道。

注意,内网ip软件默认为127.0.0.1,可根据实际局域网ip灵活调整

添加完,所有的ip、端口、协议。然后,依次启动多有的通道

然后我们找到另一个局域网的电脑,安装chirp客户端。

在反向隧道栏,点击刷新按钮,列表就会自动显示出sunshine穿透出来的所有ip

我们可以依次启动这些反向隧道,如果端口冲突,还可以点击编辑按钮,修改为新的端口。

moonlight

我们现在可以打开moonlight,输入反向隧道的所在的局域网ip。

最终查看这个画质,还不错。

结束语

chirp 还是一个比较年轻的穿透工具,原生的网页操作页面就做的很好,比起frp复杂的配置,使用起来更加便捷,对小白用户友好,易于上手。目前已经适配开箱即用的反向隧道模式,可以无缝使用异地局域网模拟内网互相访问。

相关推荐
Asurplus4 天前
【Ngrok】Linux运行内网穿透工具Ngrok
linux·运维·服务器·内网穿透·ngrok
平凡的阳阳7 天前
千里通Linux盒子搭建FRP全教程:低成本实现内网穿透+代理服务器
linux·frp·内网穿透·代理·socks5·远程ssh
竹之却17 天前
【Minecraft】我的世界 Windows 开服,内网穿透教程
frp·内网穿透·我的世界·minecraft·樱花穿透·sakurafrp·我的世界开服
绝世唐门三哥18 天前
MacOS下内网穿透工具cpolar使用教程(Mac 版)
macos·内网穿透
竹之却18 天前
【Linux】内网穿透原理
linux·服务器·网络·frp·内网穿透·p2p·xtcp
竹之却22 天前
如何使用 SakuraFrp 做内网穿透
运维·服务器·网络·frp·内网穿透·sakurafrp
ayaya_mana25 天前
NPS 内网穿透,二次开源版新增多种连接协议(含 P2P 配置)
linux·运维·服务器·网络协议·内网穿透·p2p·nps
纪伊路上盛名在1 个月前
Zerotier-Tailscale 自动化监控
linux·运维·自动化·内网穿透
微学AI1 个月前
树莓派搭建便携弱网测试网关:基于 Facebook ATC 的实践指南
数据库·内网穿透
专家大圣1 个月前
告别付费 OCR!PaddleOCR-VL + cpolar,打造专属便携识别工具✨
网络·ocr·内网穿透·cpolar