Resolviendo problemas de Multicast DNS (mdns) en Linux

2023-05-18T06:23:23+02:00 | 4 minutos de lectura | Actualizado en 2023-05-18T06:23:23+02:00

Resolviendo problemas de Multicast DNS (mdns) en Linux

Avahi es un software libre y de código abierto que implementa el protocolo de descubrimiento de servicios de red mDNS/DNS-SD. Este protocolo permite a los dispositivos en una red local descubrir y anunciarse a sí mismos y a los servicios que ofrecen sin necesidad de configuración manual.

Avahi es un demonio en sistemas operativos Linux, y es compatible con otros sistemas operativos, incluidos macOS y Windows, y se integra con otros servicios de red para proporcionar un mecanismo de descubrimiento y resolución de nombres de servicio para dispositivos y aplicaciones en la red local. Avahi se utiliza comúnmente para la detección automática de impresoras, archivos compartidos, servicios de música y otros recursos de red en sistemas Linux y otros dispositivos integrados, sobre todo para las primeras instalaciones o cuando el dueño es lo suficientemente vago como para no terminar de configurarlo bien.

¿Y esto da problemas?

Pues la verdad es que sí, no solo por lo del dueño vago o del administrador descuidado, sobre todo cuando uso un TLD.

El servicio “Name Service Switch” y el archivo nsswitch.conf se utiliza para especificar qué fuentes de información se deben consultar primero para obtener información de nombres de usuario, DNS, contraseñas, grupos, hosts, etc…
El problema está en la prioridad que se le da en el orden de búsqueda de DNS dentro del fichero nsswitch.conf.

Habrá que configurarlo

La configuración de nsswitch.conf puede variar según la distribución de Linux y la versión del sistema operativo. La modificación incorrecta del archivo puede hacer que el sistema operativo no funcione correctamente, así que hay que saber lo que se toca.

En mi experiencia con los sistemas tipo red-hat (Fedora, Centos…) los paquetes que se instalan son avahi y sus dependencias, y nss-mdns.
En los armbian que tengo por casa, y me imagino que Debian y familia, son avahi-daemon y libnss-mdns.
Ojo, esto no está escrito en piedra y hay otras combinaciones.

Activar mDNS

Según lo clásico, lo que se nos enseña siempre en Unix, y Linux, es que el fichero /etc/nsswitch.conf contiene esta línea base:

hosts: files dns

Que quiere decir que primero se revisen los ficheros locales y luego se le pregunte al DNS.
Eso es el comportamiento esperado en una máquina normal.

Pero claro, esa funcionalidad se queda corta a la espera de DNS dinámico de mDNS y de los Service Discovery.

Tengo un micro pc basado en una BananaPi M2U que tiene Armbian, y está en una carcasa de un viejo router, muy escondidita.

En Armbian, basta por editar el fichero /etc/nsswitch.conf y en la línea 12, sustituir la línea:

hosts:          files mymachines dns myhostname

por la línea:

hosts:          files mymachines mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns myhostname

Bien, eso es lo que dice la documentación y la inmensa mayoría de los foros que hay que poner para que zeroconf funcione.

De esta manera se harán resoluciones de nombres a través de mdns (IPv4).

¿Y en Fedora, Red-Hat y derivados?

Pero en Fedora no, no es así, y ahí vamos a tocar el hardening del sistema operativo, así que continuaré en un próximo artículo, pero dejo por aquí una pequeña muestra de como se ve esto:

Desde un cliente cualquiera, localizar la bbdd, y un par de máquinas vecinas, funciona bien, como se le espera al servicio mDNS y de paso, al DNS-SD.

[samquejo@fedora ~]$ getent hosts
127.0.0.1       localhost localhost.localdomain localhost4 localhost4.localdomain4
127.0.0.1       localhost localhost.localdomain localhost6 localhost6.localdomain6
[samquejo@fedora ~]$ getent hosts labsam-3.local
203.0.113.111  labsam-3.local
[samquejo@fedora ~]$ getent hosts cpe1704tks.local
203.0.113.115  cpe1704tks.local

En cambio, en un servidor DNS, que es propietario de la zona yovirtualizador.xyz resuelve las direcciones que tiene, y si no las encuentra, pasa directamente al CNAME del dominio. Es decir, que consulta antes DNS que mDNS, por seguridad.

root@petete:~# getent hosts fedora
100.127.255.255  labsam.duckdns.org fedora.yovirtualizador.xyz
root@petete:~# getent hosts fedora.local
100.127.255.255  labsam.duckdns.org fedora.local.yovirtualizador.xyz
root@petete:~# getent hosts cpe1704tks.local
100.127.255.255  labsam.duckdns.org cpe1704tks.local.yovirtualizador.xyz
root@petete:~# getent hosts cpe1704tks
100.127.255.255  labsam.duckdns.org cpe1704tks.yovirtualizador.xyz

Ahora toca seguir, con el hardening de linux, y corrigiendo este comportamiento por el bien del funcionamiento de mi red local


YoVirtualizador en formato podcast. Ahora también en Sospechosos Habituales: https://wt.territoriolinux.es/rss/short.xml
Y sin más, os dejo los enlaces:

Web: https://www.yovirtualizador.com
Grupo de telegram: https://t.me/grupovirtualizador
Podcast: https://www.ivoox.com/podcast-yovirtualizador_fg_f1563806_filtro_1.xml
Canal de youtube: https://www.youtube.com/channel/UC0R70cABSsmC6TFyXth0qPg
Enlace de afiliados de amazon: https://amzn.to/3gX3HmK
Enlace de referidos de la Asociación Podcast: https://www.asociacionpodcast.es/registrarse/socio/?coupon=SB6A70

