Debian 7 “Wheezy” y QEMU-KVM (II) final

¡Hola Amigos!. Continuamos con la Introducción al uso del QEMU-KVM en Debian Wheezy para hacer máquinas virtuales. Para facilitar la comunicación en lo adelante llamaremos “Host” o Anfitrión a la máquina que da soporte a todas las máquinas virtuales, y “Guest” o Invitado a cualquier máquina virtual.

Hoy veremos cómo podemos tener al Host y a los Guests con direcciones IP de una misma red, y cómo administrar Hosts y Guests remotos.

Y sin más, ¡entremos en materia!.

¿Cómo tener al Host y a los Guests con direcciones IP de nuestra LAN?

En el artículo anterior al instalar los paquetes necesarios recomendamos bridge-utils y hal. El primero nos permitirá hacer el Puente, y el segundo lo reflejará correctamente en la interface del Administrador de Máquinas Virtuales.

Con fines prácticos y para poder asignar direcciones IP de nuestra red a los Guests, lo primero que debemos crear es un Puente de Red o “Bridge” con la(s) tarjeta(s) de red del Host. Se puede lograr de muchas formas acorde a la documentación acompañante ubicada en /usr/shar/doc/bridge-utils, o la encontrada en Internet. Nosotros lo haremos editando el archivo de configuración /etc/network/interfaces, no sin antes detener el funcionamiento de la interface eth0 (y otra(s)). No lo hemos probado con el Network Manager administrando las conexiones de red. No usamos el Network Manager en nuestro Desktop. ¿Ok?.

  • Detenemos la interfase eth0 (y otras):
ifdown eth0
  • Editamos el archivo /etc/network/interfaces con nuestro editor favorito y lo dejamos con el siguiente contenido acorde a lo recomendado en la wiki.debian.org:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# Set up interfaces manually, avoiding conflicts with, e.g., network manager
iface eth0 inet manual

# iface eth1 inet manual
# iface eth1 inet manual

auto br0
iface br0 inet static
        address 10.10.10.1
        network 10.10.10.0
        netmask 255.255.255.0
        broadcast 10.10.10.255
        gateway 10.10.10.10
        bridge_ports all
        # bridge_ports eth0
        bridge_stp off       # disable Spanning Tree Protocol
        bridge_waitport 0    # no delay before a port becomes available
        bridge_fd 0          # no forwarding delay

Levantamos la interface br0

ifup bro
Waiting for a max of 0 seconds for # no delay before a port becomes available to become available.

Waiting for br0 to get ready (MAXWAIT is 2 seconds).

En el archivo /etc/network/interfaces, debemos tener en cuenta:

  • Cambiar las direcciones IP y la subnet por las de nuestra LAN.
  • Asignar a br0 la misma IP que debe tener la eth0 Física (la IP de nuestra máquina).
  • La línea que dice “bridge_stp off“, se refiere al STP (del ingés Spanning Tree Protocol), el cual es un protocolo de red de nivel 2 del Modelo OSI (capa de enlace de datos). Su función es la de gestionar la presencia de bucles en topologías de red debido a la existencia de enlaces redundantes (necesarios en muchos casos para garantizar la disponibilidad de las conexiones). [tomado de Wikipedia, ¿Ok?]
  • Con ésta configuración, cada vez que iniciemos el Host, se levantará automáticamente la interface br0.

Los que practicamos guiándonos por el artículo anterior, comprobaremos en lo adelante, que el Asistente para la creación de Máquinas Virtuales escogerá por defecto el Dispositivo fuente “Dispositivo de equipo eth0 (Puente ‘br0′)“,  como la Interface de la Red Virtual de cada Guest (Máquina Virtual) que creemos. No obstante podemos tener máquinas conectadas al br0 o a la NAT.

virt-manager-11

