Tengo un servidor HTPC / Media basado en Ubuntu 16.04 que se ejecuta 24/7 . Hasta donde puedo recordar usando una distribución oficial de Ubuntu, siempre he tenido problemas con el avahi-daemon . El problema se discute con bastante frecuencia en línea. Algunas personas deciden simplemente eliminar daemon, sin embargo, en realidad lo necesito ya que estoy ejecutando un servidor CUPS y uso Kodi como mi receptor AirPlay.
La cuestión
mDNS / DNS-SD es inherentemente incompatible con las zonas de unidifusión DNS .local . Recomendamos encarecidamente no utilizar Avahi o nss-mdns en dicha configuración de red. NB: nss-mdns generalmente no se incluye con Avahi y requiere una descarga e instalación por separado. (avahi.org)
Los síntomas son simples: después de aproximadamente 2-4 días de tiempo de actividad, la conexión de red se cortará y esto se registrará
Mar 17 18:33:27 15 avahi-daemon[1014]: Withdrawing address record for 192.168.1.200 on enp3s0.
Mar 17 18:33:27 15 avahi-daemon[1014]: Leaving mDNS multicast group on interface enp3s0.IPv4 with address 192.168.1.200.
Mar 17 18:33:27 15 avahi-daemon[1014]: Interface enp3s0.IPv4 no longer relevant for mDNS.
La red volverá a funcionar sin problemas si vuelve a conectar físicamente el enchufe de Ethernet o si vuelve a conectar el lado del software.
Soluciones posibles
Hay tres soluciones enumeradas en el wiki oficial, que no ha funcionado desde lo que parece ser junio de 2016 , por lo que proporciono un enlace no directo archive.org
1.) Edite /etc/nsswitch.conf desde
"hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4"
a
hosts: files dns mdns4
2.) Modificar /etc/avahi/avahi-daemon.conf
de
domain-name=.local
a
domain-name=alocal
3.) "Pídale al administrador que mueva la zona local" (como se dice en la wiki)
Lo que hice
La primera solución no parece que el trabajo para mí - el demonio todavía funciona, sin embargo, la red va a bajar la misma manera que antes (para ser justos, en el wiki que sí dice " Y nuestra M ileage H ay V ario")
La segunda solución hace que el demonio parezca funcionar correctamente (nada de malo si mira los registros) pero los dispositivos iOS no pueden "ver" la máquina como una impresora o un receptor AirPlay (así como iTunes en mi máquina Windows)
La tercera solución es complicada, porque no conozco bien los "entresijos" de cómo funciona una red; y no estoy seguro de haberlo intentado. Esto es lo que quiero decir: en mi Asus Router que ejecuta Asuswrt-Merlin , entré en una subcategoría de configuración / LAN / Servidor DHCP / Configuración básica. Allí configuré " Nombre de dominio RT-AC68U " como "lan" (un nombre de dominio que vi aconsejado en la web, porque no entra en conflicto con nada, a diferencia de "local"). Por lo que puedo entender, eso es lo que significa " mover la zona local ". Si esto es correcto, entonces esta solución no funciona para mí también.
Conclusión
¿Entonces qué debo hacer? He estado luchando con este problema durante más de 4 meses, y cada respuesta en línea se reduce a las que ya he probado; Francamente, estoy completamente perdido. ¡Gracias por adelantado!
Respuestas:
Creo que la tercera solución es el camino a seguir cuando tienes acceso a la configuración del enrutador. Intentaría configurar el "Nombre de dominio de RT-AC68U" en blanco.
Lo siguiente que haría sería ejecutar algo como wireshark y ver los paquetes enviados y recibidos por avahai-daemon, así como cualquier paquete enviado desde y hacia cualquier nombre de dominio que termine en
.local
... si algo distinto de avahai está configurando LAN nombres de dominio para.local
encontrarlo allí.También es posible que el problema sea algo completamente diferente, y wireshark también podría decirte eso.
Si está utilizando Avahai completamente con el propósito de asignar nombres de dominio a máquinas en su red, puede considerar usar dnsmasq en su lugar. Puede ejecutarlo desde su enrutador RT-AC88U, o desde su caja de Ubuntu (de hecho, probablemente ya se esté ejecutando en su caja de ubuntu, y solo necesitará modificar el archivo de configuración).
Documentación para configurar dnsmasq bajo Asus-Merlin
fuente
Así que traté de cambiar el parámetro "host-name" en "avahi-daemon.conf" a algo que no sea el nombre de host de las máquinas, y he estado ejecutando 2 semanas sin ningún problema. ¿Tal vez esto tenía que ver con la máquina que también ejecuta samba y Windows usando el dominio ".local" para sus propios fines?
fuente
.
embargo, es posible usar s en netbios para algún propósito). avahi está habilitado por defecto en ubuntu / fedora, y nunca he visto una advertencia sobre la ejecución de samba al mismo tiempo. No puedo imaginar por qué avahi-daemon incluiría cualquier código que establezca direcciones o estado de la interfaz. Gracias por volver con el resultado de su prueba, ¡espero que la configuración siga funcionando a partir de ahora!