Identificar el proceso que utiliza un puerto determinado
Seguro que ya os ha pasado, al iniciar un servicio (o una shell }:-)) falla porque hay otro proceso que ya levantó anteriormente el mismo puerto TCP…
Para encontrar rápidamente que proceso está usando el puerto en cuestión lo más fácil y recurrente es usar el comando «netstat» y bueno… vi una breve entrada en la wiki de SAP y siempre está bien tener una chuleta a mano en el blog… 😛
LINUX:
> netstat -nepal|grep 8080
tcp 0 0 :::8080 :::* LISTEN 10404 18906159 7952/java
En este primer ejemplo (Linux) vemos que el proceso con PID 7952 (java) está usando el puerto TCP 8080.
WINDOWS:
> netstat -nao|findstr 8080
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 3696
TCP []:8080 []:0 LISTENING 3696
En este ejemplo en Windows, encontramos que el proceso con PID 3696 es el que tiene ocupado el puerto (8080).
También es posible usar en Windows «netstat -ab» que mostrará todos los procesos asociados al puerto. La opción «a» lista todas las conexiones y la opción «b» muestra el ejecutable correspondiente.