¿Cómo debo configurar mis interfaces con múltiples IP para que las use Xen?

¿Cómo debo configurar mis interfaces con múltiples IP para que las use Xen?

Tengo un servidor que tiene varias IP asignadas. Me gustaría configurarlo como un hipervisor Xen para que cada VM tenga su propia IP dedicada. La forma en que tengo configuradas mis múltiples IP en este momento es:

#IP addresses are examples, actual server has public IPs
auto eth0
iface eth0 inet static
    address 192.168.1.10
    netmask 255.255.255.0
    gateway 192.168.1.1
    network 192.168.1.0

auto eth0:0
iface eth0:0 inet static
    address 192.168.1.11
    netmask 255.255.255.0

auto eth0:1
iface eth0:1 inet static
    address 192.168.1.12
    netmask 255.255.255.0

He probado varias cosas con el puente y, para ser honesto, estoy perdiendo la esperanza de encontrar una solución por mi cuenta. ¿Cómo podría hacer que Xen use una IP específica para cada uno de los dominios?

Respuesta1

Las direcciones IP para cada una de las máquinas virtuales deben configurarse en las propias máquinas virtuales, en lugar de en la máquina host.

Es útil imaginar cada una de las máquinas virtuales y el host con sus propias interfaces; sin embargo, solo el host tiene un cable físico que sale de él, por lo que las interfaces de la máquina virtual invitada deben conectarse en puente a la interfaz del host.

El puente se crea en el archivo /etc/networks/interfaces de la siguiente manera:

auto lo br0 eth0

iface lo inet loopback

iface br0 inet static
        bridge_ports eth0
        address 192.168.1.10
        netmask 255.255.255.0
        gateway 192.168.1.1

Esto creará un nuevo puente cuando se inicie la pila de red (como en el arranque), le agregará su interfaz y le dará al puente la dirección IP del host. Aquí puedes ver el puente:

$ brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.60a4ecf28d84       no              eth0

Puede tratar la interfaz br0 tal como lo haría con la interfaz eth0 que contiene.

Luego, en los archivos de configuración del invitado, tienes una línea como:

vif = ['bridge=br0, mac=00:16:3E:12:16:19']

Esto quiere decir, "dale a esta VM una interfaz virtual y agrégala al puente br0, y dale la siguiente mac".

Tenga en cuenta que no es necesario configurar una dirección MAC aquí, pero lo prefiero para poder usar DHCP para asignar una dirección IP estática a los invitados; de esa manera no necesito codificar ninguna dirección IP que no sea la del host ( y el servidor DHCP, que en mi caso es una VM en sí).

Luego, en el invitado, simplemente configúrelo como lo haría con cualquier otra máquina Linux:

auto eth0
iface eth0 inet static
    address 192.168.1.11
    netmask 255.255.255.0
    gateway 192.168.1.1

Tenga en cuenta que esto está en elinvitadoconfiguración de red de la máquina.

Cuando abra la VM, verá que el puente ahora tiene dos interfaces:

$ brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.60a4ecf28d84       no              eth0
                                                        vif1.0

Ese vif1.0 es la interfaz virtual del invitado. Ahora el invitado podrá hacer ping a la puerta de enlace y comunicarse como si estuviera conectado directamente a su red con un poco de cable.

información relacionada