Introducción
Ofrece una breve descripción general de la utilidad Netsh y su importancia en la gestión de redes. Destaca sus características clave, como la compatibilidad con scripts, la ejecución remota y las capacidades de solución de problemas.
Índice
Optimización del contenido
1. ¿Qué es la utilidad Netsh?
Netsh (Network Shell) es una potente herramienta de línea de comandos de Windows para configurar y solucionar problemas de la configuración de red. Interactúa con los componentes del sistema mediante bibliotecas de vínculos dinámicos (DLL) y admite varios contextos como advfirewall, wlan, y winhttp.
2. Sintaxis general de los comandos de Netsh
netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [Domain\]UserName] [-p Password|*] [Command | -f ScriptFile]
Explica brevemente los parámetros de sintaxis, destacando sus casos de uso.
3. Análisis en profundidad del seguimiento con Netsh
Recopilar seguimientos:
Usa el contexto netsh trace para capturar eventos y paquetes de red con fines de diagnóstico.
- Comando para mostrar escenarios:
netsh trace show scenarios

- Para mostrar los proveedores de un escenario específico:
netsh trace show scenario <Scenario name>
Parámetros importantes:
Detalla los parámetros clave, como scenario, capture, report, persistent, traceFile, etc., con ejemplos.
Comandos de seguimiento comunes:
- Iniciar el seguimiento:
netsh trace start scenario=InternetClient capture=yes tracefile=C:\temp\trace.etl
- Detener el seguimiento:
netsh trace stop
Opciones avanzadas:
Proporciona ejemplos avanzados de seguimiento con opciones como maxsize, filemode, y overwrite.
Convertir ETL a CAP:
Explica cómo convertir archivos ETL para usarlos en herramientas como Wireshark:
netsh trace convert input=trace.etl output=trace.cap
4. Filtrar capturas de red con Netsh
Filtros básicos:
Destaca los filtros de uso común, como:
- Capturar el tráfico hacia/desde una dirección IPv4 específica:
IPv4.Address == x.x.x.x
Filtros específicos de protocolo:
- Capturar tráfico DNS:
DNS
Filtros avanzados:
Ofrece ejemplos como la captura de paquetes de negociación TCP:
TCP.Flags.SYN == 1 AND TCP.Flags.ACK == 0
5. Contextos y casos de uso clave de Netsh
Configuración de IP:
- Establecer una IP estática:
netsh interface ip set address "Ethernet" static 10.0.0.5 255.255.255.0 10.0.0.1
Restablecer Winsock y la pila TCP/IP:
- Restablecer la pila TCP/IP:
netsh int ip reset
Operar el firewall:
- Añadir una regla de firewall:
netsh advfirewall firewall add rule name="Allow Ping" dir=in action=allow protocol=icmpv4
Configurar el proxy de WinHTTP:
- Establecer el proxy:
netsh winhttp set proxy "proxy:8080" "<local>"
Filtros de netmon de uso común para analizar capturas de red:
Filtros básicos
| Filtro | Propósito |
| IPv4.Address == x.x.x.x | Captura el tráfico hacia/desde una dirección IPv4 específica. |
| IPv4.SourceAddress == x.x.x.x | Filtra el tráfico procedente de una IP de origen específica. |
| IPv4.DestinationAddress == x.x.x.x | Filtra el tráfico dirigido a una IP de destino específica. |
| IPv6.Address == xxxx::xxxx | Filtra el tráfico IPv6 hacia/desde una dirección específica. |
| TCP.Port == 80 | Captura el tráfico en un puerto TCP específico (p. ej., 80 para HTTP). |
| UDP.Port == 53 | Captura el tráfico en un puerto UDP específico (p. ej., 53 para DNS). |
Filtros específicos de protocolo
| Filtro | Protocolo | Descripción |
| DNS | DNS | Captura consultas y respuestas DNS. |
| HTTP | HTTP | Captura el tráfico HTTP (se puede filtrar aún más por métodos). |
| TCP | TCP | Captura todo el tráfico TCP. |
| UDP | UDP | Captura todo el tráfico UDP. |
| SMB2 | SMB | Captura el tráfico de uso compartido de archivos SMBv2. |
| Kerberos | Kerberos | Captura paquetes de autenticación Kerberos. |
| LDAP | LDAP | Captura consultas/respuestas LDAP. |
Filtros de conversación
| Filtro | Propósito |
| IPv4.SourceAddress == x.x.x.x AND IPv4.DestinationAddress == y.y.y.y | Filtra el tráfico entre dos hosts específicos. |
| TCP.SourcePort == 12345 AND TCP.DestinationPort == 80 | Filtra una sesión cliente-servidor específica. |
Filtros de capa de aplicación
| Filtro | Ejemplo |
| HTTP.Request.Method == “GET” | Captura solo solicitudes GET. |
| HTTP.Host == “example.com” | Filtra el tráfico HTTP dirigido a un dominio específico. |
| DNS.QryName == “example.com” | Filtra las consultas DNS de un dominio específico. |
| SMB2.CreateRequest.FileName == “filename.txt” | Captura el acceso a archivos en el tráfico SMB. |
Filtros avanzados
| Filtro | Propósito |
| TCP.Flags.SYN == 1 AND TCP.Flags.ACK == 0 | Captura paquetes SYN (inicio de la negociación TCP). |
| TCP.Flags.FIN == 1 | Captura paquetes FIN (fin de la sesión TCP). |
| TCP.Flags.Reset == 1 | Captura paquetes RST de TCP (restablecimientos de conexión). |
| Frame.Length > 1000 | Captura solo paquetes de más de 1000 bytes. |
Contextos y caso de uso clave de Netsh
Establecer la configuración de IP
netsh interface ip set address “Ethernet” static 10.0.0.5 255.255.255.0 10.0.0.1
netsh interface ip set dns “Ethernet” static 1.1.1.1
netsh interface ip set address “Ethernet” dhcp
Restablecer Winsock y la pila TCP/IP
netsh int ip reset
netsh winsock reset
netsh advfirewall firewall add rule name=”Allow Ping” dir=in action=allow protocol=icmpv4
netsh advfirewall firewall add rule name=”Allow RDP” dir=in action=allow protocol=TCP localport=3389
netsh advfirewall set allprofiles state on
netsh advfirewall export “C:\\backup\\fwconfig.wfw”
netsh winhttp show proxy
netsh winhttp set proxy “proxy:8080” “<local>”
netsh winhttp reset proxy
6. Conclusión
Resume la versatilidad de Netsh como herramienta de gestión y solución de problemas de red. Anima a los lectores a explorar más contextos y comandos usando documentación oficial de Microsoft.