Cómo interceptar el RTMP de la PS5 con dnsmasq y nginx-rtmp
Sony cierra la PS5 a YouTube y Twitch para emitir, así que un desarrollador ha puesto su Mac a hacerse pasar por Twitch a nivel de DNS y recibir el stream RTMP.

La PS5 solo emite en directo a YouTube y Twitch. Cualquier otra cosa, compartir pantalla en Discord por ejemplo, obliga a pasar por una capturadora de HDMI, que ronda los 100 dólares. Un desarrollador ha esquivado la compra montando su propio receptor: hace que la consola crea que su Mac es Twitch y le entregue el stream RTMP directamente.
Dónde apunta de verdad la consola
El primer intento fue falsear ingest.twitch.tv. No sirve. Ese nombre resuelve a un endpoint de descubrimiento por HTTPS en el puerto 443: la consola pregunta ahí qué servidor de ingesta regional le toca y Twitch responde con algo como ap-southeast-1.prod.fi.contribute.live-video.net. El stream real va a ese segundo host, y va en RTMPS, RTMP sobre TLS en el 443, con validación de certificado contra las CA de confianza. Un certificado autofirmado no cuela y en una PS5 no se pueden instalar CA propias.
Probó entonces con YouTube. Su ingesta es RTMP plano en el puerto 1935, sin TLS, y el vídeo llegó sin problema. Duró 60 segundos: la consola consulta cada poco la API de YouTube para confirmar que la emisión sigue viva y, como el tráfico nunca llegaba a YouTube, la API no devolvía nada y la PS5 cortaba el broadcast.
La respuesta estaba en los logs de DNS tomados mientras emitía. La consola resolvía ingest.global-contribute.live-video.net, que encadena hasta aps30.contribute.live-video.net. Falsear el comodín contribute.live-video.net cubre todos los subdominios y redirige el stream a la Mac sin tocar certificados.
El montaje
Son dos piezas: dnsmasq y nginx-rtmp. El primero resuelve los dominios de ingesta de Twitch a la IP de la Mac en la LAN, con 1.1.1.1 y 8.8.8.8 como resolvers de arriba. El segundo escucha en el 1935, sirve una aplicación llamada ps5 que no graba nada, solo retransmite en vivo, y dispara un callback HTTP a un puerto local cuando arranca un stream. Ese callback es lo que usa la app de barra de menús de macOS para detectar que la consola está emitiendo.
Lo interesante es cómo mete el DNS en la consola. No lo configura a mano en la PS5. En el router, un GL.iNet con OpenWRT, añade la opción 6 de DHCP al lease de la consola mediante una etiqueta, de modo que en la siguiente renovación la PS5 recibe la IP de la Mac como servidor DNS. La consola no se toca.
El autor ha publicado el receptor como yash-garg/PS5Streamer.
Merece la pena mirarlo aunque no haya una PS5 de por medio. Es un recordatorio de que el DNS sigue siendo un punto de control entero: quien responde la consulta decide a dónde va el tráfico, y aquí basta con eso para montar un receptor propio sin romper TLS. Sony puede cerrarlo en cualquier firmware fijando direcciones o metiendo la ingesta de Twitch por un canal con validación, y entonces el truco se cae. Mientras tanto, el patrón sirve para cualquier dispositivo que resuelva su backend por nombre.
