Control del seguimiento de Winsock

El seguimiento de Winsock se puede controlar mediante cualquiera de los métodos siguientes:

  • Herramientas de línea de comandos

    Se incluyen dos herramientas de línea de comandos con Windows Vista y Windows Server 2008 que se usan para controlar el seguimiento y convertir el archivo de registro de seguimiento binario en texto legible.

    La herramienta logman.exe se usa para iniciar o detener el seguimiento de Winsock.

    La herramienta tracerpt.exe se usa para convertir el archivo de registro de seguimiento binario en un archivo de texto legible.

  • Visor de eventos

    El Visor de eventos en Windows Vista y versiones posteriores también se puede usar para habilitar el seguimiento de Winsock. El Visor de eventos es accesible en herramientas administrativas desde el menú Inicio.

Uso de logman y tracert

El seguimiento de eventos de red winsock está deshabilitado de forma predeterminada en Windows Vista y versiones posteriores.

El siguiente comando inicia el seguimiento de eventos de red winsock en un equipo, establece el nombre de la sesión de seguimiento de eventos en mywinsocksession y envía la salida a un archivo de registro binario denominado winsocklogfile.etl:

logman start -ets mywinsocksession -o winsocklogfile.etl -p Microsoft-Windows-Winsock-AFD

Los archivos de registro se crean en el directorio actual con nombres de archivo con el formato winsocklogfile_000001.etl

El siguiente comando detiene el seguimiento de Winsock anterior en un equipo para la sesión denominada mywinsocksession:

logman stop -ets mywinsocksession

Un archivo de registro binario se escribirá en la ubicación especificada por el parámetro –o. Para traducir el archivo binario a un archivo de texto legible, se usatracerpt.exe :

<tracerpt.exe nombre del archivo> .etl –o winsocktracelog.txt

Si se prefiere un archivo de salida que contiene xml en lugar de texto sin formato, se usa el siguiente comando:

<tracerpt.exe nombre del archivo> .etl –o winsocktracelog.xml –of xml

El seguimiento de cambios del catálogo de Winsock está habilitado de forma predeterminada en Windows Vista y versiones posteriores.

Nota:

Los proveedores de servicios en capas están en desuso. A partir de Windows 8 y Windows Server 2012, use Windows Filtering Platform.

 

El siguiente comando inicia el seguimiento de cambios de catálogo de Winsock para proveedores de servicios en capas (LSP) en un equipo, establece el nombre de la sesión de seguimiento de eventos en mywinsockcatalogsession y envía la salida a un archivo de registro binario denominado winsockcataloglogfile.etl:

logman start -ets mywinsockcatalogsession -o winsockcataloglogfile.etl -p Microsoft-Windows-Winsock-WS2HELP

Los archivos de registro se crean en el directorio actual con nombres de archivo con el formato winsockcataloglogfile_000001.etl

El siguiente comando detiene el seguimiento de Winsock anterior en un equipo para la sesión denominada mysession:

logman stop -ets mywinsockcatalogsession

Un archivo de registro binario se escribirá en la ubicación especificada por el parámetro –o. Para traducir el archivo binario a un archivo de texto legible, se usatracerpt.exe :

<tracerpt.exe nombre del archivo> .etl –o winsockcatalogtracelog.txt

Si se prefiere un archivo de salida que contiene xml en lugar de texto sin formato, se usa el siguiente comando:

<tracerpt.exe nombre del archivo> .etl –o winsockcatalogtracelog.xml –of xml

Uso de Visor de eventos para iniciar el seguimiento de eventos de red winsock

Al abrir Visor de eventos, el panel izquierdo contiene la lista de eventos. Abra Registros de aplicaciones y servicios y vaya a Microsoft\Windows\Winsock Network Event como origen y seleccione Operativo.

En el panel Acción, seleccione Propiedades del registro y active la casilla Habilitar registro . Una vez habilitado el registro, también puede cambiar el tamaño del archivo de registro si es necesario.

El seguimiento de eventos de red de Winsock ahora está habilitado y todo lo que necesita hacer es alcanzar la acción Actualizar para actualizar la lista de eventos que se han registrado. Para detener el registro, simplemente desactive el mismo botón de radio.

Es posible que tenga que aumentar el tamaño del registro en función del número de eventos que desee ver. Una desventaja de usar el Visor de eventos para el seguimiento de Winsock es que no carga todos los recursos de cadena, por lo que los mensajes que se muestran en el campo Descripción (una vez que selecciona un evento) a veces son difíciles de leer (un argumento que debe tener formato hexadecimal se mostrará en decimal, por ejemplo). Sin embargo, puede seleccionar la pestaña Detalles en la descripción del evento que muestra la entrada de registro XML sin formato que normalmente tiene más fácil de entender los argumentos.

