¡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.
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:
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!