Hacer visible en nuestra red una máquina virtual con VirtualBox (o comunicar entre si dos de estas)

herramientas Cuando creas una máquina virtual con VirtualBox, con las opciones de red por defecto, esta cuenta con conexión a cualquier recurso en la red al que tenga acceso la máquina anfitriona (conexión a Internet incluida) y puede compartir archivos con ella si configuramos la opción de «Directorios Compartidos», pero entre máquina anfitriona y máquina virtual no existe ninguna otra posible conexión. La máquina virtual tampoco es accesible de ninguna forma desde otra máquina de nuestra red local y si abrimos dos máquinas virtuales en la misma máquina anfitriona tampoco pueden verse entre si. Esto puede cambiarse fácilmente para que cualquier máquina virtual que creemos sea totalmente visible, tanto por la máquina anfitriona, como por cualquier otra máquina física (o virtual, en esta u otra máquina anfitriona configurada por este mismo método) como si se tratase verdaderamente de una máquina real conectada de forma independiente a nuestra red. Nos ponemos a ello.

Partimos de una máquina anfitriona con Debian o una distribución derivada (Ubuntu, Kubuntu, etc.), que ya tiene Virtualbox instalado y cuenta con una única interfaz de red (eth0). Lo primero que tenemos que hacer es instalar el paquete bridge-utils.

josemaria@valeria:~$ sudo apt-get install bridge-utils

Luego editamos la configuración de nuestro interface ethernet (/etc/network/interfaces) y lo dejamos de esta forma:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto br0
iface br0 inet dhcp
bridge_ports eth0 vbox0 vbox1

Las líneas en negritas son las que hemos añadido. En ellas estamos definiendo dos interfaces virtuales (vbox0 y vbox1) que están ligados a nuestro interfaz físico real (eth0) y que tomaran una IP de forma dinámica a través de un servicio DHCP que debemos de tener disponible en nuestra red. Esto no quiere decir que no podamos ponerles direcciones fijas a nuestras máquinas virtuales: Estas tendrán disponible este servicio, si existe, desde su arranque pero luego nosotros podremos configurarlas perfectamente mediante IP’s estáticas sin ningún problema, ya dentro del sistema operativo que hayamos elegido para ellas. Por cierto: hemos creado dos interfaces por que es lo que necesitamos (yo, en concreto, quiero hacer prácticas para los chicos con un windows 2003 server y un windows xp que deben de verse para que el segundo se conecte al dominio definido por el primero) pero, lógicamente, podríamos definir una sóla. O diez 🙂 .

Ahora editamos el archivo de configuración de interfaces de virtualbox (/etc/vbox/interfaces) y añadimos las siguientes líneas:

vbox0 josemaria br0
vbox1 josemaria br0

En ellas redefinimos los dos nuevos interfaces virtuales que hemos creado (vbox0 y vbox1) y declaramos el usuario de la máquina anfitriona que tiene permiso para usarlos.

Ya casi estamos. Ahora reiniciamos, por este orden, la interfaz de red física de nuesta máquina anfitriona y luego virtualbox:

josemaria@valeria:~$ sudo /etc/init.d/networking restart
* Reconfiguring network interfaces...
(...)
bound to 192.168.1.10 -- renewal in 39314 seconds.
[ OK ]
josemaria@valeria:~$ sudo /etc/init.d/virtualbox-ose restart
* Shutting down VirtualBox host networking
* done.
* Starting VirtualBox host networking
* done.

Luego iniciamos Virtualbox y configuramos la red de las máquinas que queremos hacer accesibles de esta forma:

Configurando VirtualBox con bridge-utils

Y con esto ya si que hemos acabado. En el siguiente pantallazo (ampliable si hacéis click en él) podéis ver como mis dos máquinas virtuales se ven perfectamente (la XP tomando su IP mediante DHCP, el 2003 server con IP estática configurada manualmente), la autenticación de dominio entre ellos se ha hecho perfectamente y ambas son visibles también desde la máquina anfitriona.

Configurando VirtualBox con bridge-utils

ACTUALIZACION: Si has llegado aquí a través de Google, olvídate de ello. Virtualbox tiene ya un modo bridge de forma automática con sólo escoger la opción adecuada en la configuración de red. Lo hemos contando aquí.

32 comentarios

  1. gracias por su ayuda pero se explica muy bien el problema es que yo no le entendi, podria ser mas claro que el agua del rio Lerma. Gracias
    :-)……………………………………………………………………………………………………………………………………….?????????????????????????????????????????????????????????

  2. hola muy bueno este blog e interesante, no soy del palo
    de ustedes con respecto a la informatica, mi idea es, si me pueden ayudar, poner en red dos maquinas una con win 98 y la otra win xp, en la primera tengo un programa de facturacion que no se puede volver a instalar y en la otra con win xp seria instalar el virtual box y cargar win 98 para poder trabajar a travez de esta y realizar facturas via red….se podra hacer esto?? gracias

  3. Hola, muy bueno tu blog, y este articulo se acerca a lo que busco, trato de hacer esto mismo pero en donde el anfitrion sea windows… es posible? se siguen pasos similares?

    Gracias

  4. Bueno, a mi no me funciono de esta forma. Yo tengo un MACOSX es decir UNIX tengo instalado virtualbox con 2 maquinas virtuales una con linux ubuntu y otra con windows. No podia acceder desde fuera con la configuracion predeterminada de vbox, asi q probe que el adaptador sea el anfitrion. NO FUNCIONO, probe todas las opciones y la unica que me sirve hasta el momento para que sean visibles desde toda la red… incluso desde mi portatil y desde algun ordenador remoto (otro pais) es poniendo el adaptador como puente, entonces hago un /etc/init.d/networking restart y por fin recibo una ip desde mi router

  5. Oye estoy virtualizando en una laptop Acer-Aspire, pero en esta la interfaz se llama ath0 y no se encuentra en el archivo /etc/network/interfaces, ya que son drivers compilados de madwifi, intente agregarla al archivo, y luego agregar las interfaces virtuales a /etc/vbox/interfaces, pero lo unico que consegui fue descomponer mi inalambrica.

    Aún así tengo ganas de compartir con mi red innalambrica a mis interfaces virtualizadas.

    Tendrás algún tutorial o alguna página donde pueda informarme para intentar hacer esto.

    Muchas gracias y saludos!!

  6. Hola,

    espero que me puedas ayudar, tengo instalado un red hat 5.2 y sobre el instale un virtualbox 3.0.4 y levante una maquina virtual de ubuntu, la maquina local(red hat 5.2) tiene una IP estatica y no tengo dhcp entonces configure la tarjeta de red por consola en ubuntu de esta manera ifconfig eth1 192.168.xxx.xxx broadcast 192.168.xxx.xxx netmask 255.255.xxx.xxx up esto lo tuve que hacer asi porque solo instale el modo texto en la maquina virtual defini bridge y tambien modifique el archivo

    /etc/network/interface

    auto lo
    iface lo inet loopback

    auto eth1
    iface eth1 inet static

    sin embargo no puedo hacer ping a la ip de la maquina local

    me puedes hechar la mano gracias

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies