El puente en el arranque hace que el sistema se cuelgue

El puente en el arranque hace que el sistema se cuelgue

Cada vez que configuro br0 para que se inicie automáticamente al arrancar, el sistema se bloquea, generalmente en una línea que dice algo como "esperar 2 segundos para que br0 esté listo" o "vinculado a xxxx a br0 - renovación en xxxx" (es decir durante la secuencia de arranque, antes de que se hayan inicializado las interfaces gráficas).

Usando Debian Sid con KVM y virt-manager. No tengo problemas para poner en funcionamiento el puente una vez que se inicia, y funciona de maravilla. El problema es que quiero que se conecte automáticamente a br0, tal como lo haría con una interfaz normal. No creo que sea una idea tan ridícula, pero tampoco tengo mucha experiencia en redes Linux.

Probé casi todas las configuraciones de /etc/network/interfaces que encontré, y todas causan que se cuelgue al arrancar o no inician br0 automáticamente. Lo único que no he explorado exhaustivamente son los comandos "pre-up" y "post-down" que he visto ocasionalmente, pero tengo la impresión de que no son necesariamente necesarios. Debido a que el sistema se bloquea por completo y se niega a seguir arrancando, es bastante complicado forzarlo a reiniciarse, iniciar una distribución de rescate y eliminar cualquier configuración en el archivo de interfaces cada vez.

He podido hacer que se inicie automáticamente colocando "ifup br0" en /etc/rc.local, pero esto causa algunos otros problemas, como que los recursos compartidos no se conectan y VNC no se inicia. Si bien aún no he llegado a esa etapa, me preocupa que mis invitados no puedan arrancar una vez que los configuro para que se inicien automáticamente si estoy usando este método.

Respuesta1

Esto parece no ser una solución, pero parece funcionar. Lo que hice fue crear dos archivos de interfaz: interfaces_eth0 e interfaces_br0. Luego agregué

cp "/etc/network/interfaces_br0" "/etc/network/interfaces"
service networking restart
cp "/etc/network/interfaces_eth0" "/etc/network/interfaces"

a /etc/rc.local

Debian arrancará, mis recursos compartidos se conectarán y mis invitados tendrán acceso a la red, incluso cuando estén configurados para iniciarse automáticamente.

Respuesta2

Otra solución que parece estar funcionando hasta ahora implica lo siguiente. Creé un script en /etc/init.d/network_fix que contiene lo siguiente:

### BEGIN INIT INFO
# Provides:          network_fix
# Required-Start:    $remote_fs $syslog $network
# Required-Stop:     $remote_fs $syslog $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Fix network for KVM
# Description:       Resolve bridging bug causing hang on boot.
### END INIT INFO
#! /bin/sh
# /etc/init.d/blah
#
cp -f /etc/network/interfaces_br0 /etc/network/interfaces
ifdown br0 eth0 eth1
ifup br0
cp -f /etc/network/interfaces_none /etc/network/interfaces
exit 0

Y luego actualicé mi init.d con update-rc.d. /etc/network/interfaces_nonecontiene únicamente loopback y /etc/network/interfaces_br0contiene lo siguiente:

auto lo
iface lo inet loopback

auto eth1
allow-hotplug eth1
iface eth1 inet dhcp

auto br0
iface br0 inet dhcp
        bridge_ports eth1
        bridge_stp off

En este punto, había agregado una NIC adicional, por lo tanto eth1.

información relacionada