¿Por qué necesitamos una dirección IP para un puente?

27

Un puente es un dispositivo de red de capa 2. En puentes físicos solo tenemos una dirección IP para operación y mantenimiento. Estoy un poco confundido por qué necesitamos en KVM una dirección IP para el puente. Entiendo que la interfaz de la máquina virtual tiene una dirección IP y que la interfaz física conectada al puente no tiene dirección IP. Esto garantiza que la dirección IP de la VM esté visible desde el exterior. En un entorno de servidor, solo usaría direcciones IP estáticas para las máquinas virtuales.

Supongamos que uso el direccionamiento IP estático para las máquinas virtuales, ¿por qué necesito una dirección IP en el puente?

fgeld
fuente

Respuestas:

14

No necesita tener una IP configurada para un puente, de la misma manera que no necesita tener una IP configurada para un dispositivo ethernet, en ninguna máquina (ya sea host / invitado o lo que sea).

Sin embargo, si tiene un dispositivo / puente que no tiene dirección IP, no puede esperar que pueda ser utilizado por la parte que no lo ha configurado correctamente (ya sea host o invitado).

Entonces, por ejemplo, si tengo un host KVM con un puente llamado "br_vm" que asigno a todos los invitados KVM como su única interfaz (los invitados probablemente lo llamarán "eth0"), y si br_vm no está configurado en el host , no puede esperar que los invitados puedan hablar con el host a través de su interfaz eth0.

Pregunta por qué necesita una IP para un puente y la respuesta es que no. Sin embargo, si desea saber en qué escenarios desearía tener una IP para el puente en el host, puedo pensar en algunos:

  1. Desea que sus máquinas virtuales se comuniquen con el host, aunque solo sea para DHCP o DNS;
  2. Es posible que desee deshabilitar el tráfico de VM a VM. Si comparte ese puente con muchas máquinas virtuales, es algo que vale la pena considerar;
  3. Es posible que desee tener un firewall en el nivel del host además de cualquier firewall que pueda haber configurado para sus máquinas virtuales. Concentrar todas las reglas de firewall en el host puede ser prudente si las políticas, zonas, etc. para todas sus máquinas virtuales son casi iguales. Es más fácil si todas las reglas, direcciones IP, políticas, etc. se mantienen en un solo lugar (aunque, por si acaso, configuraría un firewall básico);

Y, por cierto, puede tener un direccionamiento IP dinámico en sus máquinas virtuales invitadas, que no tiene nada que ver con si el host tiene o no una IP en el puente (a menos, por supuesto, que el host sea el servidor DHCP para la red) .

mbello
fuente
7

Esto es más una peculiaridad en la documentación que encuentro. Supongo que su host usa el /etc/network/interfacesarchivo para la configuración de la red.

Si, en la sección de interfaz de puente (br0 para este ejemplo), especifica una dirección de 0.0.0.0, obtiene exactamente lo que está buscando: las máquinas virtuales conectadas al puente todavía están conectadas a la red y conservan sus propias IP.

Sin embargo, entonces pierde el "puerto" del host en ese puente. Si (en el interfacesarchivo) especifica una dirección IP, esa se convierte efectivamente en la IP de su host en ese puente, igual que una interfaz de administración en un conmutador tradicional.

Recuerde que un puente es como un conmutador independiente, pero el host todavía lo "administra", por lo que agregar una IP simplemente agrega una interfaz de administración direccionada (si eso tiene sentido)


Si, como yo, su host tiene dos NIC: una para VM y otra para sí mismo, puede poner una dirección de 0.0.0.0 en el "puente de VM" y confiar en la otra NIC física para que la administración obtenga una configuración similar.


Si eso no es lo que estás preguntando, avísame y lo editaré a tu gusto.

agc93
fuente
3

No necesita asignar una IP a un puente de Linux.

Aquí hay un ejemplo de cómo se ve en /etc/network/interfaces. br0es el puente, que está conectado a la eth0interfaz:

auto br0
iface br0 inet manual
    bridge_ports eth0
Anders Trier
fuente