青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

   

1CM

  

UDP穿透Socks5代理

????SOCKS5 代理協(xié)議是他人定的,要編寫程序首先必須了解其協(xié)議規(guī)則。所以先必須仔細地閱讀rfc1928。這樣對能夠編寫socket程序員來講是易如反掌。本文是專門面對SOCKS5 UDP(無驗證方式)

/*
Test Socks5 UDP proxy
Write by nenlong
http://newnan.8u8.com
mail:nnelong@tom.com
At Yanji 2004.2.26
send 5 0
recv 5 0

send 5 3 0 1 IP(4) Port(2)
recv 5 0 0 1 IP(4) Port(2)

data 0 0 0 1 IP(4) Port(2) DATA

UDP ASSOCIATE
The UDP ASSOCIATE request is used to establish an association within
the UDP relay process to handle UDP datagrams. The DST.ADDR and
DST.PORT fields contain the address and port that the client expects
to use to send UDP datagrams on for the association. The server MAY
use this information to limit access to the association. If the
client is not in possesion of the information at the time of the UDP
ASSOCIATE, the client MUST use a port number and address of all zeros.

If the reply code (REP value of X'00') indicates a success, and the
request was either a BIND or a CONNECT, the client may now start
passing data.

*/
#include "StdAfx.h"
#include "winsock2.h"
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
void closesocks(SOCKET s);
int senddata(char *data,int isize,sockaddr_in sa);//UDP
#pragma comment (lib,"ws2_32.lib")
char szMyIP[20];
char szProxyIP[20];
char szMsg[50];
int isc;
void main(void)
{
// 開始使用ws2_32.dll
sprintf(szProxyIP,"192.168.0.1");

WSADATA wsaData;
int iRetVal,i;
iRetVal = WSAStartup ( MAKEWORD ( 1,1 ), &wsaData );
if ( 0 != iRetVal)
{
printf("WSAStartup %d", iRetVal );
return;
}
printf("WSAStartup [OK]\n");


//取得主機名稱
char szhostname[128];
if(SOCKET_ERROR ==gethostname(szhostname,128))
{
printf("gethostname %X\n",WSAGetLastError());
return;
}
printf("hostname %s[OK]\n",szhostname);

struct hostent FAR * lps;
lps=gethostbyname(szhostname);
if(lps==NULL)
{
printf("gethostbyname error\n");
}
else
{
IN_ADDR ia;
memcpy(&ia,lps->h_addr_list[0],4);
sprintf(szMyIP,"%s",inet_ntoa (ia));
printf(" addr:%s\n",szMyIP);
}

//建立socket
//AF_INET ---->to AF_INET for IPv4 addressing
//SOCK_STREAM --->TCP
SOCKET s;
s=socket(AF_INET,SOCK_STREAM,0);
if(s==INVALID_SOCKET)
{
printf("socket %X\r",WSAGetLastError());
closesocket(s);
return;
}
printf("socket TCP [OK]\n");
sockaddr_in sa;
sa.sin_family=AF_INET;
sa.sin_port=htons(1080); //Port
sa.sin_addr.s_addr= inet_addr(szProxyIP); //IP

//建立連接 到代理服務(wù)器
iRetVal=connect (s,(SOCKADDR*)&sa,sizeof(sockaddr_in));
if(iRetVal==SOCKET_ERROR)
{
printf ("connect %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("connect %s %d[OK]\n",szProxyIP,1080);
//請求無驗證
char buff[255];
buff[0]=5;buff[1]=0;
iRetVal=send(s,buff,2,0);
if(iRetVal==SOCKET_ERROR)
{
printf ("send 50 %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Send 5 0 [OK]\n");
memset(buff,0,4);
printf("Recv ");
iRetVal=recv(s,buff,4,0);
printf("%02X %02X %02X %02X [OK]\n",buff[0],buff[1],buff[2],buff[3]);

//返回 5 0 請求成功
if(buff[0]!=5 || buff[1]!=0)
{
printf ("not proxy service\n");
closesocket(s);
return;
}

printf("find proxy server[OK]\n");

//報文10字節(jié)

buff[0]=5; //Ver
buff[1]=3; //UDP
buff[2]=0;
buff[3]=1; //IP V4 address
buff[4]=(unsigned char)0;
buff[5]=(unsigned char)0;
buff[6]=(unsigned char)0;
buff[7]=(unsigned char)0;
buff[8]=(unsigned char)0;
buff[9]=(unsigned char)0;


//發(fā)送報文
iRetVal=send(s,buff,10,0);
if(iRetVal==SOCKET_ERROR)
{
printf ("send 530100001388 %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Send 05 03 00 01 00 00 00 00 00 00 [OK]\n");
memset(buff,0,10);
iRetVal=recv(s,buff,10,0);
if(iRetVal==SOCKET_ERROR)
{
printf ("recv %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Recv ");
for(i=0;i<10;i++)
printf ("%02X ",(unsigned char)buff[i]);
printf("[OK]\n");
if(buff[0]!=5 || buff[1]!=0)
{
printf ("not UDP proxy service\n");
closesocket(s);
return;
}

char szIP[20];
sprintf(szIP,"%d.%d.%d.%d",
(unsigned char)buff[4],
(unsigned char)buff[5],
(unsigned char)buff[6],
(unsigned char)buff[7]);
int port;
port=(buff[8]<<8)+buff[9];
Sleep(500);
printf("UDP Proxy Add:%s Port:%d\nPress any key Send ...\n",szIP,port);
getch();
isc=0;
int ikey;
while((ikey=getch())!=0x1b)
{
//send data
sockaddr_in sato;
sato.sin_family=AF_INET;
sato.sin_port=htons(port);
sato.sin_addr.s_addr= inet_addr(szIP);

buff[0]=0; //RSV
buff[1]=0; //RSV
buff[2]=0; //FRAG
buff[3]=1; //IPV4
buff[4]=(unsigned char)192;
buff[5]=(unsigned char)168;
buff[6]=(unsigned char)0;
buff[7]=(unsigned char)1;
buff[8]=(unsigned char)0x13;
buff[9]=(unsigned char)0x88;//5000

isc++;
if(isc>50)isc=0;
if(ikey==17) //ctrl+Q
sprintf(szMsg,"Q");
else
sprintf(szMsg,"Hello SOCKS5 (UDP) %d ",isc);

for(i=0;i<(int)strlen(szMsg);i++)
{
buff[10+i]=szMsg[i];
}
buff[10+i]=0;

senddata(buff,10+strlen(szMsg)+1,sato);

if(iRetVal==SOCKET_ERROR)
{
printf ("send data %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Press ESC key to exit Ctrl+Q Close RECV5000 Windows\n");
}
closesocket(s);
return;
}

void closesocks(SOCKET s)
{
closesocket(s);
WSACleanup();
}

int senddata(char *data,int isize,sockaddr_in sa)
{
int ret,i;
SOCKET s;
s=socket(AF_INET,SOCK_DGRAM,0);
ret=connect(s,(SOCKADDR*)&sa,sizeof(sockaddr_in));
if(ret==SOCKET_ERROR)
{
printf("UDP connect %X\n",ret);
closesocket(s);
return ret;
}
printf("UDP Send IP:%s Port:%d\nSend ",inet_ntoa (sa.sin_addr),ntohs (sa.sin_port));
for(i=0;i<isize;i++)
printf("%02X ",(unsigned char)data[i]);
printf("\n\n");
ret=send(s,data,isize,0);
closesocket(s);
return ret;
}


  以上即關(guān)于UDP穿透Socks5代理(無驗證)的一點心得,希望能夠得到大家的指正。

posted on 2007-03-13 10:32 1CM 閱讀(3026) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            在线观看亚洲精品| 在线天堂一区av电影| 最新国产拍偷乱拍精品| 伊伊综合在线| 激情久久久久久久久久久久久久久久| 国产精品伦子伦免费视频| 国产精品a久久久久久| 欧美午夜影院| 国产午夜精品在线| 激情成人av在线| 亚洲国产婷婷香蕉久久久久久| 在线播放国产一区中文字幕剧情欧美| 影音先锋在线一区| 亚洲欧洲精品一区| 99国产精品久久久久老师| 亚洲视频精选| 久久久久国产精品厨房| 欧美激情精品久久久久久黑人 | 欧美一区二区三区免费看| 久久国产精品亚洲77777| 欧美凹凸一区二区三区视频| 欧美日本国产| 国产一级一区二区| 亚洲麻豆视频| 久久久国产视频91| 亚洲精品美女91| 99视频精品免费观看| 欧美在线一区二区三区| 欧美福利视频| 好吊一区二区三区| 一本色道久久88亚洲综合88| 久久久亚洲影院你懂的| 日韩视频在线免费观看| 欧美一区二区三区日韩| 男同欧美伦乱| 国产乱码精品一区二区三区不卡| 精品二区久久| 一区二区冒白浆视频| 亚洲二区免费| 欧美一区二区三区免费观看视频 | 亚洲欧美三级在线| 亚洲精品久久| 欧美精品久久久久久| 亚洲激情电影在线| 欧美大片在线观看| 毛片基地黄久久久久久天堂| 亚洲国产精品第一区二区三区| 鲁大师影院一区二区三区| 久久亚洲精品伦理| 亚洲欧洲精品一区| 国产乱码精品一区二区三区五月婷| 国产欧美日韩一区二区三区| 亚洲国产精品福利| 香蕉成人伊视频在线观看| 欧美韩日精品| 欧美激情影院| 亚洲欧美日韩中文播放| 欧美日韩mp4| 国产一区二区三区久久悠悠色av| 日韩网站免费观看| 麻豆成人在线观看| 亚洲亚洲精品在线观看| 欧美激情免费在线| 伊人成人在线| 久久福利资源站| 中日韩视频在线观看| 欧美国产精品一区| 国产精品大片| 国产精品99久久久久久人| 欧美激情1区2区| 久久久久国产精品午夜一区| 国产精品综合久久久| 亚洲综合成人在线| 亚洲欧洲日产国产网站| 欧美阿v一级看视频| 91久久夜色精品国产网站| 一区二区三区日韩精品| 亚洲黄色天堂| 欧美波霸影院| 亚洲伦理在线观看| 狂野欧美性猛交xxxx巴西| 一区二区三区日韩| 久久激情五月激情| 国产中文一区二区| 久久福利资源站| 亚洲欧美国产高清va在线播| 欧美性感一类影片在线播放 | 91久久精品国产91久久| 欧美a级一区二区| 亚洲黄网站在线观看| 欧美国产日韩免费| 亚洲欧美日韩直播| 中文在线一区| 国产精品狼人久久影院观看方式| 在线视频亚洲| 久久精品国产免费| 亚洲激情电影中文字幕| 欧美二区乱c少妇| 欧美激情第8页| 国产一级揄自揄精品视频| 欧美调教vk| 久久国产精品久久久| 亚洲尤物视频在线| 老司机一区二区三区| 欧美激情在线狂野欧美精品| 亚洲国产老妈| 国产美女精品视频| 欧美资源在线| 裸体女人亚洲精品一区| 亚洲小视频在线观看| 国产精品视频大全| 欧美一区网站| 欧美日本乱大交xxxxx| 一区二区国产在线观看| 久久精品国产综合精品| 欧美日韩综合在线免费观看| 欧美一区二区免费观在线| 欧美午夜三级| 宅男精品视频| 欧美激情综合在线| 国产精品亚洲人在线观看| 亚洲视频你懂的| 蜜臀91精品一区二区三区| 美女脱光内衣内裤视频久久影院 | 亚洲国产精品久久久久婷婷884 | 洋洋av久久久久久久一区| 一本色道久久| 欧美视频日韩视频在线观看| 亚洲乱码国产乱码精品精| 极品尤物一区二区三区| 久久精品视频在线观看| 久久这里有精品视频| 一本久道综合久久精品| 欧美大片91| 美女免费视频一区| 欧美福利一区二区| 欧美在线免费视屏| 亚洲在线观看免费视频| 国产精一区二区三区| 亚洲欧美一区二区三区在线| 久久久99精品免费观看不卡| 国产综合色在线| 欧美**人妖| 夜夜爽av福利精品导航 | 欧美黑人一区二区三区| 99精品欧美一区二区三区| 国产精品高潮呻吟视频| 欧美一级二级三级蜜桃| 女人色偷偷aa久久天堂| 99国产精品自拍| 国产精品一区二区女厕厕| 午夜精品一区二区三区在线| 欧美电影在线播放| 激情亚洲成人| 国内在线观看一区二区三区| 美女主播视频一区| 老色鬼精品视频在线观看播放| 久久精品国产精品亚洲| 欧美电影美腿模特1979在线看| 亚洲视频在线一区观看| 国产美女一区| 黄色成人在线网址| 国产精品视频久久一区| 国产日韩欧美在线| 亚洲美女色禁图| 欧美福利在线| 免费看精品久久片| 国产精品久久久对白| 免费视频一区二区三区在线观看| 国产一区二区黄| 国产一区二区三区四区三区四| 亚洲美女av电影| 国产精品三上| 久久国产一区二区| 亚洲精品乱码久久久久久日本蜜臀 | 欧美gay视频| 午夜精品亚洲| 久久激情视频免费观看| 欧美中文在线免费| 久久精品中文字幕一区| 亚洲欧美日韩成人高清在线一区| 欧美在线|欧美| 久久久久国产一区二区三区四区 | 国产嫩草影院久久久久| 亚洲国产精品一区在线观看不卡| 亚洲区一区二| 亚洲人成77777在线观看网| 欧美1区2区3区| 久久精品一区四区| 亚洲毛片在线观看| 欧美日韩国产色视频| 久久亚洲影院| 9l视频自拍蝌蚪9l视频成人| 欧美电影免费观看| 亚洲免费视频一区二区| 欧美中文字幕在线观看| 日韩亚洲一区二区| 国产亚洲精品资源在线26u| 久久久久久9999| 亚洲欧美激情视频在线观看一区二区三区|