Uso de Visor de eventos para iniciar el seguimiento de cambios del catálogo winsock

Al abrir Visor de eventos, el panel izquierdo contiene la lista de eventos. Abra Registros de aplicaciones y servicios y vaya a Microsoft\Windows\Winsock Catalog Change como origen y seleccione Operativo.

En el panel Acción, seleccione Propiedades del registro y active la casilla Habilitar registro . Una vez habilitado el registro, también puede cambiar el tamaño del archivo de registro si es necesario.

El seguimiento de cambios del catálogo de Winsock ahora está habilitado y todo lo que necesita hacer es alcanzar la acción Actualizar para actualizar la lista de eventos que se han registrado. Para detener el registro, simplemente desactive el mismo botón de radio.

Es posible que tenga que aumentar el tamaño del registro en función del número de eventos que desee ver. Una desventaja de usar el Visor de eventos para el seguimiento de Winsock es que no carga todos los recursos de cadena, por lo que los mensajes que se muestran en el campo Descripción (una vez que selecciona un evento) a veces son difíciles de leer (un argumento que debe tener formato hexadecimal se mostrará en decimal, por ejemplo). Sin embargo, puede seleccionar la pestaña Detalles en la descripción del evento que muestra la entrada de registro XML sin formato que normalmente tiene más fácil de entender los argumentos.

Interpretación de los registros de seguimiento de Winsock

Todos los eventos de seguimiento de Winsock de un registro contienen dos tipos de información:

  • Sistema
  • EventData

La información del sistema contiene el nivel de registro, la hora en que se creó la entrada de registro, el identificador de evento que representa el tipo de evento, el identificador de proceso de ejecución, el identificador de subproceso de ejecución y otra información del sistema. Un nivel de registro de 4 en el seguimiento de Winsock representa el registro de eventos de información. Un nivel de registro de 5 en el seguimiento de Winsock representa el registro de eventos detallado.

El identificador del proceso de ejecución y el identificador del subproceso en la información del sistema indican el proceso y el subproceso que se estaba ejecutando cuando se produjo el evento. En muchos casos, esto representará un subproceso y proceso de trabajo o kernel, no un subproceso en modo de usuario ni el proceso de la aplicación. Por lo tanto, este campo normalmente no es muy útil.

Cada tipo de evento de seguimiento de Winsock tiene un identificador de evento único en la sección del sistema de los datos registrados. Estos identificadores de eventos se pueden usar fácilmente para filtrar un archivo de registro para eventos de seguimiento de Winsock específicos.

Eventdata contiene información específica del tipo de evento.

El parámetro Process de la información eventdata es la dirección de la estructura EPROCESS del kernel para el proceso, no el PID real. Para hacer coincidir un evento con el PID del modo de usuario, tome el valor Process de la información eventdata de cualquier entrada de registro y busque anteriormente en el registro un evento de creación de sockets con el valor Process. Una vez que se encuentra una coincidencia, el último parámetro de los datos del evento de creación de sockets es el identificador de proceso en modo de usuario que creó el socket.

Se devuelve un parámetro Address en la información de eventdata en algunos eventos de seguimiento de Winsock. Un parámetro Address representa una dirección IP, pero se muestra en el archivo de texto creado por la herramienta tracerpt.exe o en Visor de eventos como bytes sin formato o un número. Las direcciones IPv6 se muestran en formato hexadecimal, por lo que se entienden más fácilmente. Las direcciones IPv4 se muestran como un número decimal grande. Los desarrolladores deberán convertir manualmente los bytes sin procesar de una dirección IPv4 a la notación de direcciones decimales con puntos IPv4 más conocida para poder interpretar mejor el valor.

Se devuelve un parámetro Error en eventdata en algunos eventos de seguimiento de Winsock. Un parámetro Error tiene el formato de un código de error NTSTATUS o HRESULT. Este parámetro de error se muestra en el archivo de texto creado por la herramienta tracerpt.exe o en Visor de eventos como un número decimal. Los desarrolladores deberán convertir manualmente el número decimal en un número hexadecimal para interpretar mejor el código de error en algunos casos.

Seguimiento de Winsock

Detalles del seguimiento de cambios del catálogo winsock

Detalles del seguimiento de eventos de red winsock

Niveles de seguimiento de Winsock