婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Perl實(shí)現(xiàn)的Linux下socket代理服務(wù)器

Perl實(shí)現(xiàn)的Linux下socket代理服務(wù)器

熱門(mén)標(biāo)簽:惠州龍門(mén)400電話要怎么申請(qǐng) okcc外呼系統(tǒng)怎么調(diào)速度 熱門(mén)電銷(xiāo)機(jī)器人 智能機(jī)器人電銷(xiāo)神器 上海企業(yè)外呼系統(tǒng) 河南虛擬外呼系統(tǒng)公司 電話機(jī)器人哪里有賣(mài) 外呼電信系統(tǒng) 萬(wàn)利達(dá)百貨商場(chǎng)地圖標(biāo)注

大家提供了許多l(xiāng)inux開(kāi)代理的方法,一般用到python等語(yǔ)言,一些服務(wù)器可能不會(huì)安裝,然而perl可以說(shuō)是linux標(biāo)配的語(yǔ)言,給大家一款Perl語(yǔ)言的socket代理,代碼非常少,而且還支持密碼,效果還是不錯(cuò),感覺(jué)很穩(wěn)定。

#!/usr/bin/perl 
 
$auth_enabled = 0; 
$auth_login = "hidden"; 
$auth_pass = "hidden"; 
$port = 44269; 
 
use IO::Socket::INET; 
 
$SIG{'CHLD'} = 'IGNORE'; 
$bind = IO::Socket::INET->new(Listen=>10, Reuse=>1, LocalPort=>$port) or die "Нельзя забиндить порт $port\n"; 
 
while($client = $bind->accept()) { 
$client->autoflush(); 
 
if(fork()){ $client->close(); } 
else { $bind->close(); new_client($client); exit(); } 
} 
 
sub new_client { 
local $t, $i, $buff, $ord, $success; 
local $client = $_[0]; 
sysread($client, $buff, 1); 
 
if(ord($buff) == 5) { 
 sysread($client, $buff, 1); 
 $t = ord($buff); 
 
 unless(sysread($client, $buff, $t) == $t) { return; } 
 
 $success = 0; 
 for($i = 0; $i  $t; $i++) { 
 $ord = ord(substr($buff, $i, 1)); 
 if($ord == 0  !$auth_enabled) { 
  syswrite($client, "\x05\x00", 2); 
  $success++; 
  break; 
 } 
 elsif($ord == 2  $auth_enabled) { 
  unless(do_auth($client)){ return; } 
  $success++; 
  break; 
 } 
 } 
 
 if($success) { 
 $t = sysread($client, $buff, 3); 
 
 if(substr($buff, 0, 1) == '\x05') { 
  if(ord(substr($buff, 2, 1)) == 0) { 
  ($host, $raw_host) = socks_get_host($client); 
  if(!$host) { return; } 
  ($port, $raw_port) = socks_get_port($client); 
  if(!$port) { return; } 
  $ord = ord(substr($buff, 1, 1)); 
  $buff = "\x05\x00\x00".$raw_host.$raw_port; 
  syswrite($client, $buff, length($buff)); 
  socks_do($ord, $client, $host, $port); 
  } 
 } 
 } else { syswrite($client, "\x05\xFF", 2); }; 
} 
$client->close(); 
} 
 
sub do_auth { 
local $buff, $login, $pass; 
local $client = $_[0]; 
 
syswrite($client, "\x05\x02", 2); 
sysread($client, $buff, 1); 
 
if(ord($buff) == 1) { 
 sysread($client, $buff, 1); 
 sysread($client, $login, ord($buff)); 
 sysread($client, $buff, 1); 
 sysread($client, $pass, ord($buff)); 
 
 if($login eq $auth_login  $pass eq $auth_pass) { 
 syswrite($client, "\x05\x00", 2); 
 return 1; 
 } else { syswrite($client, "\x05\x01", 2); } 
} 
 
$client->close(); 
return 0; 
} 
 
sub socks_get_host { 
local $client = $_[0]; 
local $t, $ord, $raw_host; 
local $host = ""; 
 
sysread($client, $t, 1); 
$ord = ord($t); 
if($ord == 1) { 
 sysread($client, $raw_host, 4); 
 @host = $raw_host =~ /(.)/g; 
 $host = ord($host[0]).".".ord($host[1]).".".ord($host[2]).".".ord($host[3]); 
} elsif($ord == 3) { 
 sysread($client, $raw_host, 1); 
 sysread($client, $host, ord($raw_host)); 
 $raw_host .= $host; 
} elsif($ord == 4) { 
 #ipv6 - not supported 
} 
 
return ($host, $t.$raw_host); 
} 
 
sub socks_get_port { 
local $client = $_[0]; 
local $raw_port, $port; 
sysread($client, $raw_port, 2); 
$port = ord(substr($raw_port, 0, 1))  8 | ord(substr($raw_port, 1, 1)); 
return ($port, $raw_port); 
} 
 