© 2019 - 2025 YoVirtualizador

Tu podcast y blog de confianza

Copyright

copyright = ‘Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional (CC BY-NC-ND 4.0)

Políticas

Políticas del sitio web YoVirtualizador

Datos actualizados a enero de 2021

YoVirtualizador es la marca de varios proyectos

Podcast de informática profesional. Canal de Youtube sobre el blog, el podcast y de temática profesional. Blog de contenido diverso, con temática BOFH y técnica.

Gracias por la lectura.

En YoVirtualizador no usamos cookies para nada, pero los servicios de discus y analytics recopilan datos en servidores ajenos a YoVirtualizador sin que yo pueda hacer nada.

Este aviso es sólo porque algún político tenía que justificar su existencia, y ahora además hay que redactar.

Legislación aplicable:

  • Artículo 22 de la Ley 34/2002, de 11 de julio, de servicios de la sociedad de la información y de comercio electrónico (LSSI).
  • Reglamento (UE) 2016/679 del Parlamento Europeo y del Consejo, de 27 de abril de 2016, General de Protección de Datos (RGPD)
  • Ley Orgánica 3/2018, de 5 de diciembre, de Protección de Datos y garantía de los derechos digitales (LOPDGDD)

Definición y función de las cookies ¿Qué son las cookies? Una cookie es un fichero que se descarga en su ordenador al acceder a determinadas páginas web. Las cookies permiten a una página web, entre otras cosas, almacenar y recuperar información sobre los hábitos de navegación de un usuario o de su equipo y, dependiendo de la información que contengan y de la forma en que utilice su equipo, pueden utilizarse para reconocer al usuario.

¿Qué tipos de cookies utiliza esta página web? Cookies propias: Son aquéllas que se envían al equipo terminal del usuario desde un equipo o dominio gestionado por el propio editor y desde el que se presta el servicio solicitado por el usuario.

Cookies de terceros: Son aquéllas que se envían al equipo terminal del usuario desde un equipo o dominio que no es gestionado por el editor, sino por otra entidad que trata los datos obtenidos través de las cookies.

(Lea también: CÓMO UTILIZA GOOGLE LA INFORMACIÓN DE SITIOS WEB O APLICACIONES QUE UTILIZAN NUESTROS SERVICIOS)

Cookies persistentes: Son un tipo de cookies en el que los datos siguen almacenados en el terminal y pueden ser accedidos y tratados durante un periodo definido por el responsable de la cookie, y que puede ir de unos minutos a varios años.

Cookies de análisis: Son aquéllas que bien tratadas por nosotros o por terceros, nos permiten cuantificar el número de usuarios y así realizar la medición y análisis estadístico de la utilización que hacen los usuarios del servicio ofertado. Para ello se analiza su navegación en nuestra página web con el fin de mejorar la oferta informativa, productos o servicios que le ofrecemos.

Cookies publicitarias: Son aquéllas que permiten la gestión, de la forma más eficaz posible, de los espacios publicitarios que, en su caso, el editor haya incluido en una página web, aplicación o plataforma desde la que presta el servicio solicitado en base a criterios como el contenido editado o la frecuencia en la que se muestran los anuncios.

Asimismo es posible que al visitar alguna pagina web o al abrir algún email donde se publique algún anuncio o alguna promoción sobre nuestros productos o servicios se instale en tu navegador alguna cookie que nos sirve para mostrarte posteriormente publicidad relacionada con la búsqueda que hayas realizado, desarrollar un control de nuestros anuncios en relación, por ejemplo, con el numero de veces que son vistos, donde aparecen, a que hora se ven, etc

Revocación y eliminación de cookies Usted puede permitir, bloquear o eliminar las cookies instaladas en su equipo mediante la configuración de las opciones del navegador instalado en su ordenador, en caso que no permita la instalación de cookies en su navegador es posible que no pueda acceder a alguna de las secciones de nuestra web.

A continuación puede encontrar como acceder a la configuración de las cookies en los principales navegadores:

Internet Explorer: Menú Herramientas -> Opciones de Internet -> Privacidad -> Configuración. También puede consultar el soporte de Microsoft o la Ayuda del navegador. Firefox: Menú Herramientas -> Opciones -> Privacidad -> Historial -> Configuración Personalizada. También puede consultar el soporte de Mozilla o la Ayuda del navegador. Chrome: Menú Configuración -> Mostrar opciones avanzadas -> Privacidad -> Configuración de contenido. También puede consultar el soporte de Google o la Ayuda del navegador. Safari: Menú Preferencias -> Seguridad. También puede consultar el soporte de Apple o la Ayuda del navegador.

En YoVirtualizador todos los comentarios serán bienvenidos pero moderados.

Respetos guardan respetos.

El contenido irrelevante u ofensivo será eliminado.

A partir de esta modificación queda deshabilitado el servicio de comentarios de la web.

Galletas

Política de cookies

En YoVirtualizador no usamos cookies para nada, pero los servicios de discus y analytics recopilan datos en servidores ajenos a YoVirtualizador sin que yo pueda hacer nada.

Este aviso es sólo porque algún político tenía que justificar su existencia.

Si hace clic en un enlace de afiliado y compra un producto o servicio, es posible que ese comerciante nos pague una tarifa.

Política de comentarios

En YoVirtualizador todos los comentarios serán bienvenidos pero moderados.

Respetos guardan respetos.

El contenido irrelevante u ofensivo será eliminado.

Acerca de YoVirtualizador

YoVirtualizador es la marca de varios proyectos

Podcast de informática profesional. Canal de Youtube sobre el blog, el podcast y de temática profesional. Blog de contenido diverso, con temática BOFH y técnica.

Gracias por la lectura.