martes, 2 de abril de 2019

Saber puertos abiertos en Windows

En ocasiones cuando trabajamos con redes locales o remotas, empleamos aplicaciones o dispositivos que utilizan direcciones IP y puertos para "escuchar y ser escuchados", en consecuencia si estos puertos no están abiertos o están bloqueados no podremos comunicarnos y tener los resultados deseados.

Para ello tenemos que realizar, primeramente, algunas pruebas para saber si estos puestos están abiertos o no, saber la causa y poder resolverlo. Aquí detallamos algunos métodos usados en Windows.

Telnet
Con este comando, a través del cmd, comprobaremos el estatus de un puerto determinado en una maquina remota a la que deseamos conectarnos.

telnet <direccion IP> <puerto>
aquí un ejemplo:

c:\telnet 10.51.51.1 3306
pulsamos enter, si no esta abierto el puerto 3306 (de MySQL), se nos mostrara un mensaje de error, en casi contrario nos devolverá un mensaje de conexión o en su caso un prompt o cursor parpadeante.

Nota:
Para poder utilizar este comando necesitamos activar esta característica de Windows. Para ello accedemos a: Panel de Control > Programas y características > Activar o desactivar características de Windows, activamos la casilla y listo.



PowerShell
Este comando ya es posible utilizarlo en las versiones de Windows 7 y versiones posteriores, es una interfaz de consola (CLI) con posibilidad de escritorio y unión de comandos por medio de instrucciones, para ejecutarlo pulsamos Windows + r y escribimos powershell.

Test-NetConnection <direccion IP> -Port <puerto>

Aquí un ejemplo, como el anterior:
Test-NetConnection 10.51.51.1 -Port 3306

Si todo funciona, nos dará una respuesta como la siguiente:

ComputerName     : 10.51.51.1
RemoteAddress    : 10.51.51.1
RemotePort       : 3306
InterfaceAlias   : Ethernet
SourceAddress    : 10.51.51.2
TcpTestSucceeded : True


Netstat

Esta herramienta nos permite ver una valiosa cantidad de información sobre nuestras conexiones de red. Es mas útil cuando deseamos saber de nuestro equipo que puertos están abiertos. La sintaxis que usaremos sera la siguiente:

netstat -an | findstr <puerto>

Cada una de las opciones significa lo siguiente:
-a: el listado completo de conexiones en uso
-n: muestra direcciones y puertos en formato numérico
findstr: la cadena que deseamos buscar, en este caso el puerto

El siguiente ejemplo:
netstat -an | findstr 80
nos dará algo similar a:
TCP  11.1.1.183:55564   104.192.108.80:80 ESTABLISHED
TCP  11.1.1.183:60318   54.208.52.17:80   CLOSE_WAIT
TCP  11.1.1.183:60755   23.205.213.18:80  TIME_WAIT


Nota: este comando con estas opciones es solo para Windows.

No hay comentarios.:

Entradas Populares