- Descripción general
- Convenciones de variables
- Paso 1: Verificar conectividad ICMP (ping)
- Paso 2: Verificar la ruta (tracert)
- Paso 3: Comprobación de puertos TCP (Test-NetConnection)
- Paso 4: Estado de las sesiones TCP (netstat / Get-NetTCPConnection)
- Paso 5: Comprobar resolución DNS (nslookup / Resolve-DnsName)
- Paso 6: Solución avanzada de problemas
- Conclusión
Descripción general
Este artículo presenta una guía sistemática para identificar la causa de problemas de comunicación en entornos Windows Server, utilizando comandos estándar y herramientas de PowerShell. Se abordan pruebas de conectividad ICMP, verificación de puertos TCP, resolución de DNS y análisis de registros.
Convenciones de variables
Los valores dependientes del entorno se expresan como se indica a continuación. Sustitúyalos según su configuración real.
| Variable | Ejemplo | Descripción |
|---|---|---|
<<TARGET_HOST>> |
192.168.10.1 |
Nombre o dirección IP del host de destino |
<<PORT_NUMBER>> |
443 |
Puerto TCP utilizado por la aplicación |
<<LOG_PATH>> |
C:\Logs\netdiag.txt |
Ruta donde se guardarán los registros |
Paso 1: Verificar conectividad ICMP (ping)
Comprueba la accesibilidad a nivel de red.
ping <<TARGET_HOST>>
Si no hay respuesta, verifique:
- Si Windows Defender Firewall está bloqueando ICMP
- Si el host de destino está en ejecución
- Si la tabla de rutas es correcta (
route print)
Nota: En entornos donde ICMP está deshabilitado, es necesario verificar la conectividad mediante TCP.
Paso 2: Verificar la ruta (tracert)
Determina en qué salto de la ruta se interrumpe la comunicación.
tracert <<TARGET_HOST>>
Paso 3: Comprobación de puertos TCP (Test-NetConnection)
Evalúa si la comunicación a nivel de aplicación se establece correctamente.
Test-NetConnection -ComputerName <<TARGET_HOST>> -Port <<PORT_NUMBER>>
Campos principales de salida:
| Campo | Descripción |
|---|---|
TcpTestSucceeded |
Indica si la conexión TCP fue exitosa |
PingSucceeded |
Indica si el ICMP respondió |
RemoteAddress |
Dirección IP de destino resuelta |
SourceAddress |
Dirección IP de origen utilizada |
Consejo: Si el DNS es inestable, utilice la dirección IP directamente.
Paso 4: Estado de las sesiones TCP (netstat / Get-NetTCPConnection)
Permite visualizar las conexiones TCP activas y los puertos en escucha.
Con netstat
netstat -ano | findstr "<<PORT_NUMBER>>"
Opciones:
-a: muestra todas las conexiones y puertos en espera-n: muestra direcciones y puertos en formato numérico-o: muestra el ID del proceso
Identificar el proceso correspondiente:
tasklist /FI "PID eq <<PID_NUMBER>>"
Con PowerShell
Get-NetTCPConnection -State Established |
Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State, OwningProcess
Get-NetTCPConnection | Where-Object { $_.LocalPort -eq <<PORT_NUMBER>> }
Si hay muchas conexiones en estado
SYN_SENToTIME_WAIT, puede indicar interrupciones o reconexiones frecuentes.
Paso 5: Comprobar resolución DNS (nslookup / Resolve-DnsName)
Verifica si la resolución de nombres funciona correctamente.
nslookup <<TARGET_HOST>>
Análisis detallado con PowerShell:
Resolve-DnsName <<TARGET_HOST>> -Type A
Consulta a un servidor DNS específico:
Resolve-DnsName <<TARGET_HOST>> -Type A -Server 8.8.8.8
Nota: En entornos IPv6, utilice
-Type AAAA.
Paso 6: Solución avanzada de problemas
Habilitar registros del Firewall
Si la comunicación está bloqueada, active el registro del Firewall para análisis.
Set-NetFirewallProfile -Profile Domain,Public,Private `
-LogAllowed True -LogBlocked True `
-LogFileName "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" `
-LogMaxSizeKilobytes 32767
El tamaño predeterminado del registro es de 1 MB; aumentar el límite facilita el análisis.
Comprobar tabla ARP (problemas de capa 2)
arp -a
Si se observan direcciones MAC duplicadas o inconsistentes, sospeche de caché en switches o NICs virtuales.
Conclusión
La mayoría de los problemas de red pueden diagnosticarse sistemáticamente en cinco pasos:
ICMP → Ruta → TCP → DNS → Registro
Con herramientas estándar como ping, tracert, netstat y cmdlets de PowerShell como Get-NetTCPConnection, Resolve-DnsName y Test-NetConnection, es posible realizar un diagnóstico eficiente, estructurado y reproducible en entornos Windows Server.
