17 junio, 2024

VirtualBox (configurando la red)

Hoy vamos a ver todas las posibilidades que tenemos en la configuración de redes de VirtualBox, que nos son pocas, según nuestras necesidades.

Antes de nada comentar en pocas palabras que es VirtualBox, y es tan sencillo como decir que es un software de virtualización del tipo hosted (debe instalarse sobre un sistema operativo que llamaremos anfitrion)  con muchas características de configuración ya sean RAM, vCPU, USB, audio, puerto serie y el tema que nos ocupa hoy las tarjetas de red con sus redes asociadas y con licencia GPL.

Y como esta bien conocer los origenes diremos que VirtualBox nació de la empresa Innotek como un producto de pago y una versión reducida gratuita, en el 2.008 Sun Microsystems la compro y dos años más tarde SUN es comprada por Oracle. Oracle paso el producto a licencia GPL a excepción de los componentes (USB, VRDP, PXE y PCI) que se deben instalar con el paquete extension Pack

Antes de empezar vamos a definir una serie de términos que nos ayudaran a comprender el resto del articulo.

  • SO anfitrión o maquina anfitrión: Es la maquina donde se ejecuta el VirtualBox .
  • SO o maquina invitada o huesped: es la maquina que se virtualiza.
  • Maquina virtual «MV«: La maquina virtualizada en el VirtualBox.
  • Red Publica: La red que saldrá a internet.
  • Red Local: La red donde se encuentro anfitrion, y estará cableada o por WIFI.
  • Red Interna: Es una red que se crea dentro de nustras maquinas virtuales.
  • NIC: Tarjeta de red Ethernet virtual de las que disponen las maquinas virtuales.

La configuración de VirtualBox se puede realizar con su interfaz gráfico, es el que comentaremos por su facilidad ya que hoy nos interesa quedarnos con los conceptos de lo que podemos hacer en lo que a redes de comunicación se refiere, o por comando «VBoxManage».

Una MV puede tener hasta 8 NIC (Tarjetas de red Ethernet) aunque con el interfaz gráfico solo podremos definir 4, pudiendo indicar por separado el tipo de Hardware a emular y la red a la que se conecta. Para configurar la red nos vamos a configuración y luego a red.

red

Como vemos disponemos de 4 adaptadores (NICs) aunque en realidad podamos definir 8, estas tarjetas se conectaran a una red especifica (modos de red) que hablaremos más adelante pues es el grueso de este POST y son: No conectado, NAT, Red NAT, Adaptador puente, Red interna, solo anfitrión, controlador genérico.

Una vez que hemos definido el modo de red(más adelante los comentamos y ponemos ejemplos) pondremos el adaptador de red o hardware de red que simulara VirtualBox y por lo tanto vera la MV y pueden ser:

  • AMD PCNet PCI II (Am79C970A)
  • AMD PCNet FAST III (Am79C973) Es el valor por defecto ya que es el más compatible, si el SO invitado no soporta este hardware seguro que podremos usar Intel PRO / 1000
  • Intel PRO/1000 MT de Desktop (82540EM), Intel PRO/1000 T Server (82543GC),  Intel PRO/1000 MT Server (82545EM);
  • Red paravirtualizada (virtio-net). En este caso VirtualBox no virtualiza el hardware (lo que puede mejorar el rendimiento) y se usa un interfaz por Software que es parte del proyecto KVM. Esta opción se usa en entornos virtualizados.

Modo promiscuo, nos permite ver por ese adaptador de red todo el trafico que circula por la red no solo el que va a la tarjeta, debe activarse si vamos a poner un sniffer, y salvo en los modos de red NAT y controlador generico lo podemos activar en los otros. Las opciones son denegar, MV o todo el trafico.

Direcciones MAC: Esta claro como en una misma red no podemos tener tarjetas con la misma MAC la cambiaremos para que no se repita.

Cable conectado: Nos permite emular la desconexión del cable de la maquina virtual.

