NodeJS - создать простой сервер пересылки - PullRequest
2 голосов
/ 23 июня 2011

Я пытаюсь создать простую программу nodejs для сервера.

Вот что я пытаюсь достичь:

-----------¦remote¦-----satellite link-----¦core¦---------
port 6999                port 7000                 port 6999

Мне нужно написать код node.js как для «удаленного», так и для «core».

Вот что у меня есть софар (я сейчас очень растерялся ...):

//remote.js
var util=require('util');
var net=require('net');

var input=net.createServer(function(inputStream){
        inputStream.on('data', function(data) {
                util.puts(data);
        });
        var output=net.createServer(function(outputStream) {
                outputStream.pipe(inputStream, {end: false});

                outputStream.on('data',function(dta){
                        util.puts(dta);
                });
        });
        output.listen(7000, '172.16.1.224');
});
input.listen(6999, '172.16.1.224');

Как только у меня будут запущены эти два модуля пересылки (удаленный и основной), я надеюсь провести некоторую проверку пакетов ...

Большое спасибо заранее,

Ответы [ 2 ]

1 голос
/ 22 июня 2017

Вы можете просто определить вход и выход как два соединения, вот так.

net.createServer(function(from) {
    var to = net.createConnection({
        host: addr.to[2],
        port: addr.to[3]
    });
    from.pipe(to);
    to.pipe(from);
}).listen(addr.from[3], addr.from[2]);

См. Node.js - пересылать весь трафик из порта A в порт B

1 голос
/ 02 июля 2011

вам нужно вызвать createConnection для выходного потока.Посмотрите на мой код переадресации порта здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...