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 相关文章推荐
jQuery 常见开发使用技巧总结
Dec 26 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
Dec 26 Javascript
JQuery记住用户名和密码的具体实现
Apr 04 Javascript
jquery使整个div区域可以点击的方法
Jun 24 Javascript
JavaScript中对DOM节点的访问、创建、修改、删除
Nov 16 Javascript
JavaScript代码生成PDF文件的方法
Feb 26 Javascript
jquery获取easyui日期控件的值实现方法
Nov 09 Javascript
Angular2入门教程之模块和组件详解
May 28 Javascript
JavaScript Date对象应用实例分享
Oct 30 Javascript
微信小程序出现wx.navigateTo页面不跳转问题的解决方法
Dec 26 Javascript
vue-cli系列之vue-cli-service整体架构浅析
Jan 14 Javascript
vue如何实现自定义底部菜单栏
Jul 01 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
一道求$b相对于$a的相对路径的php代码
2010/08/08 PHP
PHP向socket服务器收发数据的方法
2015/01/24 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
javascript标签在页面中的位置探讨
2013/04/11 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
简约JS日历控件 实例代码
2013/07/12 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
2014/03/18 Javascript
js改变鼠标的形状和样式的方法
2014/03/31 Javascript
Javascript学习笔记之 对象篇(四) : for in 循环
2014/06/24 Javascript
基于jQuery实现拖拽图标到回收站并删除功能
2015/11/25 Javascript
jQuery实现只允许输入数字和小数点的方法
2016/03/02 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
2017/08/14 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
JavaScript引用类型Date常见用法实例分析
2018/08/08 Javascript
vue图片上传本地预览组件使用详解
2019/02/20 Javascript
使用JS来动态操作css的几种方法
2019/12/18 Javascript
微信小程序自定义弹出层效果
2020/05/26 Javascript
Javascript如何递归遍历本地文件夹
2020/08/06 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
vue任意关系组件通信与跨组件监听状态vue-communication
2020/10/18 Javascript
[01:06]DOTA2小知识课堂 Ep.02 吹风竟可解梦境缠绕
2019/12/05 DOTA
python定向爬取淘宝商品价格
2018/02/27 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
Python内建序列通用操作6种实现方法
2020/03/26 Python
python实现udp聊天窗口
2020/03/31 Python
python datetime时间格式的相互转换问题
2020/06/11 Python
python 通过exifread读取照片信息
2020/12/24 Python
用python监控服务器的cpu,磁盘空间,内存,超过邮件报警
2021/01/29 Python
HTML5 canvas实现雪花飘落特效
2016/03/08 HTML / CSS
使用canvas压缩图片大小的方法示例
2019/08/02 HTML / CSS
意大利时尚精品店:Nugnes 1920
2020/02/10 全球购物
关于读书的演讲稿800字
2014/08/27 职场文书
委托书如何写
2014/08/30 职场文书
教师党员先进性教育自我剖析材料思想汇报
2014/09/24 职场文书
2019邀请函格式及范文
2019/05/20 职场文书