Lo que realmente es mDNSResponder
mDNSResponder es un daemon del sistema integrado en macOS y firmado por Apple. No es malware, ni un complemento, ni algo que hayas instalado: viene con el sistema operativo y se inicia automáticamente.
Hace dos tareas distintas, y confundirlas es el origen de la mayor parte de la confusión que lo rodea. La primera es multicast DNS y descubrimiento de servicios: esto es Bonjour de Apple, la tecnología que permite a tu Mac encontrar impresoras, receptores AirPlay, Chromecasts, unidades compartidas, accesorios HomeKit y otros Mac de tu red local sin ninguna configuración manual. Este tráfico se envía a una dirección multicast en el puerto UDP 5353, que es el puerto estándar de mDNS.
La segunda tarea es la que la mayoría de las explicaciones se saltan: en macOS, mDNSResponder también es el resolutor DNS de todo el sistema. Cuando cualquier app de tu Mac necesita convertir un nombre de host en una dirección IP, la solicitud normalmente la gestiona mDNSResponder en nombre de esa app, en lugar de la propia app.
Ambas tareas se ejecutan dentro del mismo proceso. Así que cuando ves a mDNSResponder ocupado, estás viendo el resultado combinado del descubrimiento en la red local y de cada búsqueda de nombres que realiza tu Mac.
Por qué parece que contacta a tantos hosts
Esta es la parte que alarma a la gente, y tiene una explicación mundana. Como mDNSResponder resuelve nombres en nombre de otros procesos, prácticamente todas las búsquedas DNS de tu Mac parecen originarse en mDNSResponder en lugar de en la app que realmente quería la dirección.
Tu navegador cargando una página con una docena de recursos de terceros, tu cliente de correo comprobando cuentas, un actualizador en segundo plano, una app de chat reconectándose: nada de eso aparece como tal en una vista DNS. Aparecen como mDNSResponder hablando con tus servidores DNS configurados. Desde fuera, un solo proceso parece interesado en una lista enorme y en constante cambio de dominios.
Ese único hecho responde a la mayor parte de la sospecha. Ver que mDNSResponder contacta con muchos hosts no significa que mDNSResponder esté haciendo nada sospechoso. Es un proxy. La actividad pertenece al software que pidió la consulta; mDNSResponder es solo el componente que la realiza.
También explica por qué el proceso rara vez se queda en silencio. Un Mac moderno tiene un zumbido constante de software haciendo comprobaciones: servicios de sincronización, notificaciones push, búsquedas de actualizaciones, telemetría de las apps que tienes instaladas. Cada una de esas cosas necesita primero resolución de nombres, y todo ello pasa por el mismo daemon.
¿Es seguro mDNSResponder y cómo verificarlo tú mismo
mDNSResponder es una parte legítima de macOS. No hay un historial significativo de que sea un disfraz de algo malicioso, y en un Mac que funciona con normalidad deberías esperar ver exactamente una instancia en ejecución.
No tienes que creerlo sin más. En Activity Monitor, selecciona el proceso y abre el inspector para ver sus detalles, incluida la ruta al ejecutable desde el que se lanzó. Los demonios del sistema de Apple viven dentro de directorios protegidos del sistema, no en tu carpeta de inicio, Descargas o Aplicaciones. Un proceso que use el nombre mDNSResponder pero se ejecute desde una ubicación inusual sería lo que merece investigar, el nombre en sí no prueba nada.
La comprobación más sólida es la firma del código. macOS incluye la herramienta codesign, y ejecutar una verificación sobre la ruta del binario en ejecución te mostrará la autoridad de firma. Los componentes del sistema de Apple están firmados por Apple. En versiones recientes de macOS, los archivos del sistema también se encuentran en un volumen del sistema sellado y de solo lectura, lo que hace que manipular el binario real sea bastante más difícil que antes.
Una comprobación más de sentido común: una actividad alta de mDNSResponder es normal, pero un uso alto y sostenido de CPU durante horas no lo es. Eso suele ser síntoma de otra cosa en tu red o en tu Mac, que es lo que cubre la siguiente sección.
Solución para un alto uso de CPU o actividad constante en la red
Cuando mDNSResponder realmente se porta mal, la causa casi siempre está fuera de él. Los sospechosos habituales: una red local muy cargada con mucho tráfico de Bonjour, una impresora o un NAS que se anuncia de forma agresiva, una VPN o software DNS de terceros que entra en conflicto con el resolvedor del sistema, una comprobación de portal cautivo en un hotel o una cafetería, o una sola app en tu Mac que lanza búsquedas en un bucle cerrado.
Abórdalo por orden de esfuerzo. Primero, apaga y enciende el Wi-Fi, o desconéctate brevemente de la red: esto limpia un número sorprendente de estados transitorios. Si eso no ayuda, reinicia, un reinicio reinicia el daemon junto con todo lo que le alimenta. Si el problema solo ocurre en una red, la variable es la red, no tu Mac: prueba con otra para confirmarlo y luego mira qué se está anunciando allí. Si instalaste recientemente un cliente VPN, una herramienta de filtrado DNS o cualquier otra cosa que instale una extensión de red, desactivarla temporalmente te dirá rápido si es el desencadenante. Si el problema te sigue por distintas redes y persiste tras un reinicio, sospecha de una aplicación concreta y empieza cerrando una a una las apps instaladas o actualizadas recientemente.
Lo que no debes hacer es bloquearlo. Nunca bloquees mDNSResponder en un firewall. Como es el resolvedor de todo el sistema, bloquearlo detiene la resolución de nombres para todo el Mac: navegadores, Mail, el App Store, actualizaciones de software y, en la práctica, cualquier otra cosa que toque la red fallará, normalmente con errores confusos que no apuntan a la regla del firewall que añadiste. Es uno de los pocos procesos en los que bloquear causa mucho más daño que el tráfico que pretendía detener.
Si tu objetivo real es reducir el ruido de la red local, actúa sobre las funciones, no sobre el resolvedor. Desactivar el receptor de AirPlay, compartir impresoras, compartir archivos y otros servicios que dependen de Bonjour y no usas reduce lo que tu Mac anuncia y escucha, sin romper DNS. Esa es la palanca correcta.
Averiguar qué aplicación realmente inició una búsqueda
La consecuencia de la resolución centralizada es un problema de atribución. Si observas las conexiones a nivel de sistema, una gran parte de la actividad DNS interesante está etiquetada como mDNSResponder, y no puedes saber solo con esa etiqueta si el dominio lo pidió tu navegador, un actualizador en segundo plano o una app que llama a casa en silencio.
Responder a eso requiere una herramienta que observe las conexiones por proceso y devuelva la actividad a la app de origen, en lugar de al daemon que realizó la búsqueda. Esa es la laguna que NetMute está diseñado para cerrar: muestra tráfico en tiempo real por app y por proceso, y mantiene registros a nivel de dominio por app, qué dominios contactó una aplicación, cuándo y cuánto datos se movieron. En lugar de un solo daemon ocupado, obtienes una vista por app de lo que tu Mac está hablando realmente.
A partir de ahí, la respuesta es precisa. El firewall por app de NetMute te permite bloquear una aplicación concreta con un clic, o aplicar una regla temporal con caducidad automática cuando solo quieres silenciar algo durante un rato. Los perfiles de red permiten que las reglas sean distintas en casa, en la oficina y en redes no confiables, y Tracker Shield cubre una lista de más de 1,100 dominios de rastreadores conocidos. Nada de eso implica interferir con mDNSResponder en sí: dejas el resolvedor en paz y actúas sobre la app que generó las solicitudes, que es la única solución que no rompe el resto de tu Mac.