¿Cómo llegar a un host en la misma red por nombre de host?

11

Tengo una red que conecta un par de hosts. Me gustaría poder llegar a otros hosts desde uno de ellos usando el nombre de host. Acabo de descubrir el dominio ".local", que está disponible a través de avahiy /etc/nsswitch.conf. Pero no está configurado de esta manera en mis servidores. Y no quiero crear una entrada en mi servidor dns. ¿Hay alguna otra forma de hacerlo?

benzen
fuente
Avahi mDNS es bastante bueno para sus necesidades. Vea la respuesta sobre /etc/nsswitch.confcómo configurarlo.
ulidtko

Respuestas:

10

Su /etc/nsswitch.conf ya debería tener esto para mDNS (avahi):

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

Simplemente instale avahi-daemonen las máquinas con las que desea hablar entre sí, y debería estar configurado para usar HOSTNAME.local de esta manera:

ssh yourmachine.local
Kees Cook
fuente
2
Esta es la respuesta que desearía poder votar dos veces.
ulidtko
2

Una alternativa es agregar una entrada en su /etc/hostsarchivo:

gksudo gedit /etc/hosts

Una entrada toma la forma 123.123.123.123 host.domaino simplemente 123.123.123.123 host.

Si haces eso, ahora puedes, por ejemplo, ssh hosty se conectará a123.123.123.123

Kenny Rasschaert
fuente
Lo siento, me olvido de mencionar que no quiero hacerlo por dos razones. Primero por razones de seguridad, estas máquinas un servidor. Y creo que podría ser un problema. En segundo lugar, sé que mis hosts cambiarán allí ip adresse pronto. Y no quiero actualizar este conf cada vez. editar: una tercera razón, uso dhcp, por lo que el administrador de red generará uno nuevo con frecuencia. Pero sé que hay un truco para dejarlo hacerlo.
benzen
1

Encontré otra solución. Usando el archivo, /etc/dhccp3/dhcient.conf hay una línea que comienza así, send host-name esto podría modificarse para enviar el nombre de host 'servidor1'

Esta solución se ve bien, pero no sé si todas las máquinas que usan el mismo dns verán mi nombre de servidor "servidor1".

Otro lado malo de esta solución, necesito especificar el nombre de host aquí y en el /etc/hosts

Solo sé que este archivo ( /etc/dhcp3/dhclient.conf) no es un script, por lo que no puedo usar una variable de entorno para llenar esta línea correctamente.

benzen
fuente
1

Puede permitir que DHCP dinámico agregue la entrada en DNS, en lugar de usted.

Henrik
fuente
1
Pero no quiero que se expongan a todo Internet. Solo para encontrarlos en mi red local
benzen
0

si usa avahi-daemon, es posible que necesite copiar ssh.services en / etc / avahi / services. En la mia,

sudo cp /usr/share/doc/avahi-daemon/examples/ssh.service /etc/avahi/services/

David Herrera
fuente