Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Node.js TCP forwarder

Tags:

node.js

tcp

I have the following simple NodeJS script and want to modify it slightly....

var sys = require( 'sys' ), net = require( 'net' );

var outputserver = net.createServer( function( stream ) {
    stream.addListener( 'data', function( data ) {
        sys.puts( data );
        //Want to output anything from the clientserver data here
    });
}).listen( 7001, 'localhost' );

var clientserver = net.createServer( function( stream ) {
    stream.addListener( 'data', function( data ) {
        sys.puts( data );

    });
}).listen( 7000, 'localhost' );

I need anything coming in from the "clientserver" to be output to the "outputserver" stream. There will be 50-60 clients connecting to the the "clientserver"

like image 424
Lee Armstrong Avatar asked Mar 18 '26 18:03

Lee Armstrong


1 Answers

This should work:

var util = require('util'), net = require('net');
var outServer = net.createServer(function(outStream) {
  outStream.on('data', function(data) {
    util.puts(data);
  });
  var inServer = net.createServer(function(inStream) {
    inStream.pipe(outStream, {end: false});
  });
  inServer.listen(7001, 'localhost');
});
outServer.listen(7000, 'localhost');
like image 142
Linus Thiel Avatar answered Mar 20 '26 13:03

Linus Thiel