Es posible qué queramos arrancar algún servidor en un puerto específico, pero al intentarlo Windows nos advierta que el puerto ya está en uso. Puede que no tengamos ni idea de que aplicación o proceso lo está usando, pero necesitamos liberarlo. Para ello necesitamos cerrar el proceso que lo está usando, pero lo primero sobre cómo saber qué proceso está escuchando en un puerto que queremos usar.
Cómo saber qué proceso está escuchando en un puerto
Existen dos alternativas para poder averiguarlo: por consola y por interfaz gráfica.
Lista de puertos y procesos por consola
Mediante el comando netstat, se puede obtener la lista de puertos y procesos en uso. Simplemente abriendo una consola y poniendo lo siguiente:
netstat -a -b
Básicamente muestra cada proceso entre corchetes y a continuación el protocolo de transporte (UDP/TCP), la dirección local, la dirección remota y el estado (ESTABLISHED/LISTENING/TIME_WAIT). Si queremos más detalles, el comando netstat admite los siguientes parámetros:
- -a Muestra todas las conexiones y puertos de escucha.
- -b Muestra el ejecutable responsable de haber creado cada conexión o puerto de escucha. Se muestra entre corchetes.
- -n Muestra las direcciones y números de puerto en formato numérico. Es decir, no resuelve en nombre de cada IP.
- -o Muestra el PID (Process Identifier) de cada proceso asociado a cada conexión.
Lista de puertos y procesos con interfaz gráfica
En Windows, se incluye una aplicación llamada Monitor de Recursos (Resource Monitor). Esta aplicación, entre otras cosas, muestra la lista de puertos en uso. Para abrirlo, hay abrir el menú Inicio y escribir Monitor de Recursos. También se puede encontrar en Inicio > Todos los programas > Accesorios > Herramientas del Sistema > Monitor de Recursos.
Una vez dentro, hay que ir a la pestaña Red y en el acordeón que aparece, desplegar Puertos de Escucha.
Aquí se muestra la información de manera similar al comando netstat. Pero en esta ocasión es más manejable gracias a la interfaz gráfica.