Y pasamos a lo realmente interesante que es los

Modos de red

No conectado: Es lo mismo que no tener conectado el cable, esto lo tendremos cuando no sepamos el modo en el que pondremos la tarjeta, ya que una vez que lo tengamos y lo configuremos si queremos desconectar el cable lo mejor es la opción anterior.

NAT: No permite el modo promiscuo y es la opción más sencilla y logramos que nuestra MV se pueda conectar a Internet, siempre que el anfitrión pueda, pero no se podrá conectar al anfitrión ni a otras maquinas. La visión a nivel red seria como si pusiéramos un router entre la maquina virtual y la salida a internet.

nat

cada MV tendra su propio router con router NAT tendrá la dirección de red y por defecto sera 10.0.X.2 la del router y 10.0.X.15 la de la MV, DHCP en la 10.0.X.3 y la 10.0.X.4 un servidor TFTP que usa VirtualBox , dependiendo X del NIC al que se asocie siendo la primera tarjeta el 2, la segunda el 3 y así sucesivamente, esto nos indica que este router NAT es tambien un servidor DHCP.

Si se quisiera cambiar este direccionamiento, no lo podriamos realizar por el interfaz gráfico y se realizaría por comando «VBoxManage modifyvm «nombre de máquina virtual» –natnet1 «Direccionamiento / Rang«.

Aunque la MV en modo NAT decimos que es una isla y ni el anfitrión puede verla, no es del todo cierto pues podemos hacerla visible por maquinas de la red publica gracias al router NAT y la redirección de puertos que realizaremos esta vez si por el interfaz gráfico u»Reenvío de puertos» del adaptador correspondiente.

redireccion

Esto permitirá que VirtualBox escuche estos puertos y reenvié estos paquetes a la dirección del invitado e incluso a un puerto diferente, ojo no ejecutar mismos servicios en el anfitrión y la MV o entre distintas MV. Esta opción podría ser interesante para que un servicio que se ejecuta en una MV no comprometa la seguridad del anfitrión, así podría tener un telnet abierto pero no en el anfitrión sino en una MV aislada.

Red NAT: Es más avanzada que la anterior ya que este router NAT nos permite conectar a el otras maquinas de forma que todas las MV que estén en esta red se podrán ver. Este router seria similar al que tenemos en casa pero para una red de VirtualBox

Por lo tanto lo primero que deberemos crear son estas redes y para eso vamos a «Archivos->Preferencias» y en esa ventana Red y definimos las redes NAT.

redprefeencias

Dando al «+» nos crea una red y en la llave podemos configurarla incluso inhabilitarla.

  • Nombre de la red.
  • Red CIDR: Tan simple como la red que asignamos por ejemplo 192.50.0.0/16
  • Soporte DHP
  • Soporte de IPV6
  • Reenvió de puertos

La puerta de enlace o router sera sera 192.50.0.1,

rednat

Luego tan sencillo como indicar que es una red NAT y decidir a que red NAT se conecta ese NIC.

Adaptador Puente: En este caso se crea un Switch virtual de forma que tanto la tarjeta virtual (NIC) de la MV y la tarjeta física del anfitrión se conectan a el de forma que tanto las MV como el anfitrión estan en la misma red. Los paquete se intercambian directamente sin pasar por la pila de red del sistema operativo.

adaptadorpuente

Si en el anfitrión disponemos de varias tarjetas de red fisicas, ya sean de cable o WIFI, se deberá indicar a cual de ellas se conecta de forma que si nos conectamos a la tarjeta de WIFI y cortamos esta la MV también se quedara sin conexión.

La configuración en la MV debera de ser una configuración igual a la realizada en el anfitrión y deberemos darle una dirección de la red del anfitrión que este libre.

Red interna: Nos permite crear una red en la que solo son visibles las MVirtuales que están en esa red. Cuando definimos una tarjeta como red interna nos pedirá el nombre de esta red, que seleccionaremos en el desplegable y que por defecto es «intnet».

