Chat con Netcat

Con estas sencillas instrucciones podrás utilizar TCP/IP directamente para chatear, transfiriendo el texto sin codificar a través de un enlace de red simple. Funciona abriendo un puerto TCP para escucha en uno de los sistemas, conectándolo a un terminal de texto local. Luego otro sistema crea una conexión hacia el sistema que escucha, también enlazando la conexión a su terminal. Esto permitirá que cualquier cosa que se escriba en un terminal de cualquier sistema se transmita al terminal del otro. Para este truco hace falta Netcat en ambos sistemas. La mayor parte de las distribuciones de Linux incluye Netcat (comando nc).

Es necesario que no haya ningún cortafuegos bloqueando acceso el puerto en el sistema que escucha. Si está escuchando a través de la Internet, debe disponer de una dirección IP pública o redirección del puerto utilizado desde el router NAT, que debe en ese caso disponer de una dirección IP pública él mismo. No daré instrucciones para configurar esto.

El equipo que escucha debe abrir un puerto TCP esperando la conexión del segundo sistema que estará en el otro extremo de la conversación. La conexión se inicia por el segundo sistema. El equipo que escucha no necesita saber la dirección IP o el nombre del otro equipo. Para poner al primer sistema a escuchar en el puerto 1337, se debe escribir el siguiente comando en una ventana de terminal:

nc -l -p 1337

La opción -l dice que este equipo escuchará conexiones entrantes a través del puerto especificado luego de la opción -p. A partir de este momento, ese equipo esperará a una conexión.

En el segundo sistema, debemos conectarnos al puerto 1337 del sistema inicial:

nc escucha.local 1337

Donde escucha.local es el nombre o dirección IP de la máquina que escucha. Al ejecutar este comando, ambas máquinas quedarán vinculadas a través de un enlace TCP/IP, y cualquier cosa que alguien escriba en un terminal, seguido de la tecla ENTER, aparecerá en el otro terminal. Es posible hacer esta prueba utilizando un solo sistema (con dos ventanas de terminal), y colocando localhost como nombre de la máquina que escucha. Esto creará una conexión hacia el mismo sistema que la origina.

La combinación de teclas CTRL+C acabará con la conversación.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s