Si estoy usando Ubuntu o Linux Mint (los únicos dos sabores que he probado y sé que funcionan con seguridad), puedo ejecutar algo como esto:
wayne@myhost$ ssh [email protected]
Y el nombre se resuelve automáticamente a cualquiera que sea la IP de otro host en mi red local.
Decidí comenzar a ramificarme en otras distribuciones, y tengo Arch ejecutándose en mi computadora portátil, pero si intento usar el comando anterior obtengo Could not resolve hostname otherhost.local: Name or service not known
¿Qué se necesita para lograr este tipo de resolución automática de nombres (?)?
networking
arch-linux
hostname
Wayne Werner
fuente
fuente
avahi
, así comonss-mdns
- para más detalles echa un vistazo a la wikiRespuestas:
La propia respuesta de Wayne ya es bastante antigua. Arch ha cambiado a usar systemd en lugar de guiones de inicio. La página Avahi de Arch wiki se ha actualizado y contiene detalles sobre por qué se necesitan los siguientes pasos. En resumen: Avahi es una herramienta zeroconf, lo que significa que no necesita ninguna configuración para funcionar una vez instalada en todas las máquinas de su LAN, pero debe configurar el resto de su software para que realmente solicite la información a Avahi.
Ejecútelos como root, o anteponga
sudo
donde corresponda, en un terminal y reemplácelosnano
con el editor que elija.pacman -S avahi nss-mdns
Instala el demonio de servicios Avahi y el solucionador DNS de multidifusión.nano /etc/nsswitch.conf
Este archivo le dice a la biblioteca C cómo obtener información del servicio de nombres.hosts: files dns myhostname
ahosts: files mdns_minimal [NOTFOUND=return] dns myhostname
, guardar y salir.systemctl start avahi-daemon
Inicia el servicio de Avahi manualmente ya que ya hemos arrancado. Busque errores)systemctl enable avahi-daemon
Habilita el servicio Avahi en el arranque.Acabo de realizar estos pasos en una computadora portátil Arch y no había necesidad de reiniciar ningún otro servicio o la interfaz wifi para que mis otras máquinas lo descubrieran en unos segundos, y que mi computadora portátil descubriera sus servicios.
Dado que todavía no puedo comentar sobre la respuesta de ggg, me gustaría señalar aquí que no hay necesidad de hacer esto en un script de inicio, para eso está habilitado el servicio en systemd. Hazlo una vez y olvídalo.
fuente
systemctl enable avahi-daemon --now
. Se inicia y habilita el servicio inmediatamente en lugar de esperar el próximo inicio.Gracias al puntero al artículo de Arch Wiki sobre Avahi de Ulrich Dangel, esto es lo que hice:
$ sudo pacman -S avahi nss-mdns
/etc/rc.d/avahi-daemon start
al final derc.local
dhcpcd
,/etc/dhcpcd.conf
comenté lanoipv4ll
línea.$ sudo /usr/sbin/avahi-autopid -D wlan0
. Como no me gusta reiniciar, no estoy seguro si el paso 3 fue necesario./etc/nsswitch.conf
me puse la línea para leerhosts: files mdns4_minimal dns mdns4
.$ sudo /etc/rc.d/dbus restart
para reiniciar dbus.Después de eso, simplemente hacer
ssh [email protected]
simplemente funcionó.fuente
No creo que necesitemos
avahi-daemon
correr para usar.local
. Esto es lo que tengo para mi script de inicio. Esto es mucho más simple en comparación con el método de Arch Wiki.fuente