De ésta sencilla manera podemos asignar direcciones IP de nuestra LAN a nuestras máquinas virtuales. Claro, siempre y cuando sean direcciones que no estén en uso. Si estamos probando -o usando- un sistema operativo con ambiente de escritorio y en nuestra LAN tenemos un servidor DHCP, podemos configurar la tarjeta de red del Guest de forma que se configure mediante DHCP. De igual forma, podemos configurar el puente br0 para que adquiera su dirección IP de un servidor DHCP, aunque no sea lo más recomendado.

Cómo Administrar Host remotos mediante las Conexiones del Administrador de Máquinas Virtuales

Lo que explicaremos es válido para el Desktop que tengamos designado para administrar al o a los Hosts soporte de los Guests. Por supuesto que los Hosts remotos pueden ser otros Desktops, siempre que su hardware tenga las extensiones de virtualización.

El único paquete que debemos instalar en nuestro Desktop es el ssh-askpass, o para los que usemos GNOME el ssh-askpass-gnome. No olvidemos instalar el paquete openssh-server en el Host remoto para poder acceder a él mediante shh.

Para añadir una Conexión a un Host remoto mediante el Administrador de Máquinas Virtuales haremos lo siguiente:

virt-manager-15

virt-manager-16

virt-manager-14

virt-manager-13

virt-manager-12

Las imágenes se explican por si solas. Recomendamos naveguen por TODAS las opciones que brinda el Administrador de Máquinas Virtuales y PRUEBEN las características y parámetros que podemos pasar a las Máquinas Virtuales creadas mediante él.

Y se acabó la Actividad. ¡Hasta la próxima aventura!


