【问题标题】:NodeJS - create simple forwarding serverNodeJS - 创建简单的转发服务器
【发布时间】:2011-06-23 14:20:12
【问题描述】:

我正在尝试创建一个简单的 nodejs 服务器到服务器程序。

这是我想要达到的目标:

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

我需要为“远程”和“核心”编写 node.js 代码。

这是我到目前为止所拥有的(我现在很困惑......):

//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');

一旦这两个转发模块(远程和核心)启动并运行,我希望进行一些数据包检查...

非常感谢,

【问题讨论】:

    标签: node.js client


    【解决方案1】:

    您需要为输出流调用 createConnection。看我的端口转发代码here

    【讨论】:

      【解决方案2】:

      您可以像这样简单地将输入和输出定义为两个连接。

      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 - forward all traffic from port A to port B

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-06-15
        • 1970-01-01
        • 2018-07-28
        • 2011-08-23
        • 2014-11-03
        • 2017-12-06
        • 2011-02-12
        • 2011-08-07
        相关资源
        最近更新 更多