Si queremos que esta red interna tenga salida a internet alguno de las MV deberán tener una de las NIC configurada como NAT o como adaptador puente y así servirá de  router.

ri_nat
RedInterna – NAT
ri_puente
Red Interna con Puente

Solo anfitrión: Podemos que decir que es un hibrido en el que tenemos una red interna en la cual las MVs se ven entre ellas y a la vez podemos tener acceso al anfitrión, la ventaja es que no es necesario un puente el cual obliga a la red a estar conectada en el anfitrión ya que se crea una tarjeta virtual en el anfitrión.

 

Lo próximo es poner un ejemplo con diversas maquinas (físicas y virtuales) y distintas redes con sus router y FW físicos y virtuales, pero esto lo dejamos para otro momento.

Realizar los comentarios que queráis y  que os gustaría que apareciese en el Ejemplo que desarrollaremos otro día.

30 comentarios en «VirtualBox (configurando la red)»

  1. Hola buenas. Muy bien explicado ¡me ha ayudado mucho =). Ahora bien tengo una duda; si quisiese que mi virtual box tenga una vpn del anfitrion seria posible? Que modo de Red seria más conveniente Teniendo en cuenta que quiero que esa virtual box tenga acceso a Internet y sea capaz de interactuar con otras máquinas?

    1. Para que la maquina virtual (VM1) que dices se conecte al anfitrion te recomiendo la red solo anfitrión que se conecta a la tarjeta virtual que se crea en el anfitrión, de esta forma solo se conecta al anfitrión ya que si usas una red puente podrá ver toda tu red LAN.

      Para que conecte con el resto de las maquinas virtuales (entiendo que las maquinas virtuales quieres que solo a la VM1) le crearía otro NIC a red interna.

      Y para que la VM1 tenga acceso a internet puedes poner una redNAT (lo mas sencillo) o que el trafico a internet vaya por la redAnfitrion y en la maquina anfitrión redirigir el trafico al interfaz LAN que estará conectado a internet.

      SI tu maquina anfitrión tiene configurada una VPN para el trafico a internet, al realizar la salida a internet por el anfitrión esta sera segurizada con la VPN.

      No se si es esto lo que preguntabas.

  2. buenas tardes primero felicitar este gran aporte me saco un par de dudas. Pero tengo una pregunta se puede configurar en una MV (ubuntu) dos nic virtuales y que una funcione como mi salida hacia Internet y mi red interna por que aun no he podido salir hacia internet configurando mi red interna , se puede hacer ?.Saludos

    1. Perfectamente puedes poner 2 NIC, y deberás configurarlos en tu UBUNTU las dos tarjetas.

      Para Internet tiene dos opciones sencillas NAT o Red NAT, la primera es la que te recomendaría así la parte a internet esta totalmente separada, ahora esta no tiene la posibilidad de modo promiscuo.

      Te paso la configuración del fichero /etc/network/interface que uso en el servidor apache/alpineLinux del POST https://www.pinguytaz.net/index.php/2018/11/04/configura-e-instala-apache/

      Este tiene tres redes:
      1.- (eth0-IP FIja) Es adaptador anfitrion y me permite acceder desde mi HOST a este servidor WEB.
      2.- (eth1- IP FIja) Es una red interna que me permite acceder a los servidores de Base de Datos.
      3.- (eth2- Por DHCP) es NAT y me permite tener salida a internet para así actualizar este servidor

      —————- /etc/network/interfaces
      auto lo
      iface lo inet loopback

      auto eth0
      iface eth0 inet static
      address 192.168.56.20
      netmask 255.255.255.0

      auto eth1
      iface eth1 inet static
      address 172.16.1.20
      netmask 255.255.0.0

      auto eth2
      iface eth2 inet dhcp
      —————————————

  3. buenas , si es como he entendido si en mi MV(ubuntu) la cual tengo dos nic virtuales, una de ellas le he puesto como «red-nat»(172.20.x.y–dhcp:si) y en la otra interfaz virtual como red interna (configure en /etc/network/interfaces) lo siguiente…
    auto lo
    iface lo inet loopback

    auto eth0
    iface eth0 inet static
    address 192.168.11.Y
    netmask 255.255.255.0
    gateway 192.168.11.Y

    lo guarde , baje y levante la interfaz v, hasta ahi me tendria que funcionar…

    1. Segun el orden, si el primer adaptador es la red NAT este sera el eth0 y el segundo adaptador o interfaz virtual es la red interna este sera el eth1 por lo que la configuración seria.


      auto lo
      iface lo inet loopback

      # Configuración del primer NIC, suponemos es la RED NAT y se le asignara una IP por DHCP.
      auto eth0
      iface eth2 inet dhcp

      # Configuración del segundo NIC que es nuestra red interna (Interna de nuestra maquinas virtuales)
      auto eth1
      iface eth1 inet static
      address 192.168.11.Y
      netmask 255.255.255.0

      ———————-

      NOTAS:
      1.- El Gateway te lo dara el DHCP y es mejor ya que así cualquier cosa desconocida se intenta localizar por internet.
      2.- Entiendo que la red interna te refieres a una interna de las maquinas virtuales, si es interna de tu red local tiene que poner adaptador puente.
      3.- Los interfaz de red no siempre se llaman igual y en Debian y Ubuntu últimamente cambian por:
      eth0 se transformará en enp3s0
      eth1 se transformará en enp3s1
      wlan0 se transformará en wlpls0
      Por lo que tendrás que ejecutar ifconfig para ver sus nombres, y aunque el primer adaptador sera el primero que aparece y el segundo el siguiente te recomiendo confirmar la MAC que te da el comando con la MAC que esta en VirtualBox en la definición de redes.

      Y luego como dices con bajar y levantar la interfaz debería funcionar, yo por regla general y esto ya es manía suelo realizar un reboot

  4. Hola Necesito crear una red del tipo
    [ULTIMA IMAGEN]
    RedInterna – NAT

    Pero no puedo lograr realizar el ruteo de la maquina virtual que tiene NAT.

    1. Entiendo que lo que deseas es crear una red-NAT, para luego configurarlas en tus maquinas.

      Si es así es muy sencillo, en Archivo->Preferencias->red podras crear todas las RedesNat que desees con sus direccionamiento lo unio que no podrás hacer es configurar al detalle el DHCP para que solo te de direcciones desde un rango determinado.

  5. Que tal:

    Muchas gracias por compartir esta valiosa información acerca de las redes de VBox, me ha ayudado a aclarar mis dudas al respecto. Felicidades!

    Por otro lado, espero me puedas ayudar con esta duda: tengo un equipo W10 host conectado a mi red corporativa y dentro de este existe una MV también Win10. Estoy probando software tipo VNC (soporte remoto) y necesito configurar la MV con una IP de mi red corporativa para poder conectar mi equipo anfitrión (o cualquier otro de la red) a la MV.

    ¿Es posible lograr lo anterior? y de ser así, ¿cuál sería el método adecuado?

    Agradezco tus atenciones, tiempo y ayuda.

    Saludos!

    1. Si es muy facil, define el NIC de la maquina VN que desees que se conecte a tu red corporativa como red puente y elije la tarjeta de física de tu equipo HOST a la que se conecta esta red.

      Saludo!

  6. Hola, muy buen blog.

    Oye tengo duda, tengo una VM Windows 10, que uso para conectarme a una VPN, me gustaría que una vez conectada la VPN, desde mi maquina física pueda acceder a las URLS de la virtual. ¿Como me recomiendas hacer la configuración?

    Saludo

    1. Para conectar tu maquina física a la virtual, yo prefiero usar adaptador solo anfitrión para así aislar las virtuales de la red real.

  7. Hola buenas, verás tengo mi red montada con 3 equipos todos conectados entre si, he usado red NAT en lugar de otra configuración para que no haya switchs en la red, ya que me interesa capturar el tráfico a nivel de red. El caso es que en la maquina que está el sniffer (en modo promiscuo) no captura el trafico que se envian las otras 2 maquinas entre si. ¿A que se puede deber o como puedo arreglarlo? Gracias de antemano.

    1. Acuérdate de poner los NIC que te interesan analizar en modo promiscuo, también decirte que a mi me dio problemas y no siempre capturaba. Lo que no pude es ver el motivo porque a veces funcionaba y otras no pues no encontré un motivo lógico.

  8. Buenos días y gracias por tu dedicación e información que compartes.

    Tengo la necesidad de montar el siguiente tinglado y ya he probado muchas cosas y no acabo de conseguirlo.

    Tengo una red local cableada sin wifi y sin acceso a internet y así quiero que siga siendo. En uno de los ordenadores de la red, he creado dos particiones del disco duro e instalado Windows 10 ver 1909 en ambas particiones; en una para probar virtual box y en la otra Hyper-V. En ambos casos con MV W10 ver 1909.

    Lo que me interesa es que la maquina virtual se pueda conectar a internet y que la maquina real o anfitrión NUNCA se puede conectar a internet.

    De momento la mejor solución ha sido: poner otro router wifi y utilizando un adaptador wifi conectado por USB a la maquina real. Ahora en la MV cojo la red wifi, pongo la clave y ya tengo internet. En la maquina real, el S.O. anfitrión detecta las redes wifi pero no me conecto a ninguna.

    Sin embargo este sistema no me sirve, por diferentes razones que ahora no viene a cuento, lo que quiero es poder hacer algo parecido pero que la MV se conecte a internet por cable.

    He probado con una segunda tarjeta de red fisica la maquina real y con el filtrado MAC en el router para el anfitrión pero también me bloquea el acceso en la MV.

    La verdad no se como hacerlo y me es muy importante. Las necesidades de la MV son mínimas, tan solo el acceso a internet y compartir algunos datos a través por ejemplo de las Carpetas compartidas de VBos.

    Gracias de antemano. Un saludo.

    1. La mejor opción es la que has comentado de USB, si la WIFI no te vale podrías probar a un USB de Ethernet.

      Lo otro no te sabría contestar y ademas veo problemas, Prueba a ver el red puente y en el anfitrión bajar el interfaz aunque no estoy muy seguro de que te funcione.

  9. Hola,
    Tengo un anfitrión con windows 10 en un portátil, me he instalado una MV con virtualbox, y necesito hacer una red de forma que el huésped (kali linux) este conectado en la misma red que el anfitrión. Esto sería adaptador puente tengo entendido, pero por algún motivo si ejecuto el comando iwconfig, me notifica que no hay ninguna conexión inalámbrica.
    Lo he hecho de la siguiente manera.
    He configurado en la MV, en red, el adaptador 1 como adaptador puente, como tipo de adaptador INTEL PRO/1000 y seleccionando una tarjeta de red en USB la cual es el siguiente modelo Realtek 8812AU Wireless LAN 802.11ac USB NIC. Esta la he seleccionado en nombre del adaptador 1, y finalmente en la pestaña USB he clicado a agrega un nuevo filtro USB, seleccionando dicha tarjeta de red en el USB.
    Mi ordenador portátil tiene la conexión a internet mediante la tarjeta de red inalambrica propia del portátil.
    El problema es que como digo, dentro de kali linux, no me permite ver que está operativa esta conexión a internet con la tarjeta, y si hago la conexión de forma inversa tampoco.
    Agradecería mucho tu ayuda.

    Un saludo

    1. La red WIFI en VirtualBox, lo veras como una red fija.
      Si pones el puente de la red WIFI en la virtual como hemos comentado es fija, pero si tiene una WIFI USB lo que debes de hacer es conectar el USB para que se vea en la maquina virtual y en esta instalar los driver.

      En mi caso en Kali cuando he tenido que realizar una auditoria WIFI lo que he puesto es el USB para la maquina virtual y no la anfitriona, así si te fincionara iwconfig y otras herramientas.

  10. Hola, excelente explicacion!

    Tengo una Notebook con Windows 7 x64 con una MV (VirtualBox), y quiero correr CloudReady en la MV para navegar por la web. Puedo hacer que el anfitrión no tenga acceso de ningún tipo a Internet y que SI lo tenga el Huesped? Como lo hago?

    Muchas gracias!

  11. Buenas tardes tengo un servidor dedicado en 1&1 este corre ubuntu server 18.04 y ahi tengo virtualbox con dos maquinas virtuales una con server 2003 y otra con server 2012, instale un servidor de archivos en server 2012 y redirigi el puerto a la virtual 2012 con virtualbox pero me sigue apareciendo cerrado y no puedo acceder a los recursos compartidos

    1. Entiendo que quieres que el servidor de archivos sea publico, para esto no solo debes redirigir en la Virtualización sino que tambien te lo tiene que permitir tu Hosting.
      Si lo que quieres es comunicar la 2003, con la 2012 basta con que crees un red privada en VirtualBox.

  12. La máquina invitada es un Windows y se puede conectar a un cliente de VPN, la máquina anfitrión es un OSX pero no puede conectarse a la VPN porque así fue configurada la VPN solo funciona para sistema operativo Windows.
    Una vez conectado a la VPN con la máquina invitada ¿se puede compartir la red de la máquina invitada a la máquina anfitrión?

    1. Si y realizarias una pasarela, es decir la invitada Windows la pones con dos tarjetas y por lo tanto dos IPs (una de ellas NAT para conectar a Internet que supongo es la conexion VPN y la otra IP de tarjeta local) de esta forma el trafico VPN va por la tarjeta publica NAT y la otra tarjeta se comunica con la anfitriona.
      En la anfitriona lo que tendras que hacer es definir que el trafico de la VPN se redirija a la maquina Windows que sera tu pasarela para este trafico.

  13. Buenas, y podría tener 2 MVs en una red interna, una es un «server» y otra «firewall», y el server con dhcp y apache, y firewall con otra tarjeta de red en modo puente (por ejemplo), y hacer que también haga de rúter para que la MV server salga al exterior? y del exterior accedan al apache del server? a través de «firewall». Gracias.

    1. Claro que si, tu puedes crear una red virtual con las maquinas que desees, por ejemplo tener una con una que sea el FireWall con dos tarjetas virtuales (una red interna y otra puente) de forma que toda salida hacia afuera o desde fuera deba pasar por el Firewall protegiéndo todas las maquinas internas de accesos no deseados y ademas el FW puede hacer NAT a maquinas internas de forma que si la red Puente tiene una IP publica podrías publicar maquinas internas en Internet.

  14. Buenas, tengo una red interna dividida en varias subredes que se conectan entre si a través de routers con enrutamiento estático, tengo conexión entre todos los equipos de la red pero ahora quiero que todos puedan tener salida a internet a través de un router, como podría hacer esto? Este último router tiene un adaptador con dirección dentro de la red interna y otro en red NAT lo que solamente le proporciona salida a internet a este. Como puedo hacer para que toda la red tenga conexión a internet a través de este router?

  15. Hola tenia todo funcionando correctamente, con varios sistemas distintos todo corriendo genial, pero he cambiado el router y ahora no tiene conexion a internet ninguno de los sistemas que tengo en virtualbox, teniendolo todo igual, en adaptador puente, sabes el motivo ? gracias

    1. La verdad que no, pues el cambio de router debería ser transparente, salvo que tengas configurado en el router algun filtro.
      Entiendo que desde el Host si que tienes acceso a internet.

Deja una respuesta

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

Información básica sobre protección de datos Ver más

  • Responsable: Javier.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a Hostinger.es que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

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

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad