Virtualbox en Ubuntu Host: Acceda a los invitados por nombre de host

10

Tengo varios dispositivos VirtualBox (Windows, Linux), cada uno de ellos configurado con dos adaptadores de red:

  • NAT para acceder a internet
  • solo host para hosts <> hosts y hosts <> comunicación de invitados

El problema es que solo puedo comunicarme por dirección IP. Quiero comunicarme por nombre de host, es decir. Quiero poder llegar a cualquier host desde cualquier otro host (o invitado) utilizando el nombre de host. es posible?

Ya tengo un adaptador de solo host ( vboxnet0 ) en la máquina host, y la red está bien, pero me gustaría evitar asignar IP estáticas a cada dispositivo.

Miguel Ping
fuente

Respuestas:

3

Le sugiero que use DNS de multidifusión para solucionar esto.

Ubuntu está usando esto por defecto a través de Avahi .

El host de Windows necesita un cliente Avahi para descubrir otros servicios Avahi. Si su host ya usa algún software de Apple, probablemente ya esté allí a través de un servicio llamado Bonjour. Sin embargo, si aún no está instalado, puede descargar una versión pequeña de Bonjour aquí: Bonjour Print Services . Después de la instalación, debería poder acceder a su invitado a través de .local.

Nota: El sistema mDNS parece utilizar el .fix local postfix por defecto. Entonces, si su nombre de host es "dev.myapp.com", entonces el nombre de host real será "dev.myapp.com.local".

Copiado de mi propia respuesta en superuser.com.

Spiralis
fuente
2
mDNS es de hecho una buena manera de ir aquí. Quería señalar esta respuesta real de Ubuntu que publiqué en UL: ¿ Detectar la dirección de otra máquina en el enlace local?
gertvdijk
2

Según el manual (un poco sobre un tema diferente ):

no hay un solucionador de DNS para redes internas

Por lo tanto, deberá instalar uno en cualquiera de sus hosts virtuales.

Relacionado: Foro VB

lgarzo
fuente
Esto no va a funcionar porque el host VBox actúa como servidor DHCP, por lo que el servidor DNS virtual tampoco podrá resolver los nombres. Creo que las IP estáticas son la única forma de hacer esto.
StarNamer
Sé que puedo deshabilitar el servidor dhcp de VBox, así que tal vez sea posible.
Miguel Ping
@StarNamer Tienes toda la razón, el servidor DNS no resolverá los problemas causados ​​por el servidor DHCP en VB. Sin embargo, aunque no es práctico, el servidor DNS se puede configurar para usar las direcciones asignadas actualmente, pero eso no haría las cosas mejor que editar /etc/hostsarchivos. Lo que @Miguel puede hacer es desactivar el servidor VB DHCP e instalar uno en una máquina virtual. Le sugiero que consulte la Guía del servidor de Ubuntu en Redes y Servicio de nombres de dominio (DNS).
lgarzo
@Igarzo Eso podría funcionar. De hecho, sugeriría algo como dnsmasqque es un servidor combinado de DNS y DHCP. La pregunta es dónde ponerlo; si está en una de las máquinas virtuales invitadas, entonces una se vuelve especial y no estoy seguro de que sea fácil colocar un servidor DHCP en el host y hacer que sirva a los invitados. Nunca lo he intentado.
StarNamer
@StarNamer No creo que un servidor DHCP host pueda servir a los hosts de la red interna. Los hosts de la red interna de VB no se comunican con el mundo exterior, excepto los hosts conectados a la misma red interna. DnsmasqSin embargo, parece una buena opción. Solo tiendo a sugerir soluciones de la Guía del servidor de Ubuntu, para estar seguro.
lgarzo
1

Necesita un servidor DNS para convertir la dirección IP a un nombre de host y viceversa, y desafortunadamente esto no es compatible con Vbox


fuente
0

PARA PERMITIR A OTROS (CLIENTE DE WINDOWS, CLIENTES DE LINUX CONFIGURADOS) ALCANCE SU ANFITRIÓN POR HOSTNAME:

  • Instalar / configurar / iniciar el servicio nmbd , proporcionado por samba .

    nmbd: servidor de nombres NetBIOS para proporcionar servicios de nombres NetBIOS sobre IP a clientes

PARA PERMITIR QUE SU ALOJAMIENTO LLEGUE A OTROS (CLIENTE DE WINDOWS, CLIENTES DE LINUX CONFIGURADOS) POR HOSTNAME:

  • Editar /etc/nsswitch.conf

Cambiar la linea

hosts: files dns

a

hosts: files dns wins
  • instalar winbind

    apt-get install winbind

Marco Rossi
fuente