22 comentarios, deja el tuyo

Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   eliotime3000 dijo

    Muchas felicidades por el trabajo que hiciste con el QVM. Ahora, estoy que termino el tutorial acerca de la instalación y/o configuración de ZPanelX porque finalmente logré instalarlo gracias al aporte que dio petercheco acerca de las dependencias de ZPanel.

    De todas formas, ni bien termino de bajar el DVD de Debian Wheezy (perdonen si mi internet es lenta), lo probaré.

    1.    fico dijo

      Gracias ElioTime!!!

      1.    eliotime3000 dijo

        De nada, colega. Es más, espero que publiquen mi post acerca de ZPanelX y al menos publiquen pantallazos acerca de cómo les fue.

    2.    petercheco dijo

      Me alegra haberte ayudado amigo 😀

      1.    eliotime3000 dijo

        Gracias por el consejo, petercheco. Es más, a la hora de instalar el zpanel, recomiendo usar la ip interna en vez de la externa o pública (a decir verdad, cometí el grave error de usar laip pública o externa y desgraciadamente, no pude acceder al panel y tuve que hacer todo de nuevo.

  2.   fico dijo

    Perdonen!!! Acabo de darme cuenta que el orden de las imágenes es al revés. O sea, deben leerlas de abajo hacia arriba. 🙂

    1.    eliotime3000 dijo

      Errare humanum est.

  3.   Julio Cesar dijo

    Muy bien tuto mi socio, sigue asi haciendo buenos aportes 🙂

    1.    Federico A. Valdés Toujague dijo

      Gracias mi amigo!!!.

  4.   pandev92 dijo

    Estoy probando el nuevo opera, por ahora algo lento…

    1.    pandev92 dijo

      Ni siquiera pone opera…que fail

    2.    elav dijo

      Hombre.. haz las pruebas en otro hilo.. dale, no seas malito. 😛

  5.   Federico A. Valdés Toujague dijo

    Gracias Elav. Me parece que deben chatear en otra parte. 🙂

  6.   st0rtmt4il dijo

    De lujo compa :D!

    Muchisimas Gracias por el tutorial!

    Saludos!

    1.    Federico A. Valdés Toujague dijo

      No hay de qué. Gracias por comentar.

  7.   ed dijo

    Saludos y felicitaciones por el tutorial, estoy investigando como virtualizar un firewall (clearos, monowall, pfsense …) mi duda es como una de las tarjetas de red puede ser activada unicamente para una maquina virtual, es decir que la maquina virtual sea quien pueda verle y administrarle pero el sistema host no lo haga.

    1.    Federico Antonio Valdés Toujague dijo

      @eduviz. Mis Saludos ante todo. Una posible solución sería la siguiente, aunque deba decirte que no la he probado. Ok?.

      Digamos que tienes en el Host que da soporte al Firewall Virtual, al menos dos interfaces de red: eth0 y eth1. Supongamos que en ese mismo Host tienes más máquinas virtuales conectadas al puente br0, el cual está declarado así:

      iface br0 inet static
      address 10.10.10.1
      network 10.10.10.0
      netmask 255.255.255.0
      broadcast 10.10.10.255
      bridge_ports eth0
      bridge_stp off # disable Spanning Tree Protocol
      bridge_waitport 0 # no delay before a port becomes available
      bridge_fd 0 # no forwarding delay

      Observa que sólo está puenteada la interfaz eth0. La interfaz eth1, la cual no está en uso por el Host, es precisamente la que debes agregar a tu Firewall Virtual y configurarla adecuadamente para que se conecta a la WAN de Internet mediante las direcciones IP que te otorgaron. Por supuesto que el Firewall debe tener además otra interfaz de red para que se conecte a tu LAN y sirva de Gateway o Pasarela para el resto de los equipos que autorices a salir a través del Firewall. Esa interfaz será la creada cuando escoges a br0 como interfaz para tu máquina virtual.

      También te digo que, cuando pases la eth1 del Host hacia el Firewall Virtual, el Host no podrá hacer uso de ella, a menos que realices configuraciones avanzadas sobre esa tarjeta de red.

      Prueba y me comentas.

  8.   federico dijo

    Como puedo hacer para administra en qemu dos placas de red ethernet ? una par mi host y otra para qemu. Lo hago porque tengo dos acces point con conexiones independientes. Y mi idea es utilizar una par descargas con torrent (maquina virtual en qemu) y la otra para uso diario en mi archlinux )(host)

    1.    Federico dijo

      puedes hacer un puente con la tarjeta que deseas unir a tu torrent. ejemplo, si es la eth1 la que quieres para eso, declaras un puente o bridge con ella. luego unes la tarjeta de red virtual de tu máquina torrent a ese puente.

  9.   renzo dijo

    Hola cuando agregas una red donde puedes eliminar esta para que no aparezca después

    1.    Federico Antonio Valdés Toujague dijo

      En el mismo lugar donde la creaste. Administrador de Máquina Virtual o Virtual Manager. Menú Editar — Detalles de la Conexión — Redes Virtuales. En esa página, agregas o quitas las redes virtuales.

  10.   jathan dijo

    Saludos comunidad y Fico, gracias por los dos artículos, son muy útiles y sencillos. Tengo instalado QEMU-KVM en una máquina i686 con Debian Jessie 8.3 y todo va muy bien. Quisiera que con la IP fija que tengo asignada al anfitrión (el cuál es la computadora con Debian Jessie 8.3), se pudiera acceder a uno de mis huéspedes el cuál es una máquina virtual también con Debian Jessie 8.3 que usaré como servidor web y de bases de datos para que dentro de la red local de mi trabajo, unos compañeros puedan conectarse a estas bases de datos a través de mi IP fija como si estuvieran instaladas en la computadora anfitrión. Definí la configuración de la interfaz bridge para mi equipo anfitrión como lo explicaste en este artículo, todo quedó bien y dentro de virt-manager he cambiado la red nat por la br0 en la opciones de conexión de la máquina virtual que les menciono, pero ahora no puedo acceder ni por SSH ni por ninguno de los servicios web a este huésped con una IP fija que le asigné de la red local predeterminada 192.168.122.0/24 de QEMU-KVM cuando estaba en nat. ¿Alguien me puede ayudar a decirme de qué manera puedo usar mi IP fija del anfitrión para conectarse a este huésped de manera local y mediante los otros equipos de mis compañeros por favor?