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

   

1CM

  

UDP穿透Socks5代理

????SOCKS5 代理協議是他人定的,要編寫程序首先必須了解其協議規則。所以先必須仔細地閱讀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

//建立連接 到代理服務器
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字節

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;


//發送報文
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;
}


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

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


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   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在线| 亚洲一区二区免费在线| 日韩视频一区二区在线观看| 亚洲国产成人porn| 亚洲经典自拍| 夜夜精品视频| 美国十次成人| 欧美午夜久久久| 国产欧美综合一区二区三区| 国产精品久久999| 国产午夜精品理论片a级大结局| 国产精品日韩欧美综合| 亚洲大片av| 亚洲综合电影| 欧美一区二区在线免费播放| 麻豆av一区二区三区久久| 亚洲精品乱码久久久久| 久久九九久精品国产免费直播 | 中文亚洲字幕| 久久久水蜜桃| 一本色道久久99精品综合 | 亚洲精品免费一区二区三区| 亚洲主播在线| 亚洲精品中文字幕有码专区| 久久激情五月婷婷| 国产精品第2页| av成人国产| 亚洲激情网站免费观看| 久久婷婷激情| 一区二区自拍| 欧美成年人视频| 久久午夜影视| 亚洲国产日韩在线一区模特| 老司机精品视频一区二区三区| 一区二区电影免费观看| 欧美日韩中文字幕综合视频| 亚洲日韩欧美视频| 亚洲高清123| 欧美性色aⅴ视频一区日韩精品| 亚洲综合国产精品| 欧美伊人久久久久久久久影院| 国产精品欧美精品| 久久精品国产精品亚洲综合| 欧美专区日韩专区| 亚洲精品视频在线播放| 亚洲欧美日本国产有色| 在线国产亚洲欧美| 99国产精品久久久| 黄网动漫久久久| 亚洲免费av片| 在线电影国产精品| 午夜精品久久久久久久蜜桃app| 黄色小说综合网站| 亚洲欧洲精品成人久久奇米网| 亚洲福利视频网| 国产精品久久二区| 亚洲久久一区二区| 99国产精品一区| 久久青草久久| 欧美电影免费观看高清完整版| 国产精品久久久久久久久久免费 | 亚洲人成在线播放网站岛国| 欧美日韩一区二区精品| 欧美激情视频免费观看| 国产农村妇女精品| 亚洲欧美综合国产精品一区| 亚洲主播在线| 国产精品无码专区在线观看| 亚洲精品1区2区| 91久久香蕉国产日韩欧美9色 | 免费观看久久久4p| 国产欧美精品xxxx另类| 午夜欧美大片免费观看| 久久精品日韩欧美| 在线观看91精品国产麻豆| 久久国产欧美| 欧美国产日本| 亚洲色图制服丝袜| 国产精一区二区三区| 久久久av水蜜桃| av不卡在线观看| 久久爱另类一区二区小说| 国产精品美女www爽爽爽视频| 亚洲色图自拍| 国产日韩av高清| 米奇777超碰欧美日韩亚洲| 亚洲美女在线观看| 久久精品亚洲国产奇米99| 亚洲日韩欧美视频一区| 欧美午夜精品一区二区三区| 欧美中文字幕视频| 欧美成人综合在线| 欧美在线观看天堂一区二区三区| 在线观看中文字幕亚洲| 欧美日韩国产精品专区| 久久久在线视频| 午夜视频久久久| 一区二区成人精品| 亚洲茄子视频| 亚洲人成小说网站色在线| 久久这里只有| 久久手机免费观看| 久久琪琪电影院| 久久一区二区三区国产精品 | 国产精品免费网站在线观看| 久久精品国产精品亚洲精品| 亚洲欧美偷拍卡通变态| 99国产一区二区三精品乱码| 亚洲二区视频在线| 亚洲精品少妇| 一区二区三区国产在线观看| 亚洲国产美女| 亚洲精品乱码视频| 亚洲视频网在线直播| 亚洲另类自拍| 欧美亚洲日本国产| 久久久久久久成人| 蜜桃av一区二区在线观看| 欧美成人激情在线| 欧美精品 国产精品| 国产精品成人午夜| 国产一区二区三区免费不卡| 亚洲高清在线播放| 999亚洲国产精| 久久国产欧美| 欧美日韩视频一区二区| 国产性猛交xxxx免费看久久| 亚洲电影在线播放| 欧美诱惑福利视频| 亚洲精品日韩欧美| 久久夜色精品国产亚洲aⅴ| 国产精品扒开腿爽爽爽视频 | 亚洲日本久久| 西西裸体人体做爰大胆久久久| 久久综合九色九九| 一区二区三区福利| 免费永久网站黄欧美| 国产情人综合久久777777| 亚洲三级电影全部在线观看高清| 欧美一区二区视频在线观看2020| 亚洲娇小video精品| 免费成年人欧美视频| 国产综合视频| 久久视频在线视频| 久久国产精品99精品国产| 国产精品久久久久久久一区探花| 亚洲精品偷拍| 亚洲高清一区二区三区| 欧美激情一区二区在线| 亚洲精品久久久久久久久久久| 久久久不卡网国产精品一区| 午夜欧美理论片| 国产欧美日韩三区| 久久婷婷综合激情| 欧美成人黑人xx视频免费观看| 亚洲韩国日本中文字幕| 欧美高清视频一区| 欧美日韩另类一区| 欧美怡红院视频| 久久久久久久综合狠狠综合| 亚洲第一精品夜夜躁人人躁| 亚洲国产高清在线| 国产精品日韩一区二区| 欧美日韩性生活视频| 欧美一区1区三区3区公司| 久久国产精品久久精品国产| 亚洲欧洲精品一区二区精品久久久| 亚洲欧洲一区二区在线播放| 欧美日韩一区二区三区高清| 午夜在线精品偷拍| 欧美成人首页| 美女精品自拍一二三四| 欧美亚州在线观看| 欧美成人精品1314www| 国产精品v日韩精品v欧美精品网站| 久久久999| 国产精品欧美一区喷水| 亚洲美女中出| 亚洲精品一区二区三区在线观看| 亚洲影院免费| 亚洲欧美日韩精品久久奇米色影视| 久久国产主播| 久久国产福利| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲一区二区三区乱码aⅴ蜜桃女| 亚洲伦理精品| 欧美日韩国产综合新一区| 亚洲电影视频在线| 国内精品久久久久影院 日本资源 国内精品久久久久伊人av | 亚洲精品影院| 日韩小视频在线观看专区| 欧美96在线丨欧| 最新日韩在线| 亚洲天堂av在线免费| 国产精品白丝黑袜喷水久久久| 欧美激情自拍| 99精品国产在热久久| 国产精品综合|