AirPlay falla cuando LAN (bridge0) tiene prioridad sobre Wi-Fi, por negociación RTSP vía IPv6 link-local
Detalles:
Mac: MacBook Pro M1 Pro, macOS Tahoe. Interfaces de red: bridge0 (LAN, con prioridad de servicio) y en0 (Wi-Fi), ambas en la misma subred 192.168.2.0/24
Problema: al intentar usar AirPlay (por ejemplo a un Apple TV/altavoz en la misma red), la conexión falla con "No se ha podido establecer conexión con [dispositivo]". Esto ocurre porque bridge0 (Ethernet/LAN) tiene prioridad de servicio sobre Wi-Fi en el orden de red del sistema.
Diagnóstico ya realizado:
- Probé forzar el tráfico AirPlay (mDNS 5353, RTSP 7000/7100, AirPlay2 47000, RAOP 6000-6009, PTP 319/320) por Wi-Fi usando reglas pf con route-to. Las reglas cargaban correctamente y sí desviaban tráfico IPv4 por en0 (confirmado con tcpdump y pfctl -vv), pero AirPlay seguía fallando.
- Con capturas simultáneas en ambas interfaces confirmé que gran parte de la negociación RTSP (puerto 7000) ocurre por IPv6 link-local (fe80::...), que macOS ancla a la interfaz "primaria" del sistema (bridge0 en mi caso). Las direcciones link-local no son enrutables entre interfaces, así que pf route-to no tiene ningún efecto sobre ese tráfico.
Conclusión: el problema no es de enrutamiento de paquetes sino de qué interfaz macOS considera "primaria" para IPv6 link-local. AirPlay parece requerir que esa interfaz primaria sea la Wi-Fi.
Pregunta: ¿hay alguna forma soportada de indicarle a macOS que use Wi-Fi como interfaz primaria para AirPlay/Bonjour sin tener que reordenar manualmente el servicio de red completo (networksetup -ordernetworkservices) cada vez, cuando coexisten LAN y Wi-Fi en la misma subred? ¿Existe algún ajuste específico de AirPlay/Bonjour para esto, o la única vía es cambiar el orden de prioridad de servicios de red?