巧用 DNS 劫持 PS5 的 RTMP 流
Hijacking the PS5's RTMP Stream
Sony 对 PS5 的硬件限制令人头疼,尤其是无法直接将游戏画面分享到 Discord。购买采集卡成本高昂,而 Remote Play 又存在输入延迟且难以自定义。我通过研究 PS5 的流媒体机制,发现它使用 RTMP 协议将数据发送给 Twitch。由于 PS5 通过 DNS 解析服务器地址,我利用 dnsmasq 劫持 DNS 请求,将 Twitch 的域名指向我的 Mac,并配合 nginx-rtmp 接收数据流。这样,PS5 以为自己在向 Twitch 直播,实际上数据却流向了本地。最终,我通过 mpv 低延迟播放该流并共享窗口到 Discord,实现了无需额外硬件的免费直播方案。
如果我们可以控制 DNS 返回的内容,就能控制数据流的去向。