Conexión en red inalámbrica en puente en KVM. ¿Por qué es tan complicado?

8

He estado usando VirtualBox (y a veces VMWare) durante años y nunca he tenido ningún problema con los adaptadores de red virtuales, sin importar si los físicos estaban conectados o no.

También jugué hace un tiempo con KVM en una configuración cableada y, aunque tuve que editar algunos archivos de configuración para que funcionara, también pude crear un adaptador en puente sin mayores problemas.

Hoy decidí (erróneamente, parece) intentar usar KVM en una computadora portátil con Ubuntu 13.10 e intenté crear una máquina virtual con conexión en red en puente a través de una interfaz inalámbrica. Fue extremadamente doloroso configurar esto.

Después de seguir todos los tutoriales que encontré ( por ejemplo ) y tener que reiniciar mi computadora portátil varias veces para recuperar la conexión, simplemente me di por vencido y volví a mi viejo y conocido VirtualBox.

Y, en realidad, lo primero que noté cuando examiné la documentación oficial de KVM fue que desalientan tratar de conectar un adaptador inalámbrico ya que, según ellos :

El método que se muestra aquí no funcionará con la mayoría de los controladores inalámbricos (¿todos?), Ya que estos no son compatibles con el puente.

Entonces, mi pregunta es:

  • ¿Cómo es que dicen que la mayoría de los adaptadores inalámbricos no admiten el puenteo si funciona en VirtualBox y VMWare simplemente "listo para usar"?
  • ¿Y cuál es la diferencia entre estos hipervisores que lo hace tan complicado en KVM, si es que funciona?
Carles Sala
fuente

Respuestas:

10

Antecedentes sobre KVM

Creo que esto se debe en parte a las expectativas con KVM. KVM es ante todo un producto de servidor y no un producto de escritorio para virtualización. Se puede usar en cualquier aplicación, pero definitivamente es más adecuado para usarse en un servidor.

Lo uso en más de 3 hosts en el trabajo, cada uno aloja 5-10 máquinas virtuales cada uno y se ha ejecutado sin problemas y es fácil de administrar, y básicamente funciona.

Pregunta 1

¿Cómo es que dicen que la mayoría de los adaptadores inalámbricos no admiten el puenteo si funciona en VirtualBox y VMWare simplemente "listo para usar"?

Creo que está sacando esta conclusión de esta propaganda en el sitio web de KVM .

ADVERTENCIA: El método que se muestra aquí no funcionará con la mayoría de los controladores inalámbricos (¿todos?), Ya que estos no son compatibles con el puente.

Esta declaración está aquí porque suele ser el caso. Creo que a menudo es por eso que cuando instala VirtualBox o VMWare, generalmente se instalan módulos de kernel y estos productos proporcionan su propio envoltorio para facilitarlo. Estos productos están esencialmente trabajando en torno a estos problemas.

Creo que este problema también es un problema de controladores. Los controladores para WiFi en Linux aún palidecen en comparación con el soporte que proporcionan los controladores de Windows para el mismo hardware. Eso es solo un hecho de la vida.

NOTA: He tenido NIC inalámbricas en el pasado que tampoco pude poner en modo puente en el pasado. Por lo general, he solucionado el problema utilizando VirtualBox u obteniendo una NIC diferente para mi computadora portátil.

También destacaré que ni VirtualBox ni VMware podrían hacer esto, al menos no hasta versiones más recientes. Vea esto como evidencia de KB de VMware:

Si su host tiene un adaptador de red inalámbrico, no puede usar redes en puente en hosts Linux en VMware Workstation 5 o inferior, VMware Server 1.x, ninguna versión de GSX Server, ningún host en VMware Workstation 3 o inferior, o en VMware GSX Server 2 o menos. Con estos productos, si desea ejecutar máquinas virtuales en un host que usa adaptadores Ethernet inalámbricos, debe configurar sus máquinas virtuales para que usen NAT o redes de solo host.

Fuente: Uso de redes en puente con una NIC inalámbrica (760)

Pregunta 2

¿Y cuál es la diferencia entre estos hipervisores que lo hace tan complicado en KVM, si es que funciona?

Realmente no puedo arrojar ninguna luz sobre esta pregunta en particular, aparte de decir que si fuera fácil, imagino que esta característica estaría habilitada. Creo que el quid de la cuestión tiene que ver con esta característica que requiere 3 o más grupos para coordinar sus esfuerzos (fabricación de hardware, desarrollo de controladores, kernel de Linux y KVM).

¡Estas situaciones son a menudo las que resultan cuando se necesitan múltiples grupos para trabajar juntos en el mundo de código abierto (IMO)!

Entonces, ¿puedo configurarlo o qué?

Puede configurar esto siguiendo las instrucciones de cualquiera de estos 2 artículos. La configuración requiere el uso de un dispositivo TUN / TAP que se puede poner en modo puente.

slm
fuente
Derecha. VirtualBox finge un "puente" a la red inalámbrica. Nunca funcionará realmente conectarse a un cliente inalámbrico, porque el AP rechazará los marcos con direcciones MAC que no se hayan asociado a él.
Michael Hampton
5

KVM, como cualquier otro software nativo de Linux, intenta usar el código existente en lugar de reinventar la rueda. Esto es lo que lo hace mucho mejor que todas las otras soluciones, debido a la disponibilidad de software para Linux y la velocidad con la que se actualiza y mejora, pero esto también le da las limitaciones de las otras soluciones.

En este caso, el culpable es bridge-utils, que funciona configurando la NIC que se está puenteando en modo promisorio. Muchos de los controladores de las NIC inalámbricas en Linux simplemente no admiten ese modo, pero eso no es culpa de KVM.

Todavía tiene la opción de usar NAT u OVS o cualquier otra cosa que soporte KVM (y hay muchas tecnologías disponibles)

dyasny
fuente
"El culpable es bridge-utils, que funciona configurando la NIC que se está puenteando en modo promisorio". ¿Hay alguna posibilidad de que pueda vincular a una o más fuentes acreditadas sobre esto, para agregar peso a este reclamo y / o proporcionar más lecturas para cualquiera que quiera saber más? Gracias :)
sampablokuper