Cómo saber qué programa está usando o bloqueando un puerto con netstat en Windows

Me pasó ayer que no me arrancaba una aplicación web en un servidor Windows que no gestiona en su totalidad mi empresa. Intentabas arrancar pero había algo ocupando el puerto 80. ¿Cómo podía encontrar qué programa estaba ocupando ese puerto? Pues sirviéndome de netstat.

El comando a ejecutar sería el siguiente

netstat -ano -p tcp

De esta forma podemos ver todos los puertos, incluyendo los que están en escucha (parámetro -a), se muestran los puertos de forma numérica (parámetro -n) y el número de proceso (parámetro -o), filtrando por protocolo (parámetro -p) para mostrar solo los de TCP. Pero claro, esto nos saldría una salida enorme porque mostraría todos los puertos TCP y nosotros solo queremos el puerto 80. Podemos filtrar más:

netstat -ano -p tcp | find ":80"

Añadiendo una tubería para el filtrado podemos usar el comando find para que muestre solo los que tengan una referencia al puerto 80, quitándonos mucha información de encima.

Finalmente, si hemos localizado el proceso y queremos matarlo podemos abrir el Administrador de Tareas o simplemente usar el comando taskkill para eliminarlo usando el PID, por ejemplo si el PID fuera el 881 sería así:

taskkill /PID 881
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s