
Tengo dos servidores Windows... Servidor A y Servidor B. Hay un servicio configurado en el Servidor A para escuchar en el puerto P. ¿Hay alguna manera de verificar si el puerto está abierto en Windows Server B independientemente de si el servicio se está ejecutando o no? Una forma es telnet... pero esto funcionaría sólo si el servicio se está ejecutando y escuchando en el puerto. Pero, ¿hay alguna manera de saber si el puerto está abierto independientemente del estado del servicio? Linux tiene un comando "nc" para lograr lo mismo. ¿Tenemos algo similar en Windows?
Gracias.!
Respuesta1
Puede utilizar netstat.exe para consultar puertos abiertos.
netstat.exe:
C:\Users\user>netstat.exe /?
Displays protocol statistics and current TCP/IP network connections.
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-x] [-t] [interval]
-a Displays all connections and listening ports.
ejemplo netstat -a:
C:\Users\user>netstat -a
Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:135 10.10.11.20:0 LISTENING
TCP 0.0.0.0:445 10.10.11.20:0 LISTENING
TCP 0.0.0.0:1433 10.10.11.20:0 LISTENING
TCP 0.0.0.0:1801 10.10.11.20:0 LISTENING
TCP 0.0.0.0:2103 10.10.11.20:0 LISTENING
Para realizar un netstat.exe remoto, puede utilizar la herramienta psexec (disponible gratuitamente enaquí)
ejemplo:
C:\Users\user>psexec \\10.10.21.145 netstat -a
PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:135 10.10.21.145:0 LISTENING
TCP 0.0.0.0:445 10.10.21.145:0 LISTENING
TCP 0.0.0.0:2701 10.10.21.145:0 LISTENING
TCP 0.0.0.0:3389 10.10.21.145:0 LISTENING