Redireccionar puertos con NodeJS
Este código es muy útil para cuando queremos redirecionar algún puerto hacia otra dirección IP.
var net = require('net');
var dir_valid_r = /^(([a-zA-Z\-\.0-9]+):)?(\d+)$/; //Regex para validar los parámetros de las direcciones.
//Parámetros desde loa consola.
var dir = {desde: dir_valid_r.exec(process.argv[2]),hasta: dir_valid_r.exec(process.argv[3])};
//Valida los parámetros desde la consola.
if (!dir.desde || !dir.hasta) {
console.log('Uso: desde hasta\n\nEjemplo: localhost:80 192.168.0.100:8080');
return;
}
//Creamos el servidor
net.createServer(function(desde) {
var destino = net.createConnection({
host: dir.hasta[2],
port: dir.hasta[3]
});
desde.pipe(destino); //Aquí se enlaza el origen con el destino
destino.pipe(desde);
}).listen(dir.desde[3], dir.desde[2]);
Comentarios
Publicar un comentario