| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
12年前发布

利用Node.js构建一个简单的TCP代理服务器

今天我们将给大家介绍如何利用Node.js构建一个简单的TCP代理服务器(TCP proxy server)。该方案:我们已经有了一台主机(客户端)建立一个TCP连接到另外一台(远程机)

client —> remote

我们要在中间架设一个代理服务器,客户端与代理建立连接,然后代理转发到远程,并保持远程响应。
利用node.js来实现这种类型的网络操作将会非常简单,详见如下代码:

client —> proxy -> remote

var net = require('net');    var LOCAL_PORT  = 6512;  var REMOTE_PORT = 6512;  var REMOTE_ADDR = "192.168.1.25";    var server = net.createServer(function (socket) {      socket.on('data', function (msg) {          console.log('  ** START **');          console.log('<< From client to proxy ', msg.toString());          var serviceSocket = new net.Socket();          serviceSocket.connect(parseInt(REMOTE_PORT), REMOTE_ADDR, function () {              console.log('>> From proxy to remote', msg.toString());              serviceSocket.write(msg);          });          serviceSocket.on("data", function (data) {              console.log('<< From remote to proxy', data.toString());              socket.write(data);              console.log('>> From proxy to client', data.toString());          });      });  });    server.listen(LOCAL_PORT);  console.log("TCP server accepting connection on port: " + LOCAL_PORT);
是不是很简单呢?
源程序下载 github

Open经验库编译自:http://css.dzone.com/articles/building-simple-tcp-proxy

 本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1348239359979.html
Node.js Node.js扩展