It was just an idea I had to help mitigate some ddos by having many servers and hiding the real ip of the server using this
Code:
var net = require('net');
function ProxyServer(localport, remoteip, remoteport) {
if (remoteport === undefined) remoteport = localport;
var server = net.createServer({
allowHalfOpen: false,
pauseOnConnect: false
}, function connected(a) { //'connection' listener
console.log('client connected '+localport);
var b;
a.on('end', function() {
console.log('client disconnected '+localport);
});
var b = net.connect(remoteport, remoteip,
function() { //'connect' listener
console.log('connected to server '+remoteport);
a.resume();
a.pipe(b);
b.pipe(a);
});
b.on('end', function() {
console.log('disconnected from server '+remoteport);
a.close();
});
});
server.listen(localport, function() { //'listening' listener
console.log('server bound '+localport);
});
}
// Put your ports here
var ports = [****];
// Put your ip here
var serverip = '***.***.***.***';
var proxies = [];
for (var i=0;i<ports.length;i++) {
var p = new ProxyServer(ports[i], serverip);
proxies.push(p);
}
// TODO Clean exit.






