NodeJS – 创build简单的转发服务器
我正在尝试创build一个简单的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');
一旦我有这两个转发模块(远程和核心)运行,我希望做一些数据包检查…
提前谢谢了,
你需要为输出stream调用createConnection。 看看我的端口转发代码
您可以简单地将input和输出定义为两个连接,如下所示。
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的所有stream量转发到端口B.