
Estoy ejecutando un Lenny Xen dom0 que aloja varias máquinas virtuales en una configuración de IP enrutada. Para obtener una subred privada adicional, creé el puente xenbr0 en dom0 con los siguientes comandos:
brctl addbr xenbr0
ifconfig xenbr0 10.0.0.1 netmask 255.255.255.0
ifconfig xenbr0 up
Esto funciona como se esperaba y Xen agrega las interfaces domU al puente al iniciar la VM. Mi único problema es: ¿cómo diablos especifico esta configuración en /etc/network/interfaces para que permanezca permanente y el puente esté disponible después de reiniciar? Probé la siguiente configuración que se encuentra en muchos tutoriales:
auto xenbr0
iface xenbr0 inet static
address 10.0.0.1
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
bridge_stp no
Recibo 2 errores diferentes, dependiendo de si el puente ya existe o no. Si no existe:
root@dom0:~# brctl show
bridge name bridge id STP enabled interfaces
root@dom0:~# /etc/init.d/networking restart
Reconfiguring network interfaces...if-up.d/mountnfs[eth0]: waiting for interface xenbr0 before doing NFS mounts (warning).
SIOCSIFADDR: No such device
xenbr0: ERROR while getting interface flags: No such device
SIOCSIFNETMASK: No such device
SIOCSIFBRDADDR: No such device
xenbr0: ERROR while getting interface flags: No such device
xenbr0: ERROR while getting interface flags: No such device
Failed to bring up xenbr0.
done.
Y si existe:
root@dom0:~# brctl show
bridge name bridge id STP enabled interfaces
xenbr0 8000.000000000000 no
root@dom0:~# /etc/init.d/networking restart
Reconfiguring network interfaces...if-up.d/mountnfs[eth0]: waiting for interface xenbr0 before doing NFS mounts (warning).
RTNETLINK answers: File exists
Failed to bring up xenbr0.
done.
¿Alguien podría indicarme la dirección correcta, por favor? El puente funciona bien cuando se crea manualmente, solo necesito las entradas correctas del archivo de configuración. La mayoría de los tutoriales que encontré agregan algunos dispositivos al puente en la configuración, ¿ese es quizás el problema por el cual no funciona? No tengo ninguna interfaz que quiera agregar al puente al crearlo, ya que se agregan más adelante al iniciar la VM...
Gracias, Matías
Respuesta1
Parece que te pierdes la línea más importante:
auto xenbr0
iface xenbr0 inet static
bridge_ports eth0 eth4 eth7 # bridge traffic between these interfaces
bridge_stp no
address 10.0.0.1
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
man
dice: Si necesita especificar las interfaces de manera más flexible, puede usar la siguiente sintaxis (más útil en Xen dom0):
bridge_ports regex (eth|vif).*
Esto significa evaluar (como en egrep(1)) las expresiones que siguen a "regex".
Respuesta2
¿Qué tal un script que se ejecuta después del inicio para ejecutar los comandos que desea?
Respuesta3
Es posible que tengas que quitar el network-manager
paquete. A menudo interfiere con la configuración manual de la interfaz.