Advertencia: si su depuración solo requiere una única conexión y no necesita depurar específicamente eventos de conexión / desconexión ...
Podría usar netcat
(o nc
en algunos sistemas).
Usted configura su aplicación para que se abra, por ejemplo, el puerto 12345 (que el usuario puede abrir). Luego utiliza netcat para abrir, digamos, el puerto 123 (solo para usuarios con privilegios) y reenvía los datos al puerto 12345.
# sudo nc -l 123 | nc localhost 12345
La primera mitad del comando ejecuta netcat nc
y le dice que escuche -l
en el puerto 123
. La tubería redirige los datos de la primera instancia de netcat a otra. El segundo comando se conecta a su aplicación y envía los datos a través.
Tenga en cuenta que tan pronto como ejecute este comando, la segunda instancia de netcat se conectará a su aplicación. Si su aplicación va a comenzar a eliminar datos inmediatamente, querrá conectar a su cliente muy rápidamente y deberá tener cuidado de cómo se almacenan los datos en el búfer.
Si desea que el cliente pueda desconectarse y volver a conectarse sin tener que reiniciar netcat, ejecute:
# sudo nc -lk 123 | nc localhost 12345
El -k
le dice a netcat que siga corriendo si el cliente se desconecta del puerto 123.
Una vez más, hay limitaciones con este método, ya que en gran medida estás renunciando al control del lado de la conexión al hacer que Netcat lo maneje por ti. Por otro lado, es muy rápido y fácil de configurar y demoler, si eso es todo lo que necesita.