Cómo capturar e inspeccionar paquetes de red en Windows Server

Contenidos

Mientras soluciona problemas de conexión o aplicación complicados, puede ser muy útil ver qué se está transmitiendo a través de la red. Microsoft ofreció originalmente el Monitor de red de Microsoft que fue sucedido por el Analizador de mensajes de Microsoft. Desafortunadamente, Microsoft ha descontinuado Microsoft Message Analyzer y ha eliminado sus links de descarga. Hoy en día, solo está habilitada el Microsoft Network Monitor más antiguo.

De todos modos, puede usar herramientas de terceros para realizar capturas de red, como WireShark. Aún cuando algunas herramientas de terceros pueden ofrecer una mejor experiencia, Microsoft Network Monitor aún se mantiene firme. En este post, veremos cómo capturar e inspeccionar paquetes usando la última versión disponible de Microsoft Network Monitor, una de las herramientas más populares que existen.

Aún cuando podría haber usado WireShark, descubrí que la interfaz y la facilidad de uso de Microsoft Network Monitor, lista para utilizar, es mucho más fácil de utilizar. Mucho de lo mismo se puede lograr en WireShark, pero es factible que deba realizar muchas más configuraciones en la interfaz.

Captura de paquetes con Microsoft Network Monitor

Primero, necesitamos instalar Microsoft Network Monitor, puede ubicar la descarga aquí y después proceda a instalarlo. Una vez que tenga instalado Microsoft Network Monitor, continúe e inicie el programa. Una vez iniciado, hará clic en Nueva captura.

A continuación, querrá iniciar el monitoreo haciendo clic en el botón Iniciar. Esto iniciará instantáneamente la captura y verá que las conversaciones comienzan a aparecer en el lado izquierdo.

Si encuentra que recibe un mensaje de error que dice que no hay adaptadores vinculados, entonces debe ejecutar Microsoft Network Monitor como administrador. Al mismo tiempo, si acaba de instalar esto, es factible que deba reiniciar.

Uno de los grandes beneficios de utilizar Microsoft Network Monitor es que agrupa sus conversaciones de red muy fácilmente en el lado izquierdo. Esto hace que sea mucho más fácil hallar procesos específicos y después sumergirse en ellos.

La expansión de cualquiera de los signos más le mostrará el conjunto específico de «conversaciones» que el monitor de red puede haber capturado y agrupado debajo de un procedimiento.

Filtrado de tráfico

Rápidamente encontrará que con todos estos datos ingresando, necesitará filtrar más fácilmente el ruido. Un ejemplo de uso de un filtro es el DnsAllNameQuery, en la sección DNS de Filtros estándar. Al agregar esta línea a la sección de filtro de visualización y hacer un clic en Aplicar, podrá mostrar solo los paquetes que son consultas de DNS, como se muestra a continuación.

Filtros de construcción

Crear filtros o modificar los filtros integrados es muy fácil. Dentro del campo Filtro de visualización, hay varias alternativas para construir filtros. Al ingresar un nombre de protocolo y seguirlo por un . (punto), verá un autocompletado de posibles valores de campo para comparar. Usando el operador de comparación estándar de == podemos ver si ciertos valores son iguales. Inclusive podemos crear expresiones múltiples usando operadores lógicos como and y or. A continuación se muestra un ejemplo de cómo se ve esto.

DNS.QuestionCount AND
DNS.ARecord.TimeToLive == 14

Además hay algunos métodos disponibles, como contains() y UINT8(). Puede ver el uso del método contiene a continuación para filtrar solo los registros DNS que contienen [google.com](http://google.com) y un tiempo para vivir de 14.

DNS.QuestionCount AND
DNS.ARecord.TimeToLive == 14 AND
DNS.QRecord.QuestionName.contains("google.com")

Como puede ver, hay varias alternativas para combinar filtros para que sean útiles y convenientes de utilizar. Esta es una magnífica manera de devolver solo los datos que le interesan, especialmente debido a que la captura de paquetes puede llegar a ser bastante grande. En la próxima sección, echamos un vistazo a algunos ejemplos más útiles.

Filtros de ejemplo

Algunos ejemplos prácticos, más allá de los integrados predeterminados, son de gran ayuda para ayudarlo a comprender cómo obtener solo los datos útiles que necesita.

Filtrado por número de puerto

Aún cuando es factible usar el protocolo HTTP para filtrar, el uso del siguiente método le posibilita contabilizar puertos personalizados, como 8080 o 8443, que es especialmente útil para arreglar problemas.

// Filter by TCP Port Number
tcp.port == 80 OR Payloadheader.LowerProtocol.port == 80
tcp.port == 443 OR Payloadheader.LowerProtocol.port == 443

Los marcos TCP que se han fragmentado se vuelven a ensamblar y se insertan en un nuevo marco en la traza que contiene un encabezado especial llamado, Payloadheader. Al buscar ambos, podemos asegurarnos de que estamos obteniendo todos los datos que estamos buscando aquí.

Encuentre marcos de negociación SSL

Durante la resolución de problemas, es factible que deba comprender qué conexiones SSL se intenta negociar. Aún cuando es factible que no pueda descifrar el tráfico interno, esto le ayudará a hallar qué servidores está intentando usar la conexión.

// Filter by SSL Handshake
TLS.TlsRecLayer.TlsRecordLayer.SSLHandshake.HandShake.HandShakeType == 0x1

Buscar retransmisiones de TCP y retransmisiones de SYN

Para arreglar problemas de carga y descarga de archivos, puede ver si se están produciendo muchas retransmisiones que podrían afectar el rendimiento.

Property.TCPRetransmit == 1 || Property.TCPSynRetransmit == 1

Asegúrese de tener las conversaciones activadas, este filtro depende de esa funcionalidad.

Lectura de marcos y datos hexadecimales

De forma predeterminada, el diseño de la ventana tiene dos paneles inferiores dedicados a Detalles de marco y Detalles hexadecimales. Dentro de los Detalles del marco, cada paquete se divide en sus partes componentes. En el lado opuesto están los detalles hexadecimales, que son los bytes sin procesar y la decodificación. Al elegir una sección distinto dentro de los detalles del marco, además se resaltará la misma sección dentro del código hexadecimal.

Conclusión

Realizar seguimientos de red es muy fácil con la última versión de Windows. Aún cuando Microsoft ha optado por descontinuar o desaprobar sus herramientas creadas internamente, algunas aún prosperan. Hay muchos otros, como WireShark, pero Microsoft Network Monitor aún hace que sea bastante sencillo analizar y comprender la información del paquete que se captura.

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.