node.js實現(xiàn)端口轉(zhuǎn)發(fā)

字號:


    這篇文章主要為大家詳細介紹了Node.js實現(xiàn)數(shù)據(jù)推送的相關資料,感興趣的小伙伴們可以參考一下
    本文為大家分享的是node.js端口轉(zhuǎn)發(fā)實現(xiàn)代碼,供大家參考,具體內(nèi)容如下
    #!/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);
    以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助。