sub socks_do { 
local($t, $client, $host, $port) = @_; 
 
if($t == 1) { socks_connect($client, $host, $port); } 
elsif($t == 2) { socks_bind($client, $host, $port); } 
elsif($t == 3) { socks_udp_associate($client, $host, $port); } 
else { return 0; } 
 
return 1; 
} 
 
sub socks_connect { 
my($client, $host, $port) = @_; 
my $target = IO::Socket::INET->new(PeerAddr => $host, PeerPort => $port, Proto => 'tcp', Type => SOCK_STREAM); 
 
unless($target) { return; } 
 
$target->autoflush(); 
while($client || $target) { 
 my $rin = ""; 
 vec($rin, fileno($client), 1) = 1 if $client; 
 vec($rin, fileno($target), 1) = 1 if $target; 
 my($rout, $eout); 
 select($rout = $rin, undef, $eout = $rin, 120); 
 if (!$rout  !$eout) { return; } 
 my $cbuffer = ""; 
 my $tbuffer = ""; 
 
 if ($client  (vec($eout, fileno($client), 1) || vec($rout, fileno($client), 1))) { 
 my $result = sysread($client, $tbuffer, 1024); 
 if (!defined($result) || !$result) { return; } 
 } 
 
 if ($target  (vec($eout, fileno($target), 1) || vec($rout, fileno($target), 1))) { 
 my $result = sysread($target, $cbuffer, 1024); 
 if (!defined($result) || !$result) { return; } 
 } 
 
 if ($fh  $tbuffer) { print $fh $tbuffer; } 
 
 while (my $len = length($tbuffer)) { 
 my $res = syswrite($target, $tbuffer, $len); 
 if ($res > 0) { $tbuffer = substr($tbuffer, $res); } else { return; } 
 } 
 
 while (my $len = length($cbuffer)) { 
 my $res = syswrite($client, $cbuffer, $len); 
 if ($res > 0) { $cbuffer = substr($cbuffer, $res); } else { return; } 
 } 
} 
} 
 
sub socks_bind { 
my($client, $host, $port) = @_; 
} 
 
sub socks_udp_associate { 
my($client, $host, $port) = @_; 
}
您可能感興趣的文章:
  • linux下開(kāi)啟php的sockets擴(kuò)展支持實(shí)例
  • Linux下高并發(fā)socket最大連接數(shù)所受的各種限制(詳解)
  • 詳解Linux的SOCKET編程
  • C語(yǔ)言實(shí)現(xiàn)Linux下的socket文件傳輸實(shí)例
  • Linux網(wǎng)絡(luò)編程之UDP Socket程序示例
  • Linux網(wǎng)絡(luò)編程之socket文件傳輸示例
  • linux socket通訊獲取本地的源端口號(hào)的實(shí)現(xiàn)方法

