Duplicación de puertos en Hyper-V: guía de configuración
La resolución de problemas es una tarea común para los administradores de sistemas que trabajan con redes. Los equipos de red profesionales suelen tener funciones de supervisión y solución de problemas, como la duplicación de puertos. La duplicación de puertos también puede ser útil para analizar el tráfico de red en entornos virtuales, incluidas las redes virtuales en hosts Microsoft Hyper-V y las comunicaciones de red entre máquinas virtuales. Esta entrada del blog explica cómo configurar la duplicación de puertos de Microsoft Hyper-V para analizar las comunicaciones de red en un entorno virtual.
Conceptos clave de la duplicación de puertos
Antes de explicar cómo configurar la duplicación de puertos, exploremos los conceptos clave, el principio de funcionamiento y las funciones de configuración de Hyper-V existentes.
¿Qué es la duplicación de puertos?
La duplicación de puertos es la función que permite duplicar el tráfico de red de un puerto de red de un host de origen en un puerto de red (adaptador) de un host secundario para realizar un análisis posterior de este tráfico. Un host puede ser una máquina física, una máquina virtual, un equipo de red con una interfaz de red, etc. Un host de origen es el host cuyo tráfico de red se supervisa en este contexto. El puerto de origen también se denomina puerto duplicado y el puerto de destino también se denomina puerto observado. La duplicación de puertos también se conoce como analizador de puertos conmutados (SPAN).
Tipos y ventajas
La duplicación de puertos puede ser local y remota, dependiendo del modo de conexión entre puertos. Para la duplicación local de puertos, los puertos de red de origen y destino están conectados al mismo conmutador. La duplicación remota de puertos se utiliza cuando los puertos de origen y destino están conectados a distintos conmutadores. El etiquetado VLAN y la encapsulación GRE pueden utilizarse para la duplicación remota de puertos a fin de transferir el tráfico de red al puerto y dispositivo supervisados.
La ventaja de la duplicación de puertos es la posibilidad de analizar y depurar las comunicaciones de red sin afectar al procesamiento de los dispositivos de red en funcionamiento. Los administradores pueden analizar el tráfico para identificar posibles ataques en la red, detectar el origen del ataque y mejorar la seguridad de la red. No es necesario capturar el tráfico de red directamente en un sistema operativo invitado de una máquina en funcionamiento (que puede ser una máquina virtual de producción, por ejemplo) cuando se utiliza la duplicación de puertos.
Tenga en cuenta que la duplicación de puertos consume ancho de banda de red adicional para transferir el tráfico duplicado, por lo que puede que necesite activar esta función bajo demanda cuando necesite realizar análisis de red.
Replicación de puertos frente a reenvío de puertos
La duplicación de puertos difiere del reenvío de puertos en que el tráfico de red, como paquetes TCP o datagramas UDP, no puede redirigirse en la duplicación de puertos. El tráfico puede reflejarse (duplicarse), pero el origen y el destino para la dirección original del tráfico no se modifican. Se envía una copia del tráfico original a la ubicación de destino para su análisis.
En el reenvío de puertos, el destino del tráfico (como paquetes TCP o datagramas UDP) puede alterarse, y determinados paquetes (u otras unidades de datos de protocolo) pueden llegar a otra dirección IP y puerto en redes IP. El reenvío de puertos se utiliza con la traducción de direcciones de red (NAT) para la comunicación entre redes. No se crea ninguna copia del tráfico original.
Replicación de puertos en Hyper-V
Puede utilizar las funciones de duplicación de puertos en Hyper-V para analizar el tráfico en las redes virtuales a las que están conectadas las máquinas virtuales a través de conmutadores virtuales. Es necesario definir una máquina virtual de destino e instalar software de captura de tráfico, como Wireshark, para analizar el tráfico. Para ello, puede utilizar otros sistemas de detección de intrusos (IDS) disponibles.
La función de duplicación de puertos Hyper-V es similar a la duplicación de puertos de hardware, pero se implementa en el nivel de conmutador virtual Hyper-V. Las capacidades de ampliación del conmutador y las ACL (listas de acceso) de puerto se utilizan en un conmutador virtual Hyper-V para establecer reglas de reenvío y sniffing de tráfico.
La duplicación de puertos sólo funciona dentro de los límites de un único host Hyper-V. Si las máquinas virtuales están ubicadas en diferentes hosts Hyper-V (por ejemplo, en un cluster de conmutación por error, después de la migración de VM de un host a otro), entonces no se puede utilizar la duplicación de puertos Hyper-V. En este caso, es necesario configurar una VM de destino adicional para el análisis de red en el segundo host Hyper-V al que se migró la VM de origen.
Preparativos para la configuración de la duplicación de puertos
Debe familiarizarse con los requisitos para configurar la duplicación de puertos Hyper-V.
Requisitos previos y condiciones de configuración
A continuación se detallan los requisitos para configurar la duplicación de puertos en un entorno Hyper-V:
- Windows Server 2012 R2 (o posterior) con Hyper-V y acceso administrativo. Se puede utilizar Windows 10 o superior como sistema operativo cliente.
- Un conmutador virtual en un host Hyper-V.
- Al menos dos máquinas virtuales para reflejar (duplicar) el tráfico de la máquina virtual de origen a la de destino.
Lista de comprobación de hardware y software
Es necesario instalar un sniffer de tráfico (analizador de tráfico) o un sistema de detección de intrusiones en la máquina virtual de destino. Ejemplos de estas herramientas son Wireshark, Microsoft Network Monitor, Ettercap y SmartSniff.
Pasos de configuración
Tenemos dos máquinas virtuales Windows en un host Hyper-V:
- Wind0ws-VM – la máquina virtual de origen(192.168.101.215)
- Win-VM-Dest – la máquina virtual de destino(192.168.101.212)
Se configura un host Hyper-V en Windows Server 2019. La configuración para otras versiones de Windows compatibles es idéntica.
Configuración de un conmutador virtual
Puede utilizar un conmutador virtual existente o crear uno nuevo. Si no hay ningún conmutador virtual en el host Hyper-V, cree un nuevo conmutador virtual. Para crear un conmutador virtual, haga lo siguiente:
- Abra Hyper-V Manager, haga clic con el botón derecho en el host Hyper-V y pulse Virtual Switch Manager en el menú contextual.
- Seleccione un tipo de conmutador virtual y pulse Crear conmutador virtual. Para ello utilizamos vSwitch0, un conmutador externo (red en puente). Pulsa OK para guardar los ajustes y cerrar la ventana.
Configuración de la máquina virtual de origen
Una vez que un conmutador virtual está listo, puede configurar la máquina virtual de origen cuyo tráfico desea supervisar.
- Para abrir los ajustes de la máquina virtual de origen en Hyper-V Manager, haga clic con el botón derecho en el nombre de la máquina virtual y pulse Ajustes en el menú contextual.
- En la ventana de ajustes de la máquina virtual, vaya a Adaptador de red > Funciones avanzadas.
- En la sección Duplicación de puertos, seleccione Origen como modo de duplicación en el menú desplegable. Esta acción activa la duplicación de puertos Hyper-V para el puerto del conmutador virtual conectado al que está conectado el puerto actual de la máquina virtual. Pulsa OK para guardar los ajustes.
- Recuerde el nombre del conmutador virtual al que está conectado el adaptador de red virtual de la máquina virtual de origen. La ventaja es que puede configurar más de una máquina virtual de origen para analizar el tráfico de todas las máquinas virtuales en la máquina virtual de destino.
Siguiente etapa: configuración de la máquina virtual de destino a la que se duplicará el tráfico de red.
Configuración de la máquina virtual de destino
La práctica recomendada es crear un adaptador de red adicional en la máquina virtual de destino y desactivar todos los servicios de red para este adaptador de red para un análisis más preciso. Este enfoque permite obtener el volcado completo del tráfico de red después de desactivar los servicios y protocolos de red innecesarios.
- Apague la máquina virtual de destino si está en ejecución.
- Para abrir los ajustes de la máquina virtual de destino, haga clic con el botón derecho en el nombre de la máquina virtual en Hyper-V Manager y pulse Ajustes.
- Haga clic en Agregar hardware en el panel izquierdo de la ventana de ajustes de la máquina virtual, seleccione Adaptador de red y pulse Agregar.
- Seleccione el conmutador virtual al que se conectará el segundo adaptador de red virtual. Debe ser el mismo conmutador virtual al que está conectada la primera máquina virtual (de origen). En nuestro caso, se trata de vSwitch0. Pulsa OK para guardar los ajustes y cerrar la ventana.
- Vuelva a abrir los ajustes de la máquina virtual de destino.
- Seleccione el segundo adaptador de red virtual creado para la duplicación de puertos y el diagnóstico del tráfico (en la lista de hardware de la máquina virtual del panel izquierdo) y vaya a Adaptador de red > Funciones avanzadas.
- En la sección Duplicación de puertos, seleccione Destino como modo de duplicación para recibir el tráfico de red duplicado. Pulsa OK.
- Encienda las máquinas virtuales.
- Conectar con la VM de destino que se ha creado para recibir y analizar el tráfico (con Hyper-V VMConnect o RDP).
- Abra el Centro de redes y recursos compartidos en la máquina virtual Windows de destino. Haz clic en Cambiar ajustes del adaptador.
- Seleccione el segundo adaptador de red creado para el análisis del tráfico (puede cambiar el nombre de este adaptador a LAN2-SPAN para mayor comodidad).
- Haga clic con el botón derecho del ratón en el adaptador de red y pulse Propiedades.
Ahora, puede instalar y configurar software para el análisis del tráfico de red, como WireShark, en la máquina virtual de destino.
Instalación de un analizador de tráfico
- Descargue e instale Wireshark en la máquina virtual de destino. El proceso de instalación es sencillo en el asistente GUI: puedes utilizar los ajustes predeterminados.
- Ejecute Wireshark en la máquina virtual de destino.
- Haga doble clic en el adaptador de red creado especialmente para la duplicación de puertos y el análisis del tráfico de red (LAN2-SPAN) en la ventana de Wireshark.
- Ahora puede ver la actividad de red de la máquina virtual de origen (la dirección IP de la máquina virtual de origen es 192.168.101.215). Hagamos ping a google.com en la máquina virtual de origen.
- Podemos ver las peticiones y respuestas ICMP hacia/desde 142.251.208.110 que es la dirección IP del host google.com en este momento.
- Para mayor comodidad, puede activar un filtro, por ejemplo, seleccione ICMP.
Este es un ejemplo básico. Puede supervisar y analizar otras actividades de la red utilizando otros protocolos.
PowerShell
El sistema operativo Windows Server también permite configurar y gestionar la duplicación de puertos Hyper-V en PowerShell.
Para activar la duplicación de puertos en las máquinas virtuales de origen y destino, ejecute los comandos correspondientes:
Set-VMNetworkAdapter -VMName Wind0ws-VM -PortMirroring Source
Set-VMNetworkAdapter -VMName Win-VM-Dest -PortMirroring Destination
Para desactivar la duplicación de puertos para una VM:
Set-VMNetworkAdapter -VMName Wind0ws-VM -PortMirroring None
Para comprobar los ajustes de duplicación de puertos para máquinas virtuales:
(Get-VMNetworkAdapter -VMName Wind0ws-VM).PortMirroringMode
(Get-VMNetworkAdapter -VMName Win-VM-Dest).PortMirroringMode
Puede utilizar los siguientes comandos para mostrar información de ayuda:
Get-Help Set-VMNetworkAdapter
Get-Help Set-VMNetworkAdapter -full
Get-Help Set-VMNetworkAdapter -detailed
Get-Help Set-VMNetworkAdapter -examples
Los siguientes comandos pueden ser útiles para configurar la duplicación de puertos:
Add-VMNetworkAdapter
– añadir un nuevo adaptador de red virtual para una VM
Get-NetAdapter
– mostrar una lista de adaptadores de red para una VM
Rename-Netadapter
– cambiar el nombre para un adaptador de red virtual de una VM.
Conclusión
La configuración de la duplicación de puertos Hyper-V puede realizarse cómodamente en la interfaz gráfica de usuario de Hyper-V Manager o en PowerShell. Siga los requisitos y recuerde las limitaciones, como la ubicación del origen de las máquinas virtuales de destino en un único host Hyper-V. Es posible que tenga que configurar máquinas virtuales de destino adicionales con una herramienta de análisis de tráfico en hosts Hyper-V en un clúster de conmutación por error. Wireshark es una herramienta práctica y popular para analizar el tráfico, pero puedes utilizar otras herramientas si es necesario.