日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

FTP客户端搭建(linux环境)

發布時間:2023/12/20 linux 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FTP客户端搭建(linux环境) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為了從FTP服務器下載文件,需要要實現一個簡單的FTP客戶端。

FTP(文件傳輸協議) 是 TCP/IP 協議組中的應用層協議。

FTP協議使用字符串格式命令字,每條命令都是一行字符串,以“\r\n”結尾。

客戶端發送格式是:命令+空格+參數+"\r\n"的格式

服務器返回格式是以:狀態碼+空格+提示字符串+"\r\n"的格式,代碼只要解析狀態碼就可以了。

讀寫文件需要登陸服務器,特殊用戶名:anonymous,表示匿名。注意大小寫敏感。

從FTP服務器下載文件的基本流程如下:

1. 建立TCP連接,該協議默認使用21端口,當然可以指定其它端口,取決于服務器的配置。

2. 連接成功之后,服務器會發送一行歡迎文字,例如:220 welcome.
? ? 其中左邊的數字220表示就緒狀態,220后面有一個空格,空格后面是提示文字。
? ? 在解析命令應答的時候,只需要獲取前面的數字即可。

3. 收到歡迎信息后,就要開始登陸了,先用USER命令發送用戶名,服務器返回331狀態。
? ? 然后再用PASS命令發送登陸密碼,服務器返回530表示密碼錯誤,返回230表示密碼正確。
? ? 發送:USER anonymous
? ? 接收:331 Anonymous login ok, send your complete email address as your password
? ? 發送:PASS anonymous
? ? 接收:230 Anonymous access granted, restrictions apply

4. 登陸成功之后,再發送一條TYPE I命令,進入二進制模式,這樣獲取文件數據的時候,就會以二進制字節流發送。
? ? 避免以ASCII碼格式發送文件數據。

5. 獲取文件長度
? ?發送:SIZE /path/filename
? ?失敗:550 /path/filename: No such file or directory
? ?成功:213 [filesize]
? ?返回[filesize]是十進制數字,表示該文件在大小,字節為單位

6. 下載文件
? ?下載文件前,先發送PASV命令,進入被動模式,這樣FTP服務器就會開放一個新的端口,用于接收文件數據。
? ?客戶端成功連接到這個數據端口后,再發送RETR命令請求下載文件,這時文件數據就會從新的端口發送過來,文件傳輸完畢,服務器自動關閉數據端口。
? ?發送:PASV
? ?接收:227 Entering Passive Mode (145,24,145,107,207,235).
? ?后面括號內的5個數字,分別表示IP地址和端口號,端口號分為高8位和低8位,高8位在前
? ?這里的例子表示IP地址為145.24.145.107,端口號為53227(計算公式:207 * 256 + 235)。

? ?發送:RETR /path/filename
? ?接收:150 Opening BINARY mode data connection for /path/filename (54 bytes)
? ?>>>從數據端口接收文件數據
? ?接收:226 Transfer complete
?

7. 上傳文件

? 上傳文件與下載文件類似,也是發送PASV命令,獲取到數據端口,然后發送STOR命令請求上傳文件。
? 不同的是上傳文件是往這個數據端口寫文件數據,寫完數據后,客戶端主動斷開與數據端口的TCP連接,服務器會返回一條上傳成功的狀態。
? 發送:PASV
? 接收:227 Entering Passive Mode (145,24,145,107,207,235).
? 發送:STOR /path/filename
? 接收:150 Opening BINARY mode data connection for /path/filename
? ?>>>往數據端口寫數據
? 接收:226 Transfer complete

=======================================

FTP常見的狀態碼如下:

110重新啟動標記答復。
120服務已就緒,在nnn分鐘后開始。
125數據連接已打開,正在開始傳輸。
150文件狀態正常,準備打開數據連接。
2xx-肯定的完成答復一項操作已經成功完成。客戶端可以執行新命令。
200命令確定。
202未執行命令,站點上的命令過多。
211系統狀態,或系統幫助答復。
212目錄狀態。
213文件狀態。
214幫助消息。
215NAME系統類型,其中,NAME是AssignedNumbers文檔中所列的正式系統名稱。
220服務就緒,可以執行新用戶的請求。
221服務關閉控制連接。如果適當,請注銷。
225數據連接打開,沒有進行中的傳輸。
226關閉數據連接。請求的文件操作已成功(例如,傳輸文件或放棄文件)。
227進入被動模式(h1,h2,h3,h4,p1,p2)。
230用戶已登錄,繼續進行。
250請求的文件操作正確,已完成。
257已創建“PATHNAME”。
3xx-肯定的中間答復該命令已成功,但服務器需要更多來自客戶端的信息以完成對請求的處理。
331用戶名正確,需要密碼。
332需要登錄帳戶。
350請求的文件操作正在等待進一步的信息。
4xx-瞬態否定的完成答復該命令不成功,但錯誤是暫時的。如果客戶端重試命令,可能會執行成功。
421服務不可用,正在關閉控制連接。如果服務確定它必須關閉,將向任何命令發送這一應答。
425無法打開數據連接。 426Connectionclosed;transferaborted.
450未執行請求的文件操作。文件不可用(例如,文件繁忙)。
451請求的操作異常終止:正在處理本地錯誤。
452未執行請求的操作。系統存儲空間不夠。
5xx-永久性否定的完成答復該命令不成功,錯誤是永久性的。如果客戶端重試命令,將再次出現同樣的錯誤。
500語法錯誤,命令無法識別。這可能包括諸如命令行太長之類的錯誤。
501在參數中有語法錯誤。
502未執行命令。
503錯誤的命令序列。
504未執行該參數的命令。
530未登錄。
532存儲文件需要帳戶。
550未執行請求的操作。文件不可用(例如,未找到文件,沒有訪問權限)。
551請求的操作異常終止:未知的頁面類型。
552請求的文件操作異常終止:超出存儲分配(對于當前目錄或數據集)。
553未執行請求的操作。不允許的文件名。
?

下面的函數實現了ftp_download和ftp_upload兩個接口,在需要使用FTP功能的地方調用者兩個接口就可以實現FTP通信;

參考程序:

APP_FTP.c

