node.js实现端口转发


Posted in Javascript onApril 14, 2016

本文为大家分享的是node.js端口转发实现代码,供大家参考,具体内容如下

#!/sbin/node
 
var net = require('net');
 
function proxyPort(srcport,destServer,destport)
{
  var server = net.createServer(function(c) { //'connection' listener
 
    c.on('end', function() {
        console.log('src disconnected');
    });
 
    var client = net.connect({port: destport,host:destServer},function() { //'connect' listener
         console.log('ok....');
         c.on('data', function(data) {
             console.log(data.length);
           client.write(data);
         });
    });
 
    client.on('error', function(err) {
     console.log("dest=" + err);
     c.destroy();
    });
 
    c.on('error', function(err) {
     console.log("src" + err);
     client.destroy();
    });
 
    client.on('data', function(data) {
     c.write(data);
    });
 
    client.on('end', function() {
     console.log('dest disconnected ');
    });
 
  });
  server.listen(srcport, function() { //'listening' listener
   console.log('server bound' + srcport);
  });
}
 
var params = process.argv;
if(params.length != 5){
 console.log("node port.js srcport destserver destport "); 
 return;
}
 
proxyPort(params[2],params[3],params[4]);
 
console.log(process.argv);

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
javascript 写类方式之七
Jul 05 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
Jun 05 Javascript
node.js实现BigPipe详解
Dec 05 Javascript
自定义刻度jQuery进度条及插件
Sep 02 Javascript
jQuery实现带渐显效果的人物多级关系图代码
Oct 16 Javascript
jsp 网站引入外部css或者js失效问题解决
Oct 31 Javascript
Angularjs处理页面闪烁的解决方法
Mar 09 Javascript
jQuery+datatables插件实现ajax加载数据与增删改查功能示例
Apr 17 jQuery
如何使用VuePress搭建一个类型element ui文档
Feb 14 Javascript
详解基于mpvue微信小程序下载远程图片到本地解决思路
May 16 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
Apr 30 jQuery
three.js中多线程的使用及性能测试详解
Jan 07 Javascript
即将发布的jQuery 3 有哪些新特性
Apr 14 #Javascript
谈一谈JS消息机制和事件机制的理解
Apr 14 #Javascript
Kindeditor在线文本编辑器如何过滤HTML
Apr 14 #Javascript
基于RequireJS和JQuery的模块化编程日常问题解析
Apr 14 #Javascript
[原创]JQuery 在表单提交之前修改 提交的值
Apr 14 #Javascript
javaScript数组迭代方法详解
Apr 14 #Javascript
基于JS实现移动端访问PC端页面时跳转到对应的移动端网页
Dec 24 #Javascript
You might like
PHP 危险函数解释 分析
2009/04/22 PHP
一个对于Array的简单扩展
2006/10/03 Javascript
传递参数的标准方法(jQuery.ajax)
2008/11/19 Javascript
用Javascript实现Sleep暂停功能代码
2010/09/03 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
2015/03/04 Javascript
jQuery实现鼠标划过修改样式的方法
2015/04/14 Javascript
简介JavaScript中Math.LOG10E属性的使用
2015/06/14 Javascript
jquery实现模拟百分比进度条渐变效果代码
2015/10/29 Javascript
Vue.js实现一个自定义分页组件vue-paginaiton
2016/09/05 Javascript
深入探讨Vue.js组件和组件通信
2016/09/12 Javascript
D3.js实现直方图的方法详解
2016/09/25 Javascript
学习vue.js中class与style绑定
2016/12/03 Javascript
Bootstrap基本插件学习笔记之按钮(21)
2016/12/08 Javascript
如何制作幻灯片(代码分享)
2017/01/06 Javascript
checkbox在vue中的用法小结
2018/11/13 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
bootstrap实现嵌套模态框的实例代码
2020/01/10 Javascript
jQuery HTML获取内容和属性操作实例分析
2020/05/20 jQuery
vue中destroyed方法的使用说明
2020/07/21 Javascript
three.js着色器材质的内置变量示例详解
2020/08/16 Javascript
[22:07]DOTA2-DPC中国联赛 正赛 iG vs Magma 选手采访
2021/03/11 DOTA
python魔法方法-属性转换和类的表示详解
2016/07/22 Python
Python使用tkinter模块实现推箱子游戏
2019/10/08 Python
PyCharm2020.1.1与Python3.7.7的安装教程图文详解
2020/08/07 Python
MAC平台基于Python Appium环境搭建过程图解
2020/08/13 Python
Python特殊属性property原理及使用方法解析
2020/10/09 Python
Python3使用 GitLab API 进行批量合并分支
2020/10/15 Python
Pycharm创建文件时自动生成文件头注释(自定义设置作者日期)
2020/11/24 Python
Python安装Bs4的多种方法
2020/11/28 Python
联想新西兰官方网站:Lenovo New Zealand
2018/10/30 全球购物
Farfetch中文官网:奢侈品牌时尚购物平台
2020/03/15 全球购物
工程承包协议书
2014/10/20 职场文书
2014年科研工作总结
2014/12/03 职场文书
警告通知
2015/04/25 职场文书
会计实训总结范文
2015/08/03 职场文书
Golang并发操作中常见的读写锁详析
2021/08/30 Golang