El invitado de Hyper-V pierde el acceso a la red cuando el puerto del conmutador virtual está en modo troncal

El invitado de Hyper-V pierde el acceso a la red cuando el puerto del conmutador virtual está en modo troncal

Tengo una máquina virtual invitada en una máquina con Windows Server 2012 R2 que ejecuta Hyper-V. Actualmente, el invitado utiliza la VLAN nativa (ID de VLAN 1). Puedo comunicarme con el huésped desde el anfitrión y desde la red. Sin embargo, el invitado es un controlador wlan Zebra/Motorola VX9000 que también necesitará manejar el tráfico en los ID de vlan 10 y 15. El puerto del conmutador utilizado por el host no está etiquetado en la vlan 1 y actualicé el puerto para que también esté etiquetado en las vlan. 10 y 15. También emito el siguiente comando a través de powershell:

Set-VMNetworkAdapterVlan -VMName MyGuest -Trunk -AllowedVlanIdList "10,15" -NativeVlanId 1

Desafortunadamente, después de ejecutar este comando, pierdo la capacidad de comunicarme con el huésped. Si abro la consola Hyper-V para el invitado, no tiene ningún acceso a la red. Intentar hacer ping al invitado desde el anfitrión u otras ubicaciones en la red genera un Destination host unreachablemensaje.

Puedo "arreglarlo" devolviendo el adaptador al modo sin etiquetar:

Set-VMNetworkAdapterVlan -VMName MyGuest -Untagged

Ahora puedo volver a comunicarme con el huésped, pero esto no soluciona nada. Todavía necesito que este invitado pueda manejar el tráfico en las VLAN 10 y 15.

No entiendo por qué sucede esto. Los paquetes sin etiquetar tenían VLAN ID 1 antes de cambiar al modo troncal. ¿No debería seguir siendo así ahora? ¿Cómo puedo hacer que este invitado se comunique en todas las VLAN que necesito?

Lo mejor que obtengo del mensaje de error que veo al hacer ping es similar a lo que vería si no hubiera ruta. ¿Necesito emitir un comando separado para crear una ruta para estas redes después de configurar el puerto como troncal (quizás en el host)?

Respuesta1

Solo tengo un par de máquinas virtuales configuradas de esta manera y tampoco hablaron en la VLAN nativa. Lo que hicimos para resolver esto fue configurar la VLAN nativa en algo no utilizado en la red, colocar la VLAN que desea usar en la permitida y luego cambiar todas las NIC dentro de la VM para etiquetar su tráfico.

Respuesta2

¡Encontré una solución!

Una publicación de alejanp eneste enlaceMe llevó a intentar jugar con vlan 0 y el siguiente comando parece estar funcionando:

Set-VMNetworkAdapterVlan -VMName MyGuest -Trunk -AllowedVlanList "1,10,15" -NativeVlanId 0

En resumen, configuré la vlan nativa en 0 e incluí mi vlan nativa real en la lista permitida.

Por supuesto, esto sólo puede funcionar siempre que la VLAN sin etiquetar necesaria para el invitado coincida con la VLAN sin etiquetar del puerto del host/conmutador. Afortunadamente, ese es el caso hoy.

información relacionada