標(biāo)簽:合肥 周口 周口 淮安 綏化 綿陽(yáng) 秦皇島 百色

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Perl實(shí)現(xiàn)的Linux下socket代理服務(wù)器》,本文關(guān)鍵詞  Perl,實(shí)現(xiàn),的,Linux,下,socket,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Perl實(shí)現(xiàn)的Linux下socket代理服務(wù)器》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Perl實(shí)現(xiàn)的Linux下socket代理服務(wù)器的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产日韩影视精品| 日韩精品自拍偷拍| 成人免费毛片高清视频| 国产一区二区在线观看免费| 黄色资源网久久资源365| 韩国一区二区视频| 国产乱码字幕精品高清av | 7777精品伊人久久久大香线蕉经典版下载 | 最新国产精品久久精品| 亚洲国产精品成人综合| 成人欧美一区二区三区小说| 亚洲女同女同女同女同女同69| 亚洲欧美日韩在线| 亚洲成人免费视| 麻豆精品久久久| 国产盗摄女厕一区二区三区 | 久久99精品国产麻豆婷婷洗澡| 麻豆一区二区三| 国产剧情一区二区三区| 色综合久久久久| 欧美日韩国产不卡| 久久久久9999亚洲精品| 中文字幕日韩av资源站| 亚洲最新视频在线观看| 麻豆一区二区三| 成人精品视频网站| 欧美肥妇free| 日本一区二区三区四区| 亚洲精品欧美综合四区| 极品瑜伽女神91| av网站免费线看精品| 7777精品伊人久久久大香线蕉超级流畅 | 51精品秘密在线观看| 精品福利一二区| 一区二区三区免费| 国产做a爰片久久毛片| 欧美视频自拍偷拍| 久久夜色精品国产噜噜av| 亚洲人成7777| 国产麻豆视频一区| 欧美人狂配大交3d怪物一区| 久久九九久久九九| 秋霞午夜鲁丝一区二区老狼| 99麻豆久久久国产精品免费优播| 欧美一二三区在线| 亚洲欧美日韩久久| 国产成人在线电影| 7777精品久久久大香线蕉| 亚洲女与黑人做爰| 国产 日韩 欧美大片| 日韩欧美电影一二三| 亚洲综合精品自拍| caoporen国产精品视频| 久久午夜电影网| 久久99精品久久只有精品| 欧美亚洲图片小说| 亚洲黄网站在线观看| aaa国产一区| 欧美国产日韩一二三区| 紧缚奴在线一区二区三区| 91精品国产综合久久蜜臀| 亚洲国产日韩a在线播放性色| 色偷偷88欧美精品久久久| 国产精品美女久久久久aⅴ| 国产综合成人久久大片91| 日韩精品一区二区三区在线播放 | 亚洲国产精品v| 国产91丝袜在线播放九色| 久久综合九色综合欧美亚洲| 黄页网站大全一区二区| 欧美精品一区男女天堂| 国内成人精品2018免费看| 欧美成人高清电影在线| 久久国产综合精品| 精品va天堂亚洲国产| 国产一二精品视频| 久久久91精品国产一区二区精品| 国产精品自拍三区| 国产日韩精品一区二区三区| 成人av在线网站| 综合自拍亚洲综合图不卡区| 99re成人精品视频| 亚洲国产日韩a在线播放性色| 欧美日韩在线观看一区二区| 性欧美大战久久久久久久久| 欧美电视剧在线看免费| 国产99精品国产| 一区二区三区小说| 欧美一区二区免费视频| 国产精品538一区二区在线| 国产精品久久久久久妇女6080 | 国产日韩精品一区二区三区| 国产日韩影视精品| 自拍偷拍欧美精品| 天堂va蜜桃一区二区三区漫画版| 日本视频在线一区| 国产精品一区在线观看你懂的| 欧美日韩国产首页| 欧美一级一区二区| 国产午夜精品福利| 亚洲国产一区二区a毛片| 美女视频一区二区| 播五月开心婷婷综合| 欧美日韩在线播放一区| 精品成人私密视频| 亚洲精品久久久久久国产精华液| 青青国产91久久久久久| 成人aaaa免费全部观看| 欧美日本国产一区| 中文字幕不卡一区| 婷婷久久综合九色综合伊人色| 国产精选一区二区三区| 欧美日韩一区三区| 国产欧美精品区一区二区三区 | 91精品国产91久久久久久最新毛片 | 亚洲欧洲av色图| 日韩av一区二区三区四区| 国产成人自拍网| 在线电影一区二区三区| 国产精品三级av在线播放| 免费成人在线网站| 色一区在线观看| www久久久久| 日日夜夜免费精品| 99国产精品久久久久久久久久| 精品国产亚洲一区二区三区在线观看| 中文字幕五月欧美| 黑人巨大精品欧美一区| 欧美在线999| 亚洲日本在线观看| 国产成人免费在线观看不卡| 这里只有精品99re| 亚洲欧美日本在线| 成人精品一区二区三区中文字幕| 欧美一区二区三区爱爱| 一二三区精品视频| 91丨九色丨蝌蚪丨老版| 国产亚洲精品bt天堂精选| 蜜臀国产一区二区三区在线播放| 在线欧美日韩国产| 亚洲欧洲美洲综合色网| 国产a久久麻豆| 久久欧美中文字幕| 精品一区二区三区视频| 9191久久久久久久久久久| 亚洲免费资源在线播放| 9色porny自拍视频一区二区| 精品国产麻豆免费人成网站| 日韩黄色小视频| 欧美日韩国产一级片| 亚洲福利一区二区三区| 欧洲一区在线电影| 一区二区三区欧美日| 99国产麻豆精品| 成人深夜在线观看| 成人美女视频在线观看| 另类的小说在线视频另类成人小视频在线 | 欧美极品美女视频| 日本午夜精品视频在线观看| 91国产成人在线| 一区二区三区在线看| 色婷婷综合中文久久一本| 一区二区三区在线播放| 亚洲精品在线一区二区| 久久久三级国产网站| 日韩美女视频一区| 五月天一区二区| 精品一区二区久久| 国产精品18久久久久久久久| 91网站在线观看视频| 制服丝袜一区二区三区| 国产午夜一区二区三区| 亚洲免费在线看| 麻豆国产精品视频| 91小视频免费观看| 欧美一区二区三区的| 国产精品你懂的| 亚洲最大色网站| 在线欧美日韩国产| 亚洲综合在线第一页| 美女性感视频久久| 成人av电影在线网| 欧美精品一二三四| 亚洲欧洲www| 久久精品国产一区二区三区免费看 | 国产精品三级电影| 日韩高清在线电影| www.一区二区| 欧美www视频| 亚洲国产wwwccc36天堂| 国产成人午夜高潮毛片| 欧美色手机在线观看| 国产亚洲综合性久久久影院| 一区二区三区高清| 国产成人丝袜美腿| 欧美大片在线观看| 亚洲国产精品一区二区尤物区| 成人一道本在线| 精品国产91久久久久久久妲己 | 天堂一区二区在线|