Abra una conexión TCP de prueba a un IP / puerto especificado

17

Estoy buscando una herramienta que funcione en Windows (XP a 7) que me permita abrir una conexión TCP a una IP y puerto especificados. Esta funcionalidad solía existir en Windows XP (Netsh Diag Connect IPhost), pero los comandos Netsh Diag parecen haberse eliminado en Vista / 7. He estado buscando algo similar, y he buscado Super User, pero parece que no puedo encontrar nada.

Algo que ya está integrado en Windows sería ideal, pero un pequeño ejecutable que lo hace (preferiblemente línea de comandos, ejecutable independiente).

Editar: debería haber especificado más. Estoy familiarizado con Telnet y masilla, y es lo que uso actualmente, sin embargo, estoy en un entorno en el que tengo que guiar a los usuarios no técnicos a solucionar problemas muy técnicos por teléfono, sin ninguna forma de acceso remoto ( suena divertido, ¿verdad? Si bien telnet funciona, no indica explícitamente si la conexión TCP fue exitosa o no; tienes que mirar la barra de título y el contenido de la salida del terminal, que, por alguna razón, parece imposible para los usuarios. Estoy buscando algo con una clara respuesta de tipo "Conexión TCP completada con éxito / fallida", si existe dicha herramienta.

Editar # 2: Gracias a todos los que respondieron. Todas las sugerencias fueron buenas, a pesar de que no publiqué una pregunta tan clara como debería. Gracias por la ayuda.

TheEmpireNeverEnded
fuente
Gracias a todos. La mayoría de estas herramientas con las que estoy muy familiarizado, y son las que uso actualmente, sin embargo, estoy buscando algo que explícitamente indique que se conectó con éxito o falló en texto bastante simple. Telnet requiere que mire el título de la ventana y el contenido de la salida, todo lo cual no es fácil de describir a los usuarios no técnicos por teléfono (sin acceso remoto). Debería haber especificado este punto antes.
TheEmpireNeverEnded
Le sugiero que edite su pregunta y la aclare / reescriba. No todas las personas leerán tu comentario.
slhck

Respuestas:

16

Netcat

nc mail.server.net 25

(Versión de Windows)

Socat

socat - TCP4:www.domain.org:80

(Versión de Windows)

La lectura de la página de ejemplos de socat nunca deja de aturdirme.

RedGrittyBrick
fuente
Me gustaría probar esto más y ver el resultado que obtengo de NC y socat, pero no puedo por el momento gracias a las maravillas de los firewalls corporativos.
TheEmpireNeverEnded
Estoy aceptando esto como la respuesta. Netcat es asombroso. Todavía no he probado la versión de Windows, pero jugué con nc en Fedora 16, y con el modificador -v, es casi exactamente lo que estoy buscando.
TheEmpireNeverEnded
Encontré lo más útil en un escenario de scripting de shell para usar nc -v -w 5 <host> <port>como resultado, el resultado puede compilarse e informarse muy bien. Ajuste el valor -w <timeout in secs> a su entorno (esto se aplica tanto a los puntos finales accesibles como a los no accesibles y limita la velocidad de escaneo).
JGurtz
8

pkgmgrahora se reemplaza por dism .

Instale telnet desde la línea de comandos (ejecútelo como administrador):

dism /online /Enable-Feature /FeatureName:TelnetClient

Luego puede probar la conexión TCP de la siguiente manera:

telnet example.com 80
Mixel
fuente
Por favor lea la pregunta otra vez cuidadosamente. Su respuesta no responde a la pregunta original. El OP pregunta por Windows y dice que está buscando algo más que telnet en su pregunta.
DavidPostill
3
@DavidPostill Lo siento, lo sé. Dejé mi respuesta porque busqué en Google "Windows test tcp connection" y esta pregunta está en la parte superior. Creo que muchas personas vienen aquí y no encuentran una solución satisfactoria (mire los votos a favor de los comentarios de Scott Chamberlain).
mixel
¡+1 para instrucciones sobre cómo instalar telnet!
Zyo
6

Simplemente use Putty , es pequeño (y tiene una versión de aplicación portátil ). Le permite especificar el puerto y puede usar telnet, que es una conexión TCP. También tiene otras funciones útiles como conexiones en serie (sin hiper terminal en Windows 7), SSH y Rlogin. Incluso tiene una función RAW que permite establecer conexiones TCP RAW.

También para que lo sepas: Telnet está incluido en XP, puedes usarlo desde la línea de comando IE:

telnet mailserver.server.com 25

Lo que establecería una conexión TCP en el puerto 25.

Supercereal
fuente
He intentado con Putty, pero ¿cómo consigue que la ventana de Putty permanezca abierta después de que se cierre la conexión remota?
Simon East
4

Solíamos hacer telnet a cierto puerto, pero telnet ya no viene con Windows 7 por defecto. Entonces, para su memoria USB: http://www.drk.com.ar/builder.php


fuente
66
Telnet todavía viene con Windows, simplemente no está instalado, sin embargo, no necesita su CD de instalación de Windows para instalarlo , de hecho, simplemente escriba pkgmgr /iu:"TelnetClient"y le solicitará un cuadro de diálogo UAC y se instalará.
Scott Chamberlain
1

Solía ​​haber telnet en Windows, no estoy seguro si se ha eliminado en versiones posteriores. Intenta buscarlo.

Puede descargar Cygwin y ejecutar las utilidades allí, incluidos netcat y telnet.

Hay una versión de Windows de NetCat disponible, pero no vi una URL canónica, por lo que no incluí una específica.

Rich Homolka
fuente
8
Telnet todavía viene con Windows, simplemente no está habilitado de forma predeterminada. Simplemente escriba pkgmgr /iu:"TelnetClient"una ventana de comando y se le mostrará un cuadro de diálogo UAC y se instalará. O puede hacerlo a través del cuadro de diálogo "Activar y desactivar características" en programas y características .
Scott Chamberlain
@scott esta es información útil ... Gracias por compartir ¡No tenía idea de que todavía estaba allí en Windows 7!
Supercereal
@ScottChamberlain, sabía cómo instalar telnet en win7, pero no cómo hacerlo desde la línea cmd. Muy útil. Gracias.
TheEmpireNeverEnded