#include "APP_FTP.h"#define COMMAND_LEN 1024 static char m_send_buffer[1024]; static char m_recv_buffer[1024]; pthread_mutex_t mutex_cmd = PTHREAD_MUTEX_INITIALIZER;/*初始化互斥鎖*/struct ftp_property_t {char *download_src; //下載源URLchar *download_desc; //下載目的URLchar *upload_src; //上傳源URLchar *upload_desc; //上傳目的URLchar *ip_addr; //ftp服務端ipint port; //ftp服務端端口char *username; //usernamechar *password; //password; };static struct ftp_property_t ftp_property;static int m_socket_cmd; static int m_socket_data; int socket_create(void) {char buf[512];int sockfd;//打開套接字,得到套接字描述符sockfd = socket(AF_INET, SOCK_STREAM,0);if(sockfd<0){perror("socket error\n");exit(EXIT_FAILURE);}return sockfd; }int socket_connect(int sock, const char *addr, int port) {struct sockaddr_in server_addr = {0};int ret;//調用connect鏈接遠端服務器server_addr.sin_family = AF_INET; server_addr.sin_port = htons(port);inet_pton(AF_INET,addr,&server_addr.sin_addr); //將IP地址從字符串格式轉換成網絡地址格式//鏈接ret = connect(sock,(struct sockaddr *)&server_addr,sizeof(server_addr));if(ret < 0){perror("connect error");//close(sock);return ret;}printf("[FTP]服務器鏈接成功!\n\n"); }void socket_close(int sock) {pthread_mutex_lock(&mutex_cmd);close(sock);pthread_mutex_unlock(&mutex_cmd); }int socket_send(int sock, void *data, int len) {int ret;pthread_mutex_lock(&mutex_cmd);ret = send(sock,data,len,0);pthread_mutex_unlock(&mutex_cmd);if(ret<0){perror("send error");}return ret; }int socket_recv(int sock, void *data, int len) {int ret;//讀取數據pthread_mutex_lock(&mutex_cmd);ret = recv(sock,data,len,0);pthread_mutex_unlock(&mutex_cmd);if(ret<0){perror("recv error\n");close(sock);}return ret; }//命令端口,發送命令 static int ftp_send_command(char *cmd) {int ret;char buf[1024];memset(buf,'\0',1024);memcpy(buf,cmd,strlen(cmd));printf("[FTP]send command: %s\r\n", buf);ret = socket_send(m_socket_cmd, buf, (int)strlen(buf));if(ret < 0){printf("[FTP]failed to send command: %s",buf);return 0;}return 1; }//命令端口,接收應答 static int ftp_recv_respond(char *resp, int len) {int ret;int off;len -= 1;memset(resp,'\0',len);for(off=0; off<len; ){printf("%d ",off);ret = socket_recv(m_socket_cmd, &resp[off], 1);if(ret < 0){printf("[FTP]recv respond error(ret=%d)!\r\n", ret);return 0;}off+=ret;if(resp[off-1] == '\n'){break;}}resp[off+1] = 0;printf("[FTP]respond:%s", resp);return atoi(resp); }//設置FTP服務器為被動模式,并解析數據端口 static int ftp_enter_pasv(char *ipaddr, int *port) {int ret;char *find;int a=0,b=0,c=0,d=0;int pa=0,pb=0;ret = ftp_send_command("PASV\r\n");if(ret != 1){return 0;}ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret != 227){return 0;}//memcpy(m_recv_buffer,"12345(6)",sizeof("12345(6)"));find = strrchr(m_recv_buffer, '(');sscanf(find, "(%d,%d,%d,%d,%d,%d)", &a, &b, &c, &d, &pa, &pb);sprintf(ipaddr, "%d.%d.%d.%d", a, b, c, d);*port = pa * 256 + pb;return 1; }//上傳文件 int _ftp_upload(char *src, char *des) {int ret,i;char ipaddr[32];int port;char buf[102400] = {0};FILE *fp = NULL;//查詢數據地址ret=ftp_enter_pasv(ipaddr, &port);if(ret != 1){return 0;}ret=socket_connect(m_socket_data, ipaddr, port);if(ret < 0){return 0;}//準備上傳sprintf(m_send_buffer, "STOR %s\r\n", des);ret = ftp_send_command(m_send_buffer);if(ret != 1){return 0;}ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret != 150){socket_close(m_socket_data);return 0;}//讀取文件fp = fopen(src,"ab+");if(fp == NULL){perror("Open error");return 0;}//獲取文件大小struct stat statbuf;stat(src, &statbuf);int len = statbuf.st_size;for(i=0; i<len; ){//開始上傳memset(buf,'\0', sizeof(buf));//ret = fread(buf,1,10240,fp);ret = fread(buf,1,sizeof(buf),fp);ret = socket_send(m_socket_data, buf, ret);if(ret < 0){ printf("[FTP]send data error:%d!\r\n",ret);socket_close(m_socket_data);return 0;}i+=ret;printf("[FTP]upload: %d/%d.\r\n",i,len);if(feof(fp)){break;}}socket_close(m_socket_data);fclose(fp);//上傳完成,等待回應ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret == 226){printf("[FTP]upload complete,save to%s!\r\n",des);}return (ret==226); }//下載文件 int _ftp_download(char *src,char *des ,int len) {int i;int ret;char ipaddr[32];int port;char buf[102400];FILE *fp = NULL;//查詢數據地址ret = ftp_enter_pasv(ipaddr, &port);if(ret != 1){return 0;}//連接數據端口ret = socket_connect(m_socket_data, ipaddr, port);if(ret < 0){printf("[FTP]failed to connect data port\r\n");return 0;}//準備下載sprintf(m_send_buffer, "RETR %s\r\n", src);ret = ftp_send_command(m_send_buffer);if(ret != 1){return 0;}ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret != 150){socket_close(m_socket_data);return 0;}fp = fopen(des,"ab+");if(fp == NULL){perror("Open error");return 0;}//開始下載,讀取完數據后,服務器會自動關閉連接for(i=0; i<len; i+=ret){memset(buf,'\0',sizeof(buf));//ret = socket_recv(m_socket_data, ((char *)buf) + i, len);ret = socket_recv(m_socket_data, buf, sizeof(buf));printf("[FTP]download %d/%d.\r\n", i + ret, len);if(ret < 0){printf("[FTP]download was interrupted.\r\n");break;}if(fwrite(buf,1,ret,fp) < ret){printf("[FTP]fwrite error.\r\n");fclose(fp);return 0;};}socket_close(m_socket_data);fclose(fp);ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret == 226){//下載完成printf("[FTP]download %d/%d bytes complete,Save to %s.\r\n", i, len,des);}else{printf("[FTP]download falied.\r\n");return 0;}return (ret==226); }//返回文件大小 int ftp_filesize(char *name) {int ret;int size;memset(m_send_buffer, '\0', sizeof(m_send_buffer));sprintf(m_send_buffer,"SIZE %s\r\n",name);ret = ftp_send_command(m_send_buffer);if(ret != 1){return 0;}ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret != 213){return 0;}size = atoi(m_recv_buffer + 4);return size; }//登陸服務器 int ftp_login(char *addr, int port, char *username, char *password) {int ret,i;printf("[FTP]connect...\r\n");//3次鏈接服務器不成功就取消連接for ( i = 0; i < 3; i++){ret = socket_connect(m_socket_cmd, addr, port);if(ret >= 0){break;}else if(ret < 0 && i < 3 ){sleep(3);printf("[FTP]Trying connect again...\r\n");}else{printf("[FTP]connect server failed!\r\n");return 0;}}printf("[FTP]connect ok.\r\n");//等待歡迎信息ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);//1024if(ret != 220){printf("[FTP]bad server, ret=%d!\r\n", ret);socket_close(m_socket_cmd);return 0;}printf("[FTP]login...\r\n");//發送USERsprintf(m_send_buffer, "USER %s\r\n", username);ret = ftp_send_command(m_send_buffer);if(ret != 1){socket_close(m_socket_cmd);return 0;}ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret != 331){socket_close(m_socket_cmd);return 0;}//發送PASSsprintf(m_send_buffer, "PASS %s\r\n", password);ret = ftp_send_command(m_send_buffer);if(ret != 1){socket_close(m_socket_cmd);return 0;}ret = ftp_recv_respond(m_recv_buffer, 24);if(ret != 230){socket_close(m_socket_cmd);return 0;}printf("[FTP]login success.\r\n");//設置為二進制模式ret = ftp_send_command("TYPE I\r\n");if(ret != 1){socket_close(m_socket_cmd);return 0;}ret = ftp_recv_respond(m_recv_buffer, COMMAND_LEN);if(ret != 200){socket_close(m_socket_cmd);return 0;}return 1;}void ftp_quit(void) {ftp_send_command("QUIT\r\n");socket_close(m_socket_cmd); }void ftp_init(void) {m_socket_cmd = socket_create();m_socket_data= socket_create(); }/*** @brief Function:API,從ftp服務器下載文件* @param src:FTP服務器URL* @param des:本地的保存位置-* @param Host:FTP服務器IP地址 ** @param Port:FTP服務器端口 * @param username:FTP服務器賬戶* @param password:FTP服務器密碼*/ int ftp_download(char *src, char *des,char *Host,int Port,char *username,char *password) {memset(&ftp_property,0,sizeof(ftp_property));ftp_property.download_src = src;ftp_property.download_desc = des;ftp_property.ip_addr = Host;ftp_property.username = username;ftp_property.password = password;ftp_property.port = Port;printf("[FTP]ftp_download:\r\n[src:%s]\r\n[des:%s]\r\n[IPAddr:%s]\r\n[Port:%u]\r\n[username:%s]\r\n[password:%s]\r\n", \ftp_property.download_src,ftp_property.download_desc,ftp_property.ip_addr,ftp_property.port,ftp_property.username,ftp_property.password);int ret = 0;ftp_init();ret = ftp_login(ftp_property.ip_addr, ftp_property.port, ftp_property.username,ftp_property.password);if(ret == 0){ftp_quit();return;}int size = ftp_filesize(ftp_property.download_src);if(ret == 0){ftp_quit();return;}ret = _ftp_download(ftp_property.download_src,ftp_property.download_desc, size);if(ret == 0){ftp_quit();return;}ftp_quit(); /*if(pthread_create(&Ftp_download_thread, NULL, ftp_download_thread, NULL) != 0){ perror("線程\"socket_net_dila\"創建失敗!\r\n");}*/ }/*** @brief Function:API,向ftp服務器上傳文件* @param src:本地URL* @param des:服務器保存位置* @param Host:FTP服務器IP地址 ** @param Port:FTP服務器端口 * @param username:FTP服務器賬戶* @param password:FTP服務器密碼*/ int ftp_upload(char *src, char *des,char *Host,int Port,char *username,char *password) {int ret = 0;memset(&ftp_property,0,sizeof(ftp_property));ftp_property.upload_src = src;ftp_property.upload_desc = des;ftp_property.ip_addr = Host;ftp_property.username = username;ftp_property.password = password;ftp_property.port = Port;printf("[FTP]ftp_upload:\r\n[src:%s]\r\n[des:%s]\r\n[IPAddr:%s]\r\n[Port:%u]\r\n[username:%s]\r\n[password:%s]\r\n", \ftp_property.upload_src,ftp_property.upload_desc,ftp_property.ip_addr,ftp_property.port,ftp_property.username,ftp_property.password);ftp_init();ret = ftp_login(ftp_property.ip_addr, ftp_property.port, ftp_property.username,ftp_property.password);if(ret == 0)return;ret = _ftp_upload(ftp_property.upload_src,ftp_property.upload_desc);if(ret == 0)return;ftp_quit();//if(pthread_create(&Ftp_upload_thread, NULL, ftp_upload_thread, NULL) != 0){ // perror("線程\"socket_net_dila\"創建失敗!\r\n");//} }void main(void) {return 0; }

