Qué proceso usa un puerto en Windows
Respuesta corta: netstat -ano muestra los puertos con sus PID, y el Administrador de tareas traduce el PID en un programa. Una herramienta gratuita como Propietario del puerto hace las dos mitades por ti: una lista de todos los puertos con búsqueda y el nombre del proceso, a una tecla de distancia.
Método 1: netstat + Administrador de tareas (integrado)
- Pulsa Win + R, escribe
cmd, Enter. - Encuentra al dueño del puerto:
El último número de la línea es el PID.netstat -ano | findstr :8080 - Abre el Administrador de tareas → Detalles y busca la fila con ese PID.
Funciona en todas partes, pero cada paso es manual: la cadena de filtro correcta, sacar el PID de debajo de decenas de filas IPv6 y luego buscarlo en una segunda herramienta.
Método 2: Propietario del puerto — lista con búsqueda y nombres ya incluidos
Propietario del puerto ejecuta el mismo netstat, cruza los PID con la lista de procesos y lo muestra como una tabla:
- Puertos en escucha primero — los que de verdad «bloquean» un puerto.
- Cuadro de búsqueda — escribe
8080,nodeo el PID; la lista se estrecha al instante. - Botón de copiar — lleva «TCP :8080 — node.exe (1234)» al portapapeles para un informe de error.
- Conmutador «Todas las conexiones» — añade los sockets establecidos cuando necesitas la imagen completa.
La app solo lee: nada se bloquea, cambia ni mata. Para liberar el puerto de verdad, termina el proceso propietario en el Administrador de tareas.
Descargar gratis — PortOwner-Setup.exe
Cómo leer el resultado
- LISTENING — un programa espera conexiones aquí. Estas filas causan «port already in use».
- ESTABLISHED — una conexión activa ahora mismo; no bloquea nada.
- Las filas UDP no tienen estado — es normal, UDP no establece conexiones.
- PID 4 / System — un controlador del kernel (normalmente SMB en 445 o RPC en 135); no hay nada que arreglar.
Casos típicos
«Port 8080 is already in use» al arrancar un servidor de desarrollo. Busca 8080 — suele ser un node.exe/java.exe olvidado de una sesión anterior. Termínalo en el Administrador de tareas.
Un juego o servicio «cannot bind» un puerto. Comprueba si algo más está escuchando ahí; compara las dos instancias.
Un escucha desconocido. Identifica el proceso propietario antes de preocuparte — 9 de cada 10 veces es un servicio de Windows.
FAQ
¿Hay una forma con PowerShell?
Sí: Get-NetTCPConnection -LocalPort 8080 muestra el PID propietario; el nombre del proceso sigue necesitando Get-Process -Id. Una app visor se ahorra ambos pasos.
¿Puedo liberar el puerto sin el Administrador de tareas?
taskkill /PID 1234 en cmd lo hace — pero comprueba antes el nombre del proceso; matar el proceso equivocado puede costarte trabajo sin guardar.
¿Por qué veo el mismo puerto dos veces, IPv4 e IPv6?
Los programas suelen escuchar en ambas pilas (0.0.0.0:8080 y [::]:8080); es un programa, dos filas.