亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sock5.htm

?? 如何快速有效實現Sock5代理
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
?<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="keywords" content="" />
<meta name="description" content="Author:zfive5(zhaozidong)Email :zfive5@yahoo.com.cn 前些時間,以前同事叫我幫忙寫一個upd下的sock5代理,由于一些原因沒有幫成他的忙,我在這里再次對他說抱歉! 關于sock5代理的.." />
<title>UDP下的SOCK5代理實現
</title>
<link href="/page/images/style.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" src="/page/images/fun.js"></script>
</head>
<body>

<div id="main">
<h1>UDP下的SOCK5代理實現
</h1>
<p id="drn">Author:zfive5(zhaozidong)Email :zfive5@yahoo.com.cn 前些時間,以前同事叫我幫忙寫一個upd下的sock5代理,由于一些原因沒有幫成他的忙,我在這里再次對他說抱歉! 關于sock5..</p>
<div id="content"><div id="googlead"><script type="text/javascript"><!--
google_ad_client = "pub-8451177669974482";
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = "300x250_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div><P>Author:zfive5(zhaozidong)<BR>Email :zfive5@yahoo.com.cn</P>
<P>&nbsp;&nbsp;&nbsp; 前些時間,以前同事叫我幫忙寫一個upd下的sock5代理,由于一些原因<BR>沒有幫成他的忙,我在這里再次對他說抱歉! 關于sock5代理的包文和數據<BR>格式可以參考以下url中的內容:<BR>&nbsp; http://www.vckbase.net/document/viewdoc/?id=853<BR>&nbsp; http://www.vckbase.net/document/viewdoc/?id=852<BR>&nbsp; http://www.china-pub.com/computers/eMook/emooknew/rfctxt/RFC1928.txt</P>
<P><BR>&nbsp;&nbsp;&nbsp; 牙看來還是拔不了呀!醫院的口腔科星期天居然沒有人!!!大早晨在公交車<BR>上一來一回8圓錢啊!</P>
<P>upd Sock5代理下的包數據:</P>
<P>&nbsp;client:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ver( 1 byte)+num method( 1 byte)+ methods(1 -255 byte)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (05 02 00 02)</P>
<P>&nbsp;server:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ver( 1 byte)+ num method(1 byte)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (05 00 ) or ( 05 02)</P>
<P>&nbsp;*client( 當返回 02 時):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ver(1&nbsp; byte)+ name len(1 byte) +name (1-255 byte) +pass len(1 byte)+password(1 -255 byte)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ( 01 01 61 01 61) </P>
<P>&nbsp;*server( 當返回 02 時):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ver(1 byte)+status(1 byte)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (05 00&nbsp; )or (05 XX)</P>
<P>&nbsp; client:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ver( 1 byte)+cmd(1 byte)+rsv( 1 byte)+address type( 1 byte)+ addrss( ?? byte) +port( 2 byte)</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (05 03 00 01 7f 00 00 01 0f A0)</P>
<P>&nbsp; server:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ver(1 byte)+reponse(1 byte)+rsv(1 byte)+address type(1 byte)+address(?? byte)+port( 2 byte)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (05 00 00 01 7f 00 00 01 0f A0)</P>
<P>&nbsp; client:<BR>&nbsp;&nbsp;&nbsp;&nbsp; rsv (2 byte) + fragment( 1 byte)+ address type (1 byte)+ addr(?? byte)+ port( 2 byte) +data(??)<BR>&nbsp;&nbsp;&nbsp;&nbsp; (00 00 00 01 7f 00 00 01 0f a0 .....)<BR>&nbsp; server:<BR>&nbsp;&nbsp;&nbsp;&nbsp; rsv (2 byte) + fragment( 1 byte)+ address type (1 byte)+ addr(?? byte)+ port( 2 byte) +data(??)<BR>&nbsp;&nbsp;&nbsp;&nbsp; (00 00 00 01 7f 00 00 01 0f a0 .....)<BR>&nbsp;&nbsp; ....</P>
<P>test server代碼:<BR>&nbsp;&nbsp;&nbsp; <BR>SOCKET s=socket(AF_INET,SOCK_DGRAM,0);<BR>if(s==INVALID_SOCKET)<BR>&#123;<BR>&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp; return 0;<BR>&#125;<BR>struct sockaddr_in addr;<BR>addr.sin_family=AF_INET;<BR>addr.sin_addr.s_addr=ADDR_ANY;<BR>addr.sin_port=htons(4000);<BR>if(bind(s,(struct sockaddr *)&amp;addr,sizeof(struct sockaddr))==SOCKET_ERROR)<BR>&#123;<BR>&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp; return 0;<BR>&#125;</P>
<P>while(1==1)<BR>&#123;<BR>&nbsp;&nbsp; char sz_buf[1024];<BR>&nbsp;&nbsp; struct sockaddr in;<BR>&nbsp;&nbsp; int&nbsp;&nbsp;&nbsp; n_len=sizeof(struct sockaddr);<BR>&nbsp;&nbsp; if(recvfrom(s,sz_buf,1024,0,(struct sockaddr *)&amp;in,&amp;n_len)==SOCKET_ERROR)<BR>&nbsp;&nbsp; &#123;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;<BR>&nbsp;&nbsp; &#125;</P>
<P>&nbsp;&nbsp; if(sendto(s,"Hello World",strlen("Hello World"),0,(struct sockaddr *)&amp;in,sizeof(struct sockaddr_in))==SOCKET_ERROR)<BR>&nbsp;&nbsp; &#123;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; closesocket(s); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;<BR>&nbsp;&nbsp; &#125;<BR>&#125;</P>
<P>closesocket(s);<BR>return 0;</P>
<P><BR>test client:</P>
<P>SOCKET s=socket(AF_INET,SOCK_DGRAM,0);<BR>if(s==INVALID_SOCKET)<BR>&#123;<BR>&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp; return;<BR>&#125;</P>
<P>struct sockaddr_in addr1;<BR>addr1.sin_family=AF_INET;<BR>addr1.sin_addr.s_addr=ADDR_ANY;<BR>addr1.sin_port=htons(4001);<BR>if(bind(s,(struct sockaddr *)&amp;addr1,sizeof(struct sockaddr_in))==SOCKET_ERROR)<BR>&#123;<BR>&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp; return;<BR>&#125;</P>
<P>zf5_sock5_udp udp;<BR>strcpy(udp.m_sz_name,"a");<BR>strcpy(udp.m_sz_pass,"a");<BR>if(udp.connect_sock5_udp("127.0.0.1",1080,&amp;addr1)&lt;0)<BR>&#123;<BR>&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp; return;<BR>&#125;</P>
<P>struct sockaddr_in addr2;<BR>addr2.sin_family=AF_INET;<BR>addr2.sin_addr.s_addr=inet_addr("127.0.0.1");<BR>addr2.sin_port=htons(4000);<BR>if(udp.send_sock5_udp(s,"hello",strlen("hello"),&amp;addr2)&lt;0)<BR>&#123;<BR>&nbsp; closesocket(s);<BR>&nbsp; return;<BR>&#125;</P>
<P>char sz_buf[1024]="";<BR>memset(sz_buf,0,1024);<BR>struct sockaddr_in addr3;<BR>if(udp.recv_sock5_udp(s,sz_buf,&amp;addr3)&lt;0)<BR>&#123;<BR>&nbsp;&nbsp; closesocket(s);<BR>&nbsp;&nbsp; return;<BR>&#125;</P>
<P>AfxMessageBox(sz_buf);<BR>return;</P>
<P><BR>zf5_sock5_udp.h文件:</P>
<P>#pragma once<BR>#pragma comment(lib,"ws2_32.lib")</P>
<P>#include &lt;winsock2.h&gt;<BR>#define ZF5_BUFFER_SIZE1 255<BR>#define ZF5_BUFFER_SIZE2 1024<BR>#define ZF5_BUFFER_SIZE3 8192<BR>class zf5_sock5_udp<BR>&#123;<BR>public:</P>
<P>&nbsp; //構造函數<BR>&nbsp; zf5_sock5_udp(void);</P>
<P>&nbsp; //析構函數<BR>&nbsp; virtual ~zf5_sock5_udp(void);</P>
<P>&nbsp; //創建sock5的upd代理<BR>&nbsp; int&nbsp; connect_sock5_udp(char *sz_addr_proxy,int n_port_proxy,struct sockaddr_in *p_addr);</P>
<P>&nbsp; //通過sock5發送udp數據<BR>&nbsp; int&nbsp; send_sock5_udp(int s_udp,char *sz_buf,int n_len,struct sockaddr_in *p_addr);</P>
<P>&nbsp; //通過sock5接收udp數據<BR>&nbsp; int&nbsp; recv_sock5_udp(int s_udp,char *sz_buf,struct sockaddr_in *p_addr);<BR>&nbsp; <BR>&nbsp; //關閉sock5的udp代理<BR>&nbsp; int&nbsp; close_sock5_udp();<BR>&nbsp; <BR>&nbsp; //代理服務器用戶名稱<BR>&nbsp; char m_sz_name[ZF5_BUFFER_SIZE1+2];<BR>&nbsp; <BR>&nbsp; //代理服務器用戶密碼<BR>&nbsp; char m_sz_pass[ZF5_BUFFER_SIZE1+2];</P>
<P>private:<BR>&nbsp; //遠端udp服務器地址<BR>&nbsp; char m_sz_udp_srv[ZF5_BUFFER_SIZE2+2];<BR>&nbsp; <BR>&nbsp; //遠端udp服務器端口<BR>&nbsp; int&nbsp; m_n_port;<BR>&nbsp; <BR>&nbsp; //地址類型<BR>&nbsp; int&nbsp; m_n_addrtype;<BR>&nbsp; <BR>&nbsp; //sock5代理的tcp連接<BR>&nbsp; int&nbsp; m_n_sock5;<BR>&#125;;</P>
<P>zf5_sock5_udp.cpp文件:</P>
<P><BR>#include "stdafx.h"<BR>#include ".\zf5_sock5_udp.h"</P>
<P>//構造函數<BR>zf5_sock5_udp::zf5_sock5_udp(void)<BR>&#123;<BR>&nbsp;WSADATA wsa;<BR>&nbsp;WSAStartup(MAKEWORD(1,1),&amp;wsa);<BR>&nbsp;m_n_addrtype=-1;<BR>&nbsp;m_n_port=0;<BR>&nbsp;m_n_sock5=INVALID_SOCKET;<BR>&nbsp;m_sz_name[0]=0;<BR>&nbsp;m_sz_pass[0]=0;<BR>&nbsp;m_sz_udp_srv[0]=0;</P>
<P>&#125;</P>
<P>//析構函數<BR>zf5_sock5_udp::~zf5_sock5_udp(void)<BR>&#123;<BR>&nbsp;close_sock5_udp();<BR>&nbsp;WSACleanup();<BR>&#125;</P>
<P>//創建sock5的upd代理<BR>int&nbsp; zf5_sock5_udp::connect_sock5_udp(char *sz_addr_proxy,int n_port_proxy,struct sockaddr_in *p_addr)<BR>&#123;<BR>&nbsp;SOCKET s_sock5_tcp=INVALID_SOCKET;</P>
<P>&nbsp;s_sock5_tcp=socket(AF_INET,SOCK_STREAM,0);<BR>&nbsp;if(s_sock5_tcp==INVALID_SOCKET)<BR>&nbsp;&#123;<BR>&nbsp; return -1;<BR>&nbsp;&#125;<BR>&nbsp;<BR>&nbsp;timeval tv;<BR>&nbsp;tv.tv_sec=10;<BR>&nbsp;tv.tv_usec=0;<BR>&nbsp;if(setsockopt(s_sock5_tcp,SOL_SOCKET,SO_RCVTIMEO,(char *)&amp;tv,sizeof(timeval))==SOCKET_ERROR)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;struct sockaddr_in sa_1;<BR>&nbsp;sa_1.sin_family=AF_INET;<BR>&nbsp;sa_1.sin_addr.s_addr=inet_addr(sz_addr_proxy);<BR>&nbsp;sa_1.sin_port=htons(n_port_proxy);<BR>&nbsp;if(sa_1.sin_addr.s_addr==INADDR_NONE)<BR>&nbsp;&#123;<BR>&nbsp; struct hostent *p=gethostbyname(sz_addr_proxy);<BR>&nbsp; if(p==NULL)<BR>&nbsp; &#123;<BR>&nbsp;&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp;&nbsp; return -1;<BR>&nbsp; &#125;<BR>&nbsp; sa_1.sin_addr.s_addr=((LPIN_ADDR)p-&gt;h_addr)-&gt;s_addr;<BR>&nbsp;&#125;</P>
<P>&nbsp;if(connect(s_sock5_tcp,(struct sockaddr *)&amp;sa_1,sizeof(struct sockaddr_in))==SOCKET_ERROR)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;char sz_buf[ZF5_BUFFER_SIZE2+2];</P>
<P>&nbsp;memset(sz_buf,0,ZF5_BUFFER_SIZE2);<BR>&nbsp;sz_buf[0]=0x05;<BR>&nbsp;sz_buf[1]=0x02;<BR>&nbsp;sz_buf[2]=0x00;<BR>&nbsp;sz_buf[3]=0x02;<BR>&nbsp;if(send(s_sock5_tcp,sz_buf,4,0)==SOCKET_ERROR)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;memset(sz_buf,0,ZF5_BUFFER_SIZE2);<BR>&nbsp;if(recv(s_sock5_tcp,sz_buf,ZF5_BUFFER_SIZE2,0)==SOCKET_ERROR)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;&nbsp;&nbsp; if(sz_buf[0]==0x05&amp;&amp;sz_buf[1]==0x02)<BR>&nbsp;&#123;<BR>&nbsp; int n_temp1=0;<BR>&nbsp; int n_temp2=0;<BR>&nbsp; memset(sz_buf,0,ZF5_BUFFER_SIZE2);<BR>&nbsp; n_temp1=strlen(m_sz_name);<BR>&nbsp; sz_buf[0]=0x01;<BR>&nbsp; sz_buf[1]=n_temp1;<BR>&nbsp; memcpy((void *)&amp;(sz_buf[2]),(void *)&amp;(m_sz_name[0]),n_temp1);<BR>&nbsp; n_temp2=strlen(m_sz_pass);<BR>&nbsp; sz_buf[1+n_temp1+1]=n_temp2;<BR>&nbsp; memcpy((void *)&amp;(sz_buf[1+n_temp1+2]),(void *)&amp;(m_sz_pass[0]),n_temp2);<BR>&nbsp; if(send(s_sock5_tcp,sz_buf,n_temp1+n_temp2+3,0)==SOCKET_ERROR)<BR>&nbsp; &#123;<BR>&nbsp;&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp;&nbsp; return -1;<BR>&nbsp; &#125;</P>
<P>&nbsp; memset(sz_buf,0,ZF5_BUFFER_SIZE2);<BR>&nbsp; if(recv(s_sock5_tcp,sz_buf,ZF5_BUFFER_SIZE2,0)==SOCKET_ERROR)<BR>&nbsp; &#123;<BR>&nbsp;&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp;&nbsp; return -1;<BR>&nbsp; &#125;</P>
<P>&nbsp; if(sz_buf[0]!=0x01||sz_buf[1]!=0x00)<BR>&nbsp; &#123;<BR>&nbsp;&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp;&nbsp; return -1;<BR>&nbsp; &#125;<BR>&nbsp;&#125;<BR>&nbsp;else if(sz_buf[0]!=0x05||sz_buf[1]!=0x00)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;memset(sz_buf,0,ZF5_BUFFER_SIZE2);<BR>&nbsp;sz_buf[0]=0x05;<BR>&nbsp;sz_buf[1]=0x03;<BR>&nbsp;sz_buf[2]=0x00;<BR>&nbsp;sz_buf[3]=0x01;</P>
<P>&nbsp;*((int *)(&amp;sz_buf[4]))=p_addr-&gt;sin_addr.s_addr;<BR>&nbsp;*((short *)(&amp;(sz_buf[8])))=(short)p_addr-&gt;sin_port;</P>
<P>&nbsp;if(send(s_sock5_tcp,sz_buf,10,0)==SOCKET_ERROR)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;memset(sz_buf,0,ZF5_BUFFER_SIZE2);<BR>&nbsp;if(recv(s_sock5_tcp,sz_buf,ZF5_BUFFER_SIZE2,0)==SOCKET_ERROR)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;if(sz_buf[0]!=0x05||sz_buf[1]!=0x00)<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>
<P>&nbsp;if(sz_buf[3]==0x01)<BR>&nbsp;&#123;<BR>&nbsp; int n_ip=*((int *)&amp;sz_buf[4]);<BR>&nbsp; struct in_addr in;<BR>&nbsp; in.S_un.S_addr=n_ip;<BR>&nbsp; memset((void *)m_sz_udp_srv,0,sizeof(m_sz_udp_srv));<BR>&nbsp; strcpy(m_sz_udp_srv,inet_ntoa(in));<BR>&nbsp; m_n_port=htons(*((short *)&amp;(sz_buf[8])));<BR>&nbsp; m_n_addrtype=0x01;<BR>&nbsp;&#125;<BR>&nbsp;else if(sz_buf[3]==0x03)<BR>&nbsp;&#123;<BR>&nbsp; memset((void *)m_sz_udp_srv,0,sizeof(m_sz_udp_srv));<BR>&nbsp; strncpy(m_sz_udp_srv,&amp;sz_buf[5],sz_buf[4]);<BR>&nbsp; m_n_port=htons(*((short *)&amp;(sz_buf[5+sz_buf[4]])));<BR>&nbsp; m_n_addrtype=0x03;<BR>&nbsp;&#125;<BR>&nbsp;else<BR>&nbsp;&#123;<BR>&nbsp; closesocket(s_sock5_tcp);<BR>&nbsp; return -1;<BR>&nbsp;&#125;</P>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91偷拍与自偷拍精品| 欧美日韩综合在线免费观看| 国产亚洲一二三区| 青青草一区二区三区| 在线免费不卡电影| 亚洲精品欧美综合四区| 95精品视频在线| 中文字幕中文乱码欧美一区二区 | 日韩欧美国产wwwww| 亚洲国产毛片aaaaa无费看 | 亚洲制服欧美中文字幕中文字幕| www.一区二区| 中文字幕一区二区三区视频| 天堂在线一区二区| 亚洲三级在线看| 久久综合色婷婷| 国产一区二区在线视频| 精品国精品国产| 狠狠色丁香久久婷婷综合_中| 精品欧美一区二区三区精品久久| 激情五月激情综合网| 2020国产精品| 成人午夜精品在线| 亚洲欧美色一区| 91成人国产精品| 婷婷亚洲久悠悠色悠在线播放| 在线不卡一区二区| 卡一卡二国产精品| 久久麻豆一区二区| 成人伦理片在线| 亚洲精品自拍动漫在线| 欧美日韩综合不卡| 青青草国产成人99久久| 久久这里只有精品视频网| 粉嫩av一区二区三区| 自拍偷在线精品自拍偷无码专区 | 91丨九色丨黑人外教| 一区二区高清免费观看影视大全| 欧美日韩一区二区电影| 秋霞电影一区二区| 国产欧美一区二区在线| 91在线丨porny丨国产| 性欧美大战久久久久久久久| 日韩精品一区二区三区视频在线观看| 国产sm精品调教视频网站| 亚洲男人天堂av| 欧美一激情一区二区三区| 国产一区中文字幕| 亚洲人吸女人奶水| 欧美一级二级在线观看| 成人一区二区三区| 香蕉久久夜色精品国产使用方法| 久久奇米777| 色婷婷综合五月| 免费观看30秒视频久久| 亚洲国产高清不卡| 欧美日韩一卡二卡| 国产91在线观看| 亚洲一区二区三区美女| 久久伊99综合婷婷久久伊| 91一区二区在线| 美女视频一区二区三区| 国产精品你懂的| 欧美日韩国产123区| 国产成人综合在线| 亚洲成av人综合在线观看| 久久久久久一二三区| 在线精品视频一区二区三四| 国产在线播放一区三区四| 亚洲黄色尤物视频| 欧美精品一区二区三区久久久| 91免费观看国产| 狠狠色综合日日| 亚洲自拍偷拍九九九| 久久久综合九色合综国产精品| 欧美色图第一页| 国产a级毛片一区| 日韩国产欧美在线观看| 中文字幕亚洲不卡| 精品久久久久久久久久久久久久久| 色婷婷久久综合| 国产成人综合在线播放| 日本女人一区二区三区| 亚洲精品免费一二三区| 久久久夜色精品亚洲| 制服丝袜av成人在线看| 91一区一区三区| 国产高清精品在线| 免费观看日韩电影| 亚洲国产精品久久久久婷婷884| 中文字幕 久热精品 视频在线| 欧美日韩的一区二区| 91丨国产丨九色丨pron| 国产成人av资源| 久久国产精品露脸对白| 亚洲一区二区av在线| 国产精品久久久久久亚洲伦 | 久久人人爽爽爽人久久久| 欧美日韩国产大片| 日韩视频123| 日本一区二区三级电影在线观看| 在线观看欧美精品| 成人av电影在线播放| 成人国产精品免费网站| 免费成人小视频| 亚洲高清视频的网址| 综合色中文字幕| 国产网站一区二区三区| 日韩美女在线视频| 91精品国产综合久久久久久久| 在线观看一区二区视频| 99精品桃花视频在线观看| 国产福利精品一区| 黄色小说综合网站| 精品一区二区三区免费毛片爱 | 亚洲男同性视频| 一区在线观看免费| 国产精品日韩成人| 欧美国产丝袜视频| 国产日韩欧美电影| 久久精品夜夜夜夜久久| 久久婷婷色综合| 久久综合九色欧美综合狠狠| 精品日韩一区二区三区免费视频| 日韩欧美国产综合| 日韩欧美一卡二卡| 日韩欧美一区在线观看| 日韩免费高清视频| 精品国产乱码久久久久久图片 | 在线观看91av| 在线播放91灌醉迷j高跟美女 | 中文字幕av一区二区三区| 欧美日韩一区不卡| 欧美日韩一区不卡| 欧美老年两性高潮| 欧美一区二区日韩一区二区| 91精品国产一区二区人妖| 欧美一区二视频| 精品裸体舞一区二区三区| 欧美不卡在线视频| 久久综合五月天婷婷伊人| 久久中文字幕电影| 国产精品久久久久一区| 亚洲视频中文字幕| 亚洲精品国产视频| 亚洲一区二区三区影院| 亚洲成va人在线观看| 麻豆精品国产传媒mv男同| 精品一区二区三区免费毛片爱| 国产成人免费视频网站| 福利一区在线观看| 成人国产免费视频| 色婷婷综合久久久久中文 | 亚洲欧洲制服丝袜| 亚洲自拍偷拍综合| 蜜臀a∨国产成人精品| 韩国女主播一区| 成人av高清在线| 91精彩视频在线观看| 欧美日韩国产bt| wwwwww.欧美系列| 国产精品高潮呻吟| 亚洲午夜精品在线| 欧美亚洲国产一区在线观看网站| 欧美三级韩国三级日本一级| 日韩欧美亚洲一区二区| 国产日本欧美一区二区| 亚洲欧美区自拍先锋| 午夜精品久久久久久久蜜桃app| 久久精品国产99国产| 国产成人精品一区二区三区四区 | 国产日本一区二区| 一区二区三区在线影院| 日本不卡视频在线| 成人自拍视频在线观看| 在线观看免费一区| 精品免费视频一区二区| 国产精品乱人伦中文| 亚洲va天堂va国产va久| 国产精品正在播放| 在线日韩国产精品| 久久综合九色综合欧美就去吻 | 国产综合久久久久久久久久久久| 丁香天五香天堂综合| 精品视频999| 久久久高清一区二区三区| 一区二区三区精品在线| 激情图片小说一区| 一本久久精品一区二区| 精品国产伦一区二区三区免费| 自拍av一区二区三区| 蜜臀a∨国产成人精品| 91毛片在线观看| 精品美女一区二区| 亚洲一区二区在线视频| 国产伦精品一区二区三区免费| 欧美在线观看你懂的| 国产午夜精品在线观看| 亚洲国产精品综合小说图片区| 国产成人福利片|