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).
Configura su aplicación para abrir, digamos, el puerto 12345 (que puede abrir el usuario). Luego usa netcat para abrir, digamos, el puerto 123 (solo para usuarios privilegiados) y reenviar 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 reenvía los datos.
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 enviar datos de inmediato, querrá conectar a su cliente muy rápidamente y deberá tener cuidado con la forma en que se almacenan los datos.
Si desea que el cliente pueda desconectarse y volver a conectarse sin tener que reiniciar netcat, ejecute en su lugar:
# sudo nc -lk 123 | nc localhost 12345
El -k
le dice a netcat que siga ejecutándose si el cliente se desconecta del puerto 123.
Nuevamente, hay limitaciones con este método, ya que estás cediendo en gran medida el 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 desmontar, si eso es todo lo que necesita.