APP_FTP.h

#ifndef __APP_THREAD_FTP__ #define __APP_THREAD_FTP__#include <stdio.h> #include <stdlib.h> #include <string.h> #include <pthread.h> #include <sys/socket.h> #include <linux/if.h> #include <fcntl.h> #include <arpa/inet.h> int ftp_download(char *src, char *des,char *Host,int Port,char *username,char *password); int ftp_upload(char *src, char *des,char *Host,int Port,char *username,char *password); #endif // !__APP_THREAD_FTP__

文章參考了(60條消息) C語言實現的簡易FTP客戶端_星沉地動的博客-CSDN博客_c語言實現ftp

在他的基礎上對接口進行了進一步封裝和優化

總結

以上是生活随笔為你收集整理的FTP客户端搭建(linux环境)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

一级欧美黄 | 免费看黄色大全 | 免费观看成年人视频 | 色综合网在线 | 亚洲国产精品久久 | 亚洲 欧美 另类人妖 | 久久久福利视频 | 久久国产精品99久久久久久进口 | 欧美日韩精品在线视频 | 黄污视频网站 | 亚洲在线网址 | 国产精品999久久久 久产久精国产品 | 国产91电影在线观看 | 亚洲国产精品成人精品 | 国产中文a | 成人av免费在线播放 | 免费在线观看日韩欧美 | 亚洲免费av电影 | 欧美中文字幕第一页 | 在线成人免费电影 | 97人人澡人人添人人爽超碰 | 缴情综合网五月天 | 伊人天天狠天天添日日拍 | 热久在线| 激情五月婷婷综合 | 国产人在线成免费视频 | 人人玩人人添人人澡97 | 97碰在线视频| 欧美成a人片在线观看久 | 中文字幕91 | 97人人网| 亚洲乱码久久久 | 在线观看深夜视频 | 在线国产能看的 | 成人一级片免费看 | 91精品国自产在线观看 | 国产精品高清在线观看 | 成年人免费在线观看网站 | 久久精品亚洲一区二区三区观看模式 | 精品美女在线观看 | 国产精选视频 | 91传媒在线播放 | 成年人免费在线观看 | 99久久er热在这里只有精品15 | 婷婷激情五月综合 | 久久久亚洲麻豆日韩精品一区三区 | 久久午夜电影院 | 久久免费电影网 | 天天看天天干天天操 | 人人爽人人爽人人片 | 免费看黄电影 | 国产成人免费 | 91自拍视频在线 | 国产亚洲一区二区三区 | 天天操操 | 久久成电影| 久久国产精品99久久久久 | 在线观看一区二区精品 | 91精品国产92久久久久 | 夜夜视频 | 日韩免费观看av | 久久97超碰 | 91av中文字幕 | 亚洲 欧美 精品 | 婷婷在线综合 | 在线观看免费中文字幕 | 久久99久久99精品免观看软件 | 久久精品亚洲 | 91pony九色丨交换 | 国产成人在线播放 | 国产大片免费久久 | 日本中文一级片 | 天天色成人 | 亚洲在线免费视频 | 久久综合干 | 97视频免费观看2区 亚洲视屏 | 免费久久网 | 91成人在线视频 | 中文高清av | 日韩av在线高清 | 免费试看一区 | 五月婷久| 亚洲综合导航 | 亚洲精品成人免费 | 99精品国自产在线 | 亚洲欧美一区二区三区孕妇写真 | 久草视频中文在线 | 国产视频一 | 国产99在线播放 | 五月天色网站 | 免费日韩在线 | 日韩一区在线免费观看 | 在线免费试看 | 天天鲁天天干天天射 | 狠狠躁夜夜躁人人爽视频 | 国产在线观看你懂的 | 欧美一区二区三区免费观看 | 91成人黄色 | 国产日产精品一区二区三区四区 | 不卡的av在线播放 | 精品综合久久 | 在线精品亚洲一区二区 | 成人av在线播放网站 | 日韩精品一区二区不卡 | 麻豆国产精品va在线观看不卡 | 美女网站色在线观看 | 激情中文在线 | 日日草天天干 | 国产 一区二区三区 在线 | 激情五月色播五月 | 天天干天天摸天天操 | a电影在线观看 | 午夜 久久 tv | 精品一区二区久久久久久久网站 | 精品国产1区2区3区 国产欧美精品在线观看 | 亚洲精品视频在线观看免费 | 夜夜爽夜夜操 | 成人h在线播放 | 制服丝袜一区二区 | 91免费版在线观看 | 国产福利免费看 | 国产视频中文字幕在线观看 | 美女在线免费视频 | 国产原创在线视频 | 中文日韩在线 | www.综合网.com | 高清美女视频 | 在线观看免费av网 | av免费在线观看网站 | 中文字幕三区 | 99免费看片 | 久久神马影院 | 天天色天天操天天爽 | 久久精视频 | 国产成人a亚洲精品 | 天天色棕合合合合合合 | 奇米网在线观看 | 91热这里只有精品 | 欧美韩日精品 | 亚洲国产中文字幕在线观看 | 国产视频在线免费 | 成人黄色电影视频 | 免费三级a| 久久九精品 | 国产精品一区免费在线观看 | 深爱激情五月网 | 九色精品在线 | 国产第一页在线播放 | 久草网视频在线观看 | 三级黄色欧美 | 91九色成人蝌蚪首页 | 久久毛片网站 | 成人一区二区三区在线 | 91毛片在线观看 | 色五丁香 | 色五月情 | 欧美 日韩精品 | 最新午夜电影 | 91精品在线麻豆 | 国产视频18 | 天天干天天操天天 | 国产理伦在线 | 在线v片免费观看视频 | 国产视频一区二区在线观看 | 欧美成人播放 | 人人澡超碰碰97碰碰碰软件 | 婷婷激情五月 | www.777奇米 | 国产精品久久久久一区二区三区共 | 九色精品免费永久在线 | 日韩大片免费观看 | 久久久久国产成人免费精品免费 | 日韩一级片观看 | 四虎在线免费观看 | 五月天婷亚洲天综合网精品偷 | 狠狠干婷婷 | 久久国产影院 | 麻豆精品国产传媒 | 国产精品久久久久久久久久免费 | 最新中文字幕在线播放 | 亚洲成人999| 特级西西444www大精品视频免费看 | 中文字幕一区二区三区在线播放 | 久久毛片高清国产 | 特片网久久 | 国产麻豆视频 | 91夫妻自拍 | 精品麻豆入口免费 | 天天草天天色 | 成年人视频免费在线播放 | 欧美日韩视频网站 | 久久66热这里只有精品 | 天天精品视频 | 91精品区 | 久久久久久免费网 | 香蕉影院在线播放 | 中文字幕精品在线 | 日韩av一区二区三区在线观看 | 日日干天天干 | 欧美性精品 | 国产精久久久久久妇女av | 欧美日韩国产一二三区 | 月下香电影 | www.狠狠色.com | 欧美激情视频在线观看免费 | 在线看片91 | 精品久久久久亚洲 | 亚洲综合色视频在线观看 | 国产精品一二 | www.69xx| 亚洲在线视频播放 | 国产精品av在线 | 人人干人人草 | 国产精品中文字幕在线 | 免费看日韩片 | 深爱激情av | 国产精品一区二区精品视频免费看 | 成人一区二区在线 | 国产精品第一页在线 | 久草在线看片 | 久久成年人视频 | 干天天| www黄色大片 | 99久久久久免费精品国产 | 色婷婷久久 | 欧美日韩在线播放 | 五月激情综合婷婷 | 久久99精品国产91久久来源 | 国产最新精品视频 | 日本精品一区二区三区在线播放视频 | 亚洲欧美经典 | 日韩色综合 | 久久精品一二三 | 欧洲精品一区二区 | 国产99一区二区 | 日韩欧美一区二区在线 | 久av在线 | 久久久久久久久亚洲精品 | 韩国一区视频 | 久久在线播放 | 欧美日本高清视频 | 男女激情免费网站 | 日韩免费av片| 日本中文字幕在线播放 | 天天综合导航 | 久久久久久久久久国产精品 | 国产96在线视频 | 99视频导航 | 亚洲va在线va天堂va偷拍 | 99精品免费久久久久久久久 | 久久国产影院 | 免费三级网| 91精品欧美一区二区三区 | 天天天操天天天干 | 欧美一级久久久久 | 久久国内视频 | 免费在线观看一区二区三区 | 午夜美女福利 | 亚洲成人午夜av | 九九热精品视频在线观看 | 免费看黄在线看 | 特级aaa毛片| 91视频在线国产 | 亚洲婷婷伊人 | 日韩一区二区在线免费观看 | 在线免费观看视频你懂的 | 97理论电影 | 日本中文一级片 | 国产精品免费在线观看视频 | 狠狠操狠狠插 | 国产精品99久久久久久武松影视 | ,午夜性刺激免费看视频 | 久草.com | 日韩一级片网址 | 精品视频免费在线 | 精品久久免费看 | 日韩久久精品一区二区三区下载 | 亚洲精品456在线播放 | 456成人精品影院 | 黄色精品久久久 | 91一区二区三区在线观看 | 色吊丝av中文字幕 | 久久一区二区三区日韩 | 久久综合精品国产一区二区三区 | 97网在线观看 | 五月婷婷综合在线视频 | 成人影音在线 | 中文字幕日韩电影 | 国产精品福利在线 | 欧美一级淫片videoshd | 人人澡超碰碰97碰碰碰软件 | 免费福利视频导航 | 天天干天天干天天干天天干天天干天天干 | 91视频91自拍 | 久久国产精品免费观看 | 日韩高清二区 | 久久久久在线视频 | 日韩1级片 | 性色av免费看 | 中文字幕在线国产 | 亚洲国产大片 | 亚洲精品五月 | 人人狠狠| 99热这里是精品 | 在线亚洲欧美视频 | 亚洲天堂精品 | 婷婷av色综合 | 欧美精品久久久久久久久免 | 91色亚洲 | 免费观看成人网 | 丁香五香天综合情 | 日韩伦理片一区二区三区 | 亚洲春色奇米影视 | 日韩在线一区二区免费 | 91麻豆精品 | 91网站在线视频 | 国产一区二区久久久久 | 福利一区在线 | 91av播放| 天天草综合 | 国产精品1区2区3区在线观看 | 天天摸天天操天天舔 | 久久综合久久综合九色 | av三级av | 91 在线视频播放 | 国产精品美女免费看 | a级片网站| 日本一区二区免费在线观看 | 久久人人爽人人爽人人片av软件 | 久久综合丁香 | 国产亚洲精品久 | www.色国产 | 99视频这里只有 | 91在线九色| 久久视频二区 | 黄色中文字幕 | 国际精品久久久 | 日韩毛片在线一区二区毛片 | 亚洲精品午夜久久久久久久久久久 | 亚洲国产精品电影 | 狠狠色丁香婷婷综合橹88 | 日韩理论在线观看 | 精品国产亚洲日本 | 2018亚洲男人天堂 | 国产精品成人久久久 | 日韩二区在线观看 | 911在线| 在线视频 影院 | 成人资源在线播放 | 国产中文字幕在线观看 | 国产精品成人av在线 | 国产精品久久久久久久午夜片 | 国产精品久久久久久久久毛片 | 狠狠的日| 日韩一级片观看 | 国产精品成人久久久 | 亚洲理论在线观看电影 | 国产精品久久久久久久久久久久久久 | www.com黄色 | 久草免费在线视频观看 | 国产爽视频 | 中文在线中文资源 | 日韩av在线小说 | 黄色一级片视频 | 中文字幕在线观看免费 | 日日干,天天干 | 97在线视频免费 | 日本精品久久久久中文字幕 | 国产黄色观看 | 日韩免费在线视频观看 | 免费成人在线网站 | 999久久久国产精品 高清av免费观看 | 综合久久一本 | av色综合网 | 欧美日韩亚洲精品在线 | 18做爰免费视频网站 | 久久久久国产精品午夜一区 | 欧美日韩综合在线观看 | 99婷婷狠狠成为人免费视频 | 色久综合 | 精品在线观看一区二区三区 | 国产黄在线免费观看 | 午夜视频在线网站 | 日本黄色免费观看 | 午夜美女视频 | 69av免费视频 | 亚洲国产人午在线一二区 | 日韩精品一区二区在线视频 | 亚洲欧美视频 | 午夜神马福利 | 精品人人人 | 久久久久久久久久久高潮一区二区 | 国内精品久久久久影院日本资源 | 91麻豆精品国产午夜天堂 | 美女视频黄网站 | 波多野结衣精品在线 | 天天搞天天 | 国产精品自产拍在线观看中文 | 国产成人a v电影 | 午夜婷婷网 | 日本爽妇网 | 久久99久久99久久 | 久久久久成人精品免费播放动漫 | 日韩v欧美v日本v亚洲v国产v | 韩国av一区二区三区在线观看 | av不卡网站 | 国产精品96久久久久久吹潮 | 夜夜操夜夜干 | 国产精品1区 | 日本成人免费在线观看 | 欧美成人影音 | 欧美一级性生活 | 亚洲综合成人专区片 | 五月婷婷黄色 | 操操综合网 | 国产色婷婷精品综合在线手机播放 | 91麻豆视频网站 | 在线观看国产91 | 国产精品毛片久久久久久 | 91在线91拍拍在线91 | 国产资源在线观看 | 日韩在线观看不卡 | 日本大尺码专区mv | 中文在线免费视频 | 国产精品麻豆一区二区三区 | 96在线| 欧美va天堂在线电影 | 韩国av免费 | 国产中文字幕视频在线观看 | 国产精品久久中文字幕 | 久久久久一区二区三区四区 | 在线观看你懂的网站 | 日韩精品无码一区二区三区 | 久久综合久久鬼 | 最新日韩中文字幕 | 精品久久网 | 又污又黄的网站 | 成人97视频 | 亚洲一级特黄 | 久久精品视频网 | av免费成人 | 亚洲精品视频偷拍 | 超碰在线最新网址 | 亚洲日本va午夜在线影院 | 国产精品美女久久久 | 一级久久精品 | 色综合天天做天天爱 | 国产精品va在线观看入 | 亚洲国产日韩在线 | 免费毛片aaaaaa | 在线观看日韩一区 | 97香蕉久久国产在线观看 | 色99色 | 韩国av一区二区三区在线观看 | 久久国产手机看片 | 激情五月婷婷综合 | 欧美另类高清 videos | 正在播放 久久 | 免费网站在线 | 久久精品电影网 | 激情影音| 人人看人人做人人澡 | 日韩av午夜在线观看 | 婷婷六月天综合 | 在线观看免费成人av | 国产成人在线网站 | 国产高清日韩欧美 | 碰超在线观看 | 天天摸天天弄 | 91亚洲狠狠婷婷综合久久久 | 天天色天天射天天操 | 亚洲精品视频免费观看 | 色综合激情久久 | 97精品国产一二三产区 | 国产三级在线播放 | 精品黄色在线 | 97色综合 | 成人一区不卡 | 成人羞羞免费 | 婷婷在线播放 | 丁香久久五月 | 亚洲年轻女教师毛茸茸 | 国产精品 国内视频 | 亚洲综合射 | 51久久夜色精品国产麻豆 | 亚洲自拍av在线 | 久久久久久久久久久久久国产精品 | 欧美亚洲国产精品久久高清浪潮 | 国产成人精品久久 | 色婷婷a| 99久久精品国产欧美主题曲 | bayu135国产精品视频 | 美女视频永久黄网站免费观看国产 | 美女视频a美女大全免费下载蜜臀 | 久久久久久久99精品免费观看 | 国产精品videossex国产高清 | 91中文在线视频 | 久久免费看毛片 | 国产黄色免费观看 | 久草视频在线播放 | 999热线在线观看 | 国产亚洲精品av | 草久草久 | 91亚洲精品国偷拍 | 精品电影一区 | 亚洲精品视频在线观看免费视频 | 91精品一| 国产97视频在线 | 久久五月婷婷丁香 | 久久久久久久久久久久久9999 | 91免费高清 | 久久久久99精品国产片 | 国产在线国产 | 综合激情婷婷 | 99热精品国产一区二区在线观看 | 亚洲爽爽网 | 天天曰| 成人在线观看网址 | 精品一区二区影视 | 亚洲色图av| av免费福利 | 黄污视频网站大全 | 国产精品第7页 | 国产精品一区二区在线免费观看 | 国产一区在线视频观看 | 不卡av在线免费观看 | 免费的国产精品 | 国产精品久久99精品毛片三a | 国产日韩视频在线 | 国产一二三精品 | 色网av | 在线观看中文字幕视频 | 婷婷五月情| 欧美性黄网官网 | 久影院 | 日一日操一操 | 日本在线观看中文字幕无线观看 | 日韩在线观看你懂得 | 91手机视频在线 | 亚洲一区二区麻豆 | 欧美 日韩精品 | av看片在线观看 | 999久久国精品免费观看网站 | 91成人小视频 | 国产成人免费精品 | 在线观看v片 | 九月婷婷综合网 | 人人爽人人插 | www.久久91| 97av在线 | 国产精品在线看 | 国产免费三级在线观看 | 日本在线h | 久久人人爽人人爽人人片av免费 | 91伊人久久大香线蕉蜜芽人口 | 成人免费xyz网站 | 奇米导航 | 91成人精品一区在线播放69 | 欧美日韩裸体免费视频 | 福利电影一区二区 | 国产精品欧美久久久久久 | 久久97视频 | 国产a级精品| 天天操天天色天天射 | 深爱婷婷久久综合 | 国产精品麻豆视频 | 婷婷在线看 | 久草视频在线新免费 | 成人av电影网址 | 精品国产电影一区 | 成人网在线免费视频 | 成年人黄色免费视频 | 一区精品久久 | 91精品国产自产91精品 | 久久久久99精品成人片三人毛片 | 人人爽人人爽人人爽 | 在线香蕉视频 | 久久高清av| 在线精品视频在线观看高清 | 国产白浆在线观看 | 又黄又爽又色无遮挡免费 | 91视频免费看片 | 中文字幕久久精品 | 97免费公开视频 | 日日夜夜狠狠操 | 国产精品自拍在线 | 日韩午夜高清 | 韩日色视频 | 国产91粉嫩白浆在线观看 | 97精品伊人 | 国产精品一区久久久久 | 在线看国产日韩 | 婷婷伊人网 | www.99在线观看 | 99热在线观看免费 | 亚洲 欧洲av| 一区二区三区在线观看免费 | 天天摸日日操 | 一区二区不卡 | 精品久久网 | 久久亚洲综合国产精品99麻豆的功能介绍 | 久久再线视频 | 日本中文字幕久久 | av网站大全免费 | 日韩精品视频在线观看免费 | 久草免费色站 | 黄色tv视频| 成人av高清 | 美女一级毛片视频 | 日韩伦理片一区二区三区 | 日本丶国产丶欧美色综合 | 亚洲综合涩 | 中文成人字幕 | 香蕉精品在线观看 | 怡红院av| 欧美成人猛片 | 国产在线小视频 | 午夜免费福利视频 | 男女拍拍免费视频 | 成人免费视频观看 | 五月婷av| 九色琪琪久久综合网天天 | 人人澡人人爽欧一区 | 久久久久久久久久久影院 | 丁香综合 | 国产精品一区二区你懂的 | 99精品在线观看 | 亚洲国产日韩精品 | 免费视频二区 | 亚洲一区二区观看 | 久久91久久久久麻豆精品 | 精品色999| 91福利视频网站 | 中文字幕中文 | 久久久久看片 | 免费黄色av | 福利视频 | 日本三级久久久 | 日韩欧美一区二区三区在线观看 | 久草在线视频免费资源观看 | 激情视频免费在线观看 | 97超碰在线久草超碰在线观看 | www.婷婷色| 欧美成人播放 | 国产亚洲精品中文字幕 | 国产精品一区二区无线 | 综合久久久久久 | 特级西西人体444是什么意思 | 在线播放精品一区二区三区 | 成人国产在线 | 日韩免费在线看 | 最近最新最好看中文视频 | 一区免费视频 | 亚洲最新合集 | av怡红院 | 国产精品视频内 | 天天摸天天舔天天操 | 亚洲精品久久激情国产片 | 91精品国产自产在线观看 | 蜜臀av夜夜澡人人爽人人桃色 | 亚州精品成人 | 亚洲最大激情中文字幕 | 亚洲乱亚洲乱亚洲 | 国产91勾搭技师精品 | 日韩精品一区二区三区在线播放 | 亚洲免费在线观看视频 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 97在线视频免费观看 | 欧美国产日韩一区二区 | 日本少妇高清做爰视频 | 日韩一区二区三区在线观看 | av一二三区 | 日韩电影在线观看一区二区三区 | 在线观看中文字幕一区二区 | 在线观看视频三级 | 久久久久国产视频 | 欧美日韩精品在线观看 | 一区 二区电影免费在线观看 | 久久一精品 | 国产.精品.日韩.另类.中文.在线.播放 | 天天躁天天狠天天透 | 在线 高清 中文字幕 | 99久久久久久 | 精品欧美一区二区三区久久久 | 狠狠躁日日躁夜夜躁av | 在线一区二区三区 | 免费看黄色大全 | 96久久 | 在线观看av麻豆 | 精品视频在线视频 | 欧美大码xxxx | 日韩精品高清视频 | 天天激情综合 | 国产黄影院色大全免费 | 欧美另类69 | 色综合久久五月 | 国产成人综 | 最近日本韩国中文字幕 | 中文字幕文字幕一区二区 | 二区视频在线 | 91国内在线视频 | 天天射天天色天天干 | 久草9视频| 97手机电影网 | 国产高清一 | 久久久2o19精品 | 久久99精品国产麻豆婷婷 | 一级黄色电影网站 | 黄色一级免费网站 | 久久国语 | 色偷偷97| 在线综合 亚洲 欧美在线视频 | 91大神电影| 国产在线一线 | 亚洲日本va午夜在线影院 | 久久伊人精品天天 | 黄色网在线播放 | 国产精品免费麻豆入口 | 免费国产在线精品 | 午夜aaaa | 日韩精品一区二区免费视频 | 色久综合 | 国产明星视频三级a三级点| 国产群p | 国产在线中文字幕 | 国产精品18久久久久vr手机版特色 | 中文字幕欧美三区 | 国产资源在线播放 | 久久人人精品 | 国产剧情av在线播放 | 毛片无卡免费无播放器 | 国产午夜一区二区 | 少妇视频在线播放 | 国产va在线 | 成人sm另类专区 | 首页国产精品 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 97超碰人人干 | 日韩免费一区二区 | 婷婷在线看| 欧美国产日韩在线视频 | 视频在线一区二区三区 | 最新av在线免费观看 | 国产91在线播放 | 国产精品片 | 欧美少妇bbwhd| 中文字幕在线成人 | 日韩一区正在播放 | 999国产精品视频 | 日韩精品第一区 | 激情动态 | 久久草精品 | 人人爽人人爽人人片 | 丁香在线视频 | www色,com| 日本最新高清不卡中文字幕 | 日韩欧美电影 | 国产成人av综合色 | 精一区二区 | 日韩免费三区 | 国产一区在线视频观看 | 亚洲精品视频二区 | 国产91aaa | 久久精品国产v日韩v亚洲 | 久久超碰97 | 四虎永久免费 | 国产在线观看你懂得 | 在线国产视频 | 亚洲免费在线视频 | 中文字幕乱码亚洲精品一区 | 中文字幕中文字幕在线中文字幕三区 | 午夜视频在线观看一区 | 久久永久视频 | 久久在现视频 | 在线看片91 | 免费av电影网站 | 色资源中文字幕 | 国产精品美女久久久久久久久久久 | 免费涩涩网站 | 摸bbb搡bbb搡bbbb | 日韩视频一区二区在线观看 | 亚洲欧美日韩精品久久奇米一区 | 在线a亚洲视频播放在线观看 | 亚洲国产97在线精品一区 | 在线婷婷 | 久久精品这里都是精品 | 成人国产精品久久久 | 国产96在线观看 | 久久国产午夜精品理论片最新版本 | 国产精品综合在线 | 天天插天天射 | 99视频免费 | 九九精品视频在线看 | 911国产精品| 久久久精品免费看 | 四虎国产精品永久在线国在线 | 久久av电影 | 天天干天天上 | 96国产精品视频 | 久久社区视频 | 久久午夜免费观看 | 欧美性做爰猛烈叫床潮 | 欧美日韩一区二区三区免费视频 | 国产尤物在线观看 | 色射爱| 亚洲综合干 | 97在线视频免费观看 | 伊人久久精品久久亚洲一区 | 国际精品久久久 | 97超碰国产精品女人人人爽 | 毛片一级免费一级 | 成年人三级网站 | 成人高清在线 | 激情五月婷婷综合网 | 久久久私人影院 | 久久99免费视频 | 国产精品一区二区av日韩在线 | 全久久久久久久久久久电影 | 国产午夜在线 | www.久久久| 久久精品国产成人精品 | 亚洲精品乱码久久久久久蜜桃欧美 | 黄色影院在线免费观看 | 一区二区三区韩国免费中文网站 | 精品一区二区综合 | 国产韩国日本高清视频 | 人人爽久久涩噜噜噜网站 | 91九色视频 | 视频成人永久免费视频 | 国产伦理一区二区三区 | 91av在| 久久国产电影院 | 天天干天天干天天干天天干天天干天天干 | 国产a网站 | 夜色成人av | 国产一二区视频 | 欧美一区免费观看 | 97人人爽 | 亚洲电影在线看 | 免费黄色在线播放 | 欧美极品久久 | 日韩免费成人av | 国产精品久久久久影院日本 | 国产麻豆精品一区二区 | 人人爽人人干 | 久久亚洲私人国产精品 | 最近中文字幕免费av | 中文字幕第一页av | 国产精品久久在线 | 国产成人精品久久二区二区 | 久久久久久久久影视 | 久碰视频在线观看 | 日本在线观看中文字幕无线观看 | 91丨精品丨蝌蚪丨白丝jk | 久久久久久免费毛片精品 | 成人在线一区二区 | 色先锋av资源中文字幕 | 五月婷婷在线视频 | 少妇超碰在线 | 综合色久 | 国产黄色精品视频 | 麻豆视频一区二区 | 九九久久精品 | 国产一区欧美二区 | 91亚洲精品在线 | 久热av| 日韩在线不卡av | 黄色亚洲在线 | 日本中文字幕在线视频 | 色免费在线 | 97成人精品视频在线播放 | 91麻豆精品国产自产在线游戏 | 精品国产免费看 | 久草在线视频免赞 | 制服丝袜亚洲 | 日本在线精品视频 | 9999国产| av免费在线观看网站 | 亚洲va在线va天堂va偷拍 | 天天干天天操av | 9999精品视频 | 制服丝袜在线 | 免费看的黄网站 | 日韩在线不卡av | 99中文字幕在线观看 | 亚洲人人精品 | 探花视频在线观看免费 | 黄污网站在线 | 国产精品岛国久久久久久久久红粉 | 日韩激情影院 | 黄色视屏在线免费观看 | 日韩av不卡在线 | 91香蕉视频在线 | 97国产在线视频 | 99久久精品免费 | 色多多污污在线观看 | 超碰免费在线公开 | 丁香婷婷综合激情 | 天天射天天爽 | 国产一区二区手机在线观看 | 中文字幕乱码视频 | 五月婷婷亚洲 | 97看片吧| 久久久久久高潮国产精品视 | www.99在线观看 | 欧美日韩后 | 福利视频精品 | 九九免费在线观看视频 | 免费观看全黄做爰大片国产 | 黄色官网在线观看 | 久久久久久高潮国产精品视 | 成人免费观看完整版电影 | 伊人电影天堂 | 久插视频| se视频网址| 国产精品男女视频 | 日本久草电影 | 国产直播av| 999在线观看视频 | 国产精品乱码久久久久久1区2区 | 精品96久久久久久中文字幕无 | 久久国产精品一二三区 | 久久九九久久九九 | 久久好看免费视频 | 久久久久久久久国产 | 精品国产成人av | 91毛片视频 | 国产亚洲欧洲 | 日韩免费在线观看视频 | 国产精品久久免费看 | 亚洲另类xxxx | 一区二区三区播放 | 中文字幕欲求不满 | 综合网在线视频 | 国产精品久久久久久久毛片 | 中文字幕色综合网 | 伊人超碰在线 | 国产在线精品区 | 久久精品国产免费观看 | 国产精品久久久久久久久久了 | av+在线播放在线播放 | 国产精品久久99精品毛片三a | 黄色三级免费片 | 在线 国产一区 | 欧美美女激情18p | 精品国产一区二区三区噜噜噜 | 国产亚洲精品综合一区91 | 国产最新在线视频 | 国产精品成人品 | 国产精品免费观看网站 | 日韩欧美国产精品 | 国产成人精品福利 | 五月综合网| 国产黄色片久久久 | 中文字幕av全部资源www中文字幕在线观看 | 日韩欧美专区 | 久久艹国产视频 | 欧美一级在线观看视频 | 久久理论片 | 欧美少妇的秘密 | 天天操狠狠操夜夜操 | 超碰97免费观看 | 免费三级影片 | 在线成人看片 | 国产视频精品免费 | 成全免费观看视频 | 亚洲综合成人婷婷小说 | 五月天激情综合 | 国产1区2区3区在线 亚洲自拍偷拍色图 | 综合av在线 | 成人免费中文字幕 | 91精品在线观看入口 | 一本—道久久a久久精品蜜桃 | 免费观看www7722午夜电影 | 国产在线精品一区二区三区 | 免费高清无人区完整版 | 网站在线观看你们懂的 | 久99久在线视频 | av在线电影免费观看 | 国内精品久久久久久中文字幕 | 一区二区三区高清不卡 | 日日操狠狠干 | 黄色软件在线观看免费 | avcom在线 | 亚州成人av在线 | 久久精久久精 | 波多野结衣理论片 | 日本精品一区二区三区在线观看 | 91中文在线视频 | 久久激情五月激情 | 91最新中文字幕 | 国内精品久久久久久久影视简单 | 国产黄a三级三级三级三级三级 | 免费福利片 | 欧美亚洲免费在线一区 | 在线看日韩av| 99精品视频在线观看播放 | 天天干天天干天天操 |