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

歡迎訪問 生活随笔!

生活随笔

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

linux

linux下socket编程-TCP

發布時間:2025/3/19 linux 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下socket编程-TCP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網絡字節序

發送主機通常將發送緩沖區中的數據按內存地址從低到高的順序發出,接收主機把從網絡上接到的字節依次保存在接收緩沖區中,也是按內存地址從低到高的順序保存,因此,網絡數據流的地址應這樣規定:先發出的數據是低地址,后發出的數據是高地址

為使網絡程序具有可移植性,使同樣的C代碼在大端和小端計算機上編譯后都能正常運行,可以調用以下庫函數做網絡字節序和主機字節序的轉換。

#include <arpa/inet.h>uint32_t htonl(uint32_t hostlong); uint16_t htons(uint16_t hostshort); uint32_t ntohl(uint32_t netlong); uint16_t ntohs(uint16_t netshort);

例如將IP地址轉換后準備發送。如果主機是小端字節序,這些函數將參數做相應的大小端轉換然后返回,如果主機是大端字節序,這些函數不做轉換,將參數原封不動地返回。 

Socket地址的數據類型 

具體細節:

sockaddr的缺陷:sa_data把目標地址和端口信息混在一起了。

sockaddr_in結構體解決了sockaddr的缺陷,把port和addr 分開儲存在兩個變量中。

對于struct in_addr還有另一種形式的實現:

struct in_addr {union{struct{unsigned char s_b1,s_b2,s_b3,s_b4;} S_un_b;struct{unsigned short s_w1,s_w2;} S_un_w;unsigned long S_addr;//4字節,32位,按照網絡字節順序存儲IP地址} S_un; };

只要取得某種sockaddr結構體的首地址,不需要知道具體是哪種類型的sockaddr結構體,就可以根據地址類型字段確定結構體中的內容。因此,socket API可以接受各種類型的sockaddr結構體指針做參數,例如bind、accept、connect等函數,這些函數的參數應該設計成void *類型以便接受各種類型的指針,但是sock API的實現早于ANSI C標準化,那時還沒有void *類型,因此這些函數的參數都用struct sockaddr *類型表示,在傳遞參數之前要強制類型轉換一下,例如:

struct sockaddr_in servaddr; /* initialize servaddr */ bind(listen_fd, (struct sockaddr *)&servaddr, sizeof(servaddr));

sockaddr_in中的成員struct in_addr sin_addr表示32位的IP地址。但是我們通常用點分十進制的字符串表示IP地址,以下函數可以在字符串表示和in_addr表示之間轉換。

字符串轉in_addr的函數:

#include <arpa/inet.h>int inet_aton(const char *strptr, struct in_addr *addrptr); in_addr_t inet_addr(const char *strptr); int inet_pton(int family, const char *strptr, void *addrptr);

in_addr轉字符串的函數:

char *inet_ntoa(struct in_addr inaddr); const char *inet_ntop(int family, const void *addrptr, char *strptr, size_t len);

其中inet_pton和inet_ntop不僅可以轉換IPv4的in_addr,還可以轉換IPv6的in6_addr,因此函數接口是void *addrptr。

TCP協議通信流程

如果客戶端沒有更多的請求了,就調用close()關閉連接,就像寫端關閉的管道一樣,服務器的read()返回0,這樣服務器就知道客戶端關閉了連接,也調用close()關閉連接。注意,任何一方調用close()后,連接的兩個傳輸方向都關閉,不能再發送數據了。如果一方調用shutdown()則連接處于半關閉狀態,仍可接收對方發來的數據。

提示:read()返回0就表明收到了FIN段。

最簡單的TCP網絡程序

/*server.c*/ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include <ctype.h> #include <arpa/inet.h>#define MAXLINE 80 #define SERV_PORT 8000int main(void) {//IP地址+端口號就是一個sokcet,唯一標識網絡通信的一個進程struct sockaddr_in servaddr, cliaddr;socklen_t cliaddr_len;int listenfd, connfd;char buf[MAXLINE];//ipv4的地址長度char str[INET_ADDRSTRLEN];int i, n;listenfd = socket(AF_INET, SOCK_STREAM, 0);bzero(&servaddr, sizeof(servaddr));servaddr.sin_family = AF_INET;servaddr.sin_addr.s_addr = htonl(INADDR_ANY);servaddr.sin_port = htons(SERV_PORT);bind(listenfd, (struct sockaddr *)&servaddr, sizeof(servaddr));listen(listenfd, 20);printf("Accepting connections ...\n");while(1){cliaddr_len = sizeof(cliaddr);connfd = accept(listenfd, (struct sockaddr *)&cliaddr, &cliaddr_len);n = read(connfd, buf, MAXLINE);printf("received from %s at port %d\n", inet_ntop(AF_INET, &cliaddr.sin_addr, str, sizeof(str)), ntohs(cliaddr.sin_port));for(i = 0; i < n; ++i){buf[i] = toupper(buf[i]);}//forwrite(connfd, buf, n);close(connfd);}//while}

服務器的網絡地址為INADDR_ANY,這個宏表示本地的任意IP地址,因為服務器可能有多個網卡,每個網卡也可能綁定多個IP地址,這樣設置可以在所有的IP地址上監聽,直到與某個客戶端建立了連接時才確定下來到底用哪個IP地址,端口號為SERV_PORT,我們定義為8000。

在accept函數中,cliaddr是一個傳出參數,accept()返回時傳出客戶端的地址和端口號。addrlen參數是一個傳入傳出參數(value-result argument),傳入的是調用者提供的緩沖區cliaddr的長度以避免緩沖區溢出問題,傳出的是客戶端地址結構體的實際長度(有可能沒有占滿調用者提供的緩沖區)。如果給cliaddr參數傳NULL,表示不關心客戶端的地址。

/* client.c */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h>#define MAXLINE 80 #define SERV_PORT 8000int main(int argc, char *argv[]) {struct sockaddr_in servaddr;char buf[MAXLINE];int sockfd, n;char *str;if(argc != 2){fputs("usage: ./client message\n", stderr);exit(1);}str = argv[1];sockfd = socket(AF_INET, SOCK_STREAM, 0);bzero(&servaddr, sizeof(servaddr));servaddr.sin_family = AF_INET;inet_pton(AF_INET, "127.0.0.1", &servaddr.sin_addr);servaddr.sin_port = htons(SERV_PORT);connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr));write(sockfd, str, strlen(str));n = read(sockfd, buf, MAXLINE);printf("Response from server:\n");write(STDOUT_FILENO, buf, n);close(sockfd);return 0; }

先編譯運行服務器:

$ ./serverAccepting connections ...

然后在另一個終端里用netstat命令查看:

$ netstat -apn|grep 8000tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 8148/server

可以看到server程序監聽8000端口,IP地址還沒確定下來。

現在編譯運行客戶端:

$ ./client abcd Response from server: ABCD

回到server所在的終端,看看server的輸出:

$ ./serverAccepting connections ...received from 127.0.0.1 at PORT 59757

再做一個小實驗,在客戶端的connect()代碼之后插一個while(1);死循環,使客戶端和服務器都處于連接中的狀態,用netstat命令查看:

$ ./server & [1] 8343 $ Accepting connections ... ./client abcd & [2] 8344 $ netstat -apn|grep 8000 tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 8343/server tcp 0 0 127.0.0.1:44406 127.0.0.1:8000 ESTABLISHED8344/client tcp 0 0 127.0.0.1:8000 127.0.0.1:44406 ESTABLISHED8343/server

應用程序中的一個socket文件描述符對應一個socket pair,也就是源地址:源端口號和目的地址:目的端口號,也對應一個TCP連接。

錯誤處理與讀寫控制

系統調用不能保證每次都成功,必須進行出錯處理,這樣一方面可以保證程序邏輯正常,另一方面可以迅速得到故障信息。

為使錯誤處理的代碼不影響主程序的可讀性,我們把與socket相關的一些系統函數加上錯誤處理代碼包裝成新的函數,做成一個模塊wrap.c:

#include <stdlib.h> #include <errno.h> #include <sys/socket.h>void perr_exit(const char *s) {perror(s);exit(1); }int wrap_accept(int fd, struct sockaddr *sa, socklen_t *salenptr) {int n;again:if((n = accept(fd, sa, salenptr)) < 0){if((errno == ECONNABORTED) || (errno == EINTR))goto again;else perr_exit("accept error");}return n; }void wrap_bind(int fd, const struct sockaddr *sa, socklen_t salen) {if(bind(fd, sa, salen) < 0)perr_exit("bind error"); }void wrap_connect(int fd, const struct sockaddr *sa, socklen_t salen) {if(connect(fd, sa, salen) < 0)perr_exit("connect error"); }void wrap_listen(int fd, int backlog) {if(listen(fd, backlog) < 0)perr_exit("listen error"); }int wrap_socket(int family, int type, int protocol) {int n;if((n = socket(family, type, protocol)) < 0)perr_exit("socket error");return n; }ssize_t wrap_read(int fd, void *ptr, size_t nbytes) {ssize_t n; again:if((n = read(fd, ptr, nbytes)) == -1){if(errno == EINTR)goto again;else return -1;}return n; }ssize_t wrap_write(int fd, const void *ptr, size_t nbytes) {ssize_t n;again:if((n = write(fd, ptr, nbytes)) == -1){if(errno == EINTR)goto again;elsereturn -1;}return n; }void wrap_close(int fd) {if(close(fd) == -1)perr_exit("close error"); }

慢系統調用accept、read和write被信號中斷時應該重試。connect雖然也會阻塞,但是被信號中斷時不能立刻重試。對于accept,如果errno是ECONNABORTED,也應該重試。

TCP協議是面向流的,read和write調用的返回值往往小于參數指定的字節數。對于read調用,如果接收緩沖區中有20字節,請求讀100個字節,就會返回20。對于write調用,如果請求寫100個字節,而發送緩沖區中只有20個字節的空閑位置,那么write會阻塞,直到把100個字節全部交給發送緩沖區才返回,但如果socket文件描述符有O_NONBLOCK標志,則write不阻塞,直接返回20。為避免這些情況干擾主程序的邏輯,確保讀寫我們所請求的字節數,我們實現了兩個包裝函數readn和writen,也放在wrap.c中:

ssize_t wrap_readn(int fd, void *vptr, size_t n) {size_t nleft;ssize_t nread;char *ptr;ptr = vptr;nleft = n;while(nleft > 0){if((nread = read(fd, ptr, nleft)) < 0){if(errno == EINTR)nread = 0;elsereturn -1;}else if(nread == 0){break;}nleft -= nread;ptr += nread;}//whilereturn n - nleft; }

如果wrap_readn函數返回了負數,那么這個負數的絕對值就表示多讀取了多少的字節數。

ssize_t wrap_writen(int fd, const void *vptr, size_t n) {size_t nleft;ssize_t nwritten;const char *ptr;ptr = vptr;nleft = n;while(nleft > 0){if((nwritten = write(fd, ptr, nleft)) <= 0){if(nwritten < 0 && errno == EINTR)nwritten = 0;elsereturn -1;}nleft -= nwritten;ptr += nwritten;}return n; }

如果應用層協議的各字段長度固定,用readn來讀是非常方便的。例如設計一種客戶端上傳文件的協議,規定前12字節表示文件名,超過12字節的文件名截斷,不足12字節的文件名用'\0'補齊,從第13字節開始是文件內容,上傳完所有文件內容后關閉連接,服務器可以先調用readn讀12個字節,根據文件名創建文件,然后在一個循環中調用read讀文件內容并存盤,循環結束的條件是read返回0。

字段長度固定的協議往往不夠靈活,難以適應新的變化。如果新版本的協議要添加新的字段,比如規定前12字節是文件名,從13到16字節是文件類型說明,從第17字節開始才是文件內容,同樣會造成和老版本的程序無法兼容的問題。

現在看一下TFTP協議是如何避免上述問題的:TFTPTFTP協議的各字段是可變長的,以'\0'為分隔符,文件名可以任意長,這樣,以后添加新的選項仍然可以和老版本的程序兼容(老版本的程序只要忽略不認識的選項就行了)。因此,常見的應用層協議都是帶有可變長字段的,字段之間的分隔符用換行的比用'\0'的更常見,例如本節后面要介紹的HTTP協議。可變長字段的協議用readn來讀就很不方便了,為此我們實現一個類似于fgets的readline函數,也放在wrap.c中:

//每次調用one_char_read返回一個字節數據 //字節數據是暫存在靜態的數組中的 static ssize_t one_char_read(int fd, char *ptr) {static int read_cnt;static char *read_ptr; //靜態緩沖區的遍歷指針static char read_buf[100]; //靜態數據緩沖區if(read_cnt <= 0){again:if((read_cnt = read(fd, read_buf, sizeof(read_buf))) < 0){if(errno = EINTR)goto againreturn -1;}else if(read_cnt == 0)return 0;read_ptr = read_buf;}//ifread_cnt--;*ptr = *read_ptr++;return 1; }

當把靜態緩沖區的字節全部返回后,read_cnt=0,下次在調用one_char_read的時候,就會再次利用read函數讀取數據。read_ptr重新回到數組首地址,read_cnt中保存的是這次讀取到的字節數目。

ssize_t wrap_readline(int fd, void *vptr, size_t maxlen) {ssize_t n, rc;char c, *ptr;ptr = vptr;for(n = 1; n < maxlen; n++){if((rc = one_char_read(fd, &c)) == 1){*ptr++ = c;if(c == '\n')break;}else if(rc == 0){*ptr = 0;return n - 1}elsereturn -1;}//for*ptr = 0;return n; }

到這里為止,就可以在client和server中添加錯誤控制了,這時不再直接使用原來的系統調用,而是使用wrap.c中封裝過的Socket API接口。

2.3.?把client改為交互式輸入

#include <stdio.h> #include <string.h> #include <unistd.h> #include <netinet/in.h> #include <arpa/inet.h>#include "wrap.h"#define MAXLINE 80 #define SERV_PORT 8000int main(int argc, char *argv[]) {struct sockaddr_in servaddr;char buf[MAXLINE];int sockfd, n;sockfd = wrap_socket(AF_INET, SOCK_STREAM, 0);bzero(&servaddr, sizeof(servaddr));servaddr.sin_family = AF_INET;inet_pton(AF_INET, "127.0.0.1", &servaddr.sin_addr);servaddr.sin_port = htons(SERV_PORT);wrap_connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr));while(fgets(buf, MAXLINE, stdin) != NULL){wrap_write(sockfd, buf, strlen(buf));n = wrap_read(sockfd, buf, MAXLINE);if(n == 0)printf("the other side has been closed.\n");elsewrap_write(STDOUT_FILENO, buf, n);}//whilewrap_close(sockfd);return 0; }

編譯并運行server和client,看看是否達到了你預想的結果。

$ ./client haha1 HAHA1 haha2 the other side has been closed. haha3 $

這時server仍在運行,但是client的運行結果并不正確。原因是什么呢?仔細查看server.c可以發現,server對每個請求只處理一次,應答后就關閉連接,client不能繼續使用這個連接發送數據。但是client下次循環時又調用write發數據給server,write調用只負責把數據交給TCP發送緩沖區就可以成功返回了,所以不會出錯,而server收到數據后應答一個RST段,client收到RST段后無法立刻通知應用層,只把這個狀態保存在TCP協議層。client下次循環又調用write發數據給server,由于TCP協議層已經處于RST狀態了,因此不會將數據發出,而是發一個SIGPIPE信號給應用層,SIGPIPE信號的缺省處理動作是終止程序,所以看到上面的現象。

為了避免client異常退出,上面的代碼應該在判斷對方關閉了連接后break出循環,而不是繼續write。另外,有時候代碼中需要連續多次調用write,可能還來不及調用read得知對方已關閉了連接就被SIGPIPE信號終止掉了,這就需要在初始化時調用sigaction處理SIGPIPE信號,如果SIGPIPE信號沒有導致進程異常退出,write返回-1并且errno為EPIPE

下面修改server,使它可以多次處理同一客戶端的請求:

?

/* wrap_server.c */ #include <stdio.h> #include <string.h> #include <netinet/in.h> #include <arpa/inet.h> #include <ctype.h>#include "wrap.h"#define MAXLINE 80 #define SERV_PORT 8000int main(void) {struct sockaddr_in servaddr, cliaddr;socklen_t cliaddr_len;int listenfd, connfd;char buf[MAXLINE];char str[INET_ADDRSTRLEN];int i, n;listenfd = wrap_socket(AF_INET, SOCK_STREAM, 0);bzero(&servaddr, sizeof(servaddr));servaddr.sin_family = AF_INET;servaddr.sin_addr.s_addr = htonl(INADDR_ANY);servaddr.sin_port = htons(SERV_PORT);wrap_bind(listenfd, (struct sockaddr *)&servaddr, sizeof(servaddr));wrap_listen(listenfd, 20);printf("Accepting connections ...\n");while(1){cliaddr_len = sizeof(cliaddr);connfd = wrap_accept(listenfd, (struct sockaddr *)&cliaddr, &cliaddr_len);while(1){n = wrap_read(connfd, buf, MAXLINE);if(n == 0){printf("the other side has been closed.\n");break;}printf("received from %s at port %d\n", inet_ntop(AF_INET, &cliaddr.sin_addr, str, sizeof(str)), ntohs(cliaddr.sin_port));for(i = 0; i < n; ++i)buf[i] = toupper(buf[i]);wrap_write(connfd, buf, n);}//whilewrap_close(connfd);}//while }

經過上面的修改后,客戶端和服務器可以進行多次交互了。我們知道,服務器通常是要同時服務多個客戶端的,運行上面的server和client之后,再開一個終端運行client試試,新的client能得到服務嗎?想想為什么。?

使用fork并發處理多個client的請求

網絡服務器通常用fork來同時服務多個客戶端,父進程專門負責監聽端口,每次accept一個新的客戶端連接就fork出一個子進程專門服務這個客戶端。但是子進程退出時會產生僵尸進程,父進程要注意處理SIGCHLD信號和調用wait清理僵尸進程。

一下給出代碼框架:

listenfd = socket(...); bind(listenfd, ...); listen(listenfd, ...); while (1) {connfd = accept(listenfd, ...);n = fork();if (n == -1) {perror("call to fork");exit(1);} else if (n == 0) {close(listenfd);while (1) {read(connfd, ...);...write(connfd, ...);}close(connfd);exit(0);} elseclose(connfd); }

setsockopt

現在做一個測試,首先啟動server,然后啟動client,然后用Ctrl-C使server終止,這時馬上再運行server,結果是:

$ ./serverbind error: Address already in use

這是因為,雖然server的應用程序終止了,但TCP協議層的連接并沒有完全斷開,因此不能再次監聽同樣的server端口。我們用netstat命令查看一下:

$ netstat -apn |grep 8000tcp 1 0 127.0.0.1:33498 127.0.0.1:8000 CLOSE_WAIT 10830/client tcp 0 0 127.0.0.1:8000 127.0.0.1:33498 FIN_WAIT2 -

server終止時,socket描述符會自動關閉并發FIN段給client,client收到FIN后處于CLOSE_WAIT狀態,但是client并沒有終止,也沒有關閉socket描述符,因此不會發FIN給server,因此server的TCP連接處于FIN_WAIT2狀態。

現在用Ctrl-C把client也終止掉,再觀察現象:

$ netstat -apn |grep 8000tcp 0 0 127.0.0.1:8000 127.0.0.1:44685 TIME_WAIT -$ ./serverbind error: Address already in use

client終止時自動關閉socket描述符,server的TCP連接收到client發的FIN段后處于TIME_WAIT狀態。TCP協議規定,主動關閉連接的一方要處于TIME_WAIT狀態,等待兩個MSL(maximum segment lifetime)的時間后才能回到CLOSED狀態,因為我們先Ctrl-C終止了server,所以server是主動關閉連接的一方,在TIME_WAIT期間仍然不能再次監聽同樣的server端口。MSL在RFC1122中規定為兩分鐘,但是各操作系統的實現不同,在Linux上一般經過半分鐘后就可以再次啟動server了。

在server的TCP連接沒有完全斷開之前不允許重新監聽是不合理的,因為,TCP連接沒有完全斷開指的是connfd(127.0.0.1:8000)沒有完全斷開,而我們重新監聽的是listenfd(0.0.0.0:8000),雖然是占用同一個端口,但IP地址不同,connfd對應的是與某個客戶端通訊的一個具體的IP地址,而listenfd對應的是wildcard address。解決這個問題的方法是使用setsockopt()設置socket描述符的選項SO_REUSEADDR為1,表示允許創建端口號相同但IP地址不同的多個socket描述符。在server代碼的socket()和bind()調用之間插入如下代碼:

int opt = 1; setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt));

使用select

select是網絡程序中很常用的一個系統調用,它可以同時監聽多個阻塞的文件描述符(例如多個網絡連接),哪個有數據到達就處理哪個,這樣,不需要fork多進程就可以實現并發服務的server。

?

  

  

?

轉載于:https://www.cnblogs.com/stemon/p/5212749.html

總結

以上是生活随笔為你收集整理的linux下socket编程-TCP的全部內容,希望文章能夠幫你解決所遇到的問題。

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

91成人精品在线 | 亚洲免费永久精品国产 | 亚洲精品欧洲精品 | 亚洲精品视频播放 | 久久不见久久见免费影院 | 国产成本人视频在线观看 | 欧美日韩国产二区 | 久久免费电影网 | 91在线精品观看 | 亚洲免费成人av电影 | 国产 精品 资源 | 国产在线免费av | 亚洲91中文字幕无线码三区 | 国内小视频| 国产精品九九久久99视频 | 成人国产电影在线观看 | 91久久精品一区二区二区 | 国产女人40精品一区毛片视频 | 久久在视频 | 午夜在线日韩 | 蜜臀av性久久久久av蜜臀妖精 | 久久国色夜色精品国产 | 黄色aa久久 | 成人性生交视频 | 日日操天天操夜夜操 | 在线观看免费av网站 | 91喷水 | 国产亚洲情侣一区二区无 | 亚洲综合成人专区片 | 国产精品日韩欧美一区二区 | 亚洲区视频在线 | 亚洲国产精品一区二区久久,亚洲午夜 | 日韩两性视频 | 国产一区二区三精品久久久无广告 | 三级av片| 天天爱天天色 | 欧美一级在线看 | 97超碰色| 国产欧美在线一区 | 九九视频网 | 不卡中文字幕av | 福利视频午夜 | 久久草草影视免费网 | 13日本xxxxxⅹxxx20 | 亚洲一级片 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 日日精品 | 久久精品一区二区三区中文字幕 | 亚洲va欧美va | 精品天堂av | 国产91综合一区在线观看 | 免费在线观看午夜视频 | 国产综合在线观看视频 | 国产精品九九视频 | 成人av视屏 | 亚洲天堂网在线视频观看 | 五月婷婷综合激情网 | 奇米四色影狠狠爱7777 | 国产亚洲人 | a一片一级 | 国产欧美日韩一区 | 久久尤物电影视频在线观看 | 91精品免费 | 8x8x在线观看视频 | 成人av在线直播 | 国产一级片在线播放 | 色婷婷av国产精品 | 91视频免费国产 | 色综合久久精品 | 在线视频精品播放 | 免费看国产一级片 | 黄色福利网 | 久久久久亚洲最大xxxx | www.午夜视频 | 国产精品麻 | 三级午夜片 | 国产91成人在在线播放 | 色多多在线观看 | 日韩在线视频观看免费 | 国产高清视频色在线www | 91精品久久久久久综合乱菊 | 欧美精品久久久久久久久久丰满 | 91在线最新 | 深爱开心激情 | 亚洲精品乱码久久久久久蜜桃欧美 | 亚洲一级片av | 亚洲视频在线免费观看 | 91黄色小视频 | 99精品99 | 精油按摩av | 久久99免费观看 | 深爱五月网 | 免费视频在线观看网站 | 国产韩国精品一区二区三区 | 91精品免费在线视频 | 中文字幕乱码在线播放 | 欧美日韩视频在线一区 | 911av视频 | 日韩午夜精品福利 | 日韩专区中文字幕 | 国产自偷自拍 | 免费在线播放 | 天天弄天天操 | 在线视频你懂得 | 91麻豆精品国产午夜天堂 | 99免费在线播放99久久免费 | 97理论电影 | 日本精品在线视频 | 在线电影日韩 | 久久精品永久免费 | 成人小视频在线播放 | 香蕉网在线播放 | 午夜久久电影网 | 视频 国产区 | 亚洲精品一区二区网址 | 日韩精品在线观看av | 色99视频 | 在线免费高清一区二区三区 | 精品在线一区二区三区 | 久久手机免费视频 | 精品在线一区二区 | 亚洲欧美国产精品18p | 成人毛片100免费观看 | 在线播放国产一区二区三区 | 日韩精品一区二区三区中文字幕 | 日韩色在线观看 | 国产精品1区 | 国产一区二区在线影院 | 操操操干干干 | 中文十次啦 | 日本不卡一区二区三区在线观看 | 日韩电影久久 | 狠狠干网 | 久久免费一级片 | 亚洲国产精品久久久 | 亚洲欧美乱综合图片区小说区 | 麻豆传媒在线免费看 | 午夜视频二区 | 精品欧美乱码久久久久久 | 免费亚洲黄色 | 日韩色av色资源 | 亚洲成aⅴ人在线观看 | 亚洲狠狠婷婷 | 久久国语露脸国产精品电影 | 97视频在线观看成人 | 97超级碰碰碰碰久久久久 | 日韩欧美精品在线视频 | 日本黄色大片儿 | 欧美一区二区在线刺激视频 | 99精品国产aⅴ | 999成人| 色婷婷在线视频 | 久久日韩精品 | 天天操欧美 | 国产69久久久 | 欧美日韩精品在线一区二区 | 97人人艹 | a视频在线看 | 99精彩视频在线观看免费 | 中文字幕av播放 | 欧美福利在线播放 | 精品国产伦一区二区三区观看方式 | 日韩精品一区二区三区在线播放 | 99看视频在线观看 | 国产这里只有精品 | 国产自产在线视频 | 午夜精品一二三区 | 久草在线视频看看 | 国产剧情一区在线 | 超碰夜夜 | 天天操天天操天天操天天 | 西西4444www大胆视频 | 国产h在线观看 | 久久久高清一区二区三区 | 婷婷丁香狠狠爱 | 亚洲在线视频网站 | 久久久精品福利视频 | av中文字幕网址 | 国产精品大片免费观看 | 一级黄色大片 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 麻豆精品91| 国产精品99页 | 天天综合网天天 | 久久99久久99精品免视看婷婷 | 99国内精品 | 国产成人香蕉 | 亚洲精品av中文字幕在线在线 | 91九色精品国产 | 五月天婷婷在线播放 | 欧美在线aaa | 国产在线观看二区 | 97国产精品 | 人人澡超碰碰97碰碰碰软件 | 9999在线视频 | 91高清视频| 日韩精品欧美专区 | 狠狠插狠狠干 | 久久精彩免费视频 | 久久久久久久久久久高潮一区二区 | 国产精品白浆 | 国产1区2 | 亚洲电影图片小说 | 一级全黄毛片 | 久久九九久久精品 | 日韩高清不卡在线 | 日韩婷婷| 天天拍天天爽 | 国产黄色一级片 | 在线免费三级 | 国内精品久久久久国产 | 在线日本看片免费人成视久网 | 国产精品久久久久久久久久久久午 | 欧美一级电影免费观看 | 日本 在线 视频 中文 有码 | 日韩一区二区三区免费电影 | 免费在线观看一区二区三区 | 综合网欧美 | 91精选 | 黄色小网站在线 | 九九九视频在线 | 久久综合操 | 又黄又爽又刺激视频 | 国产首页 | 九九99靖品| 九九视频精品免费 | 国产一级一片免费播放放 | av在线一 | 久草精品资源 | 香蕉97视频观看在线观看 | 超碰97人人射妻 | 国产不卡免费视频 | 久久人人爽人人爽人人 | 精品国产乱码 | 国产乱对白刺激视频不卡 | 天天操天天操天天操天天 | 日韩欧美xxxx| av在线成人 | 欧美一区三区四区 | 久久精品91久久久久久再现 | 最近更新好看的中文字幕 | 在线精品视频在线观看高清 | www.亚洲| 最新色站 | 亚洲伊人天堂 | 国产涩涩在线观看 | 久久九九视频 | 9草在线 | 久久久久久国产一区二区三区 | 久久精品毛片基地 | 日韩va欧美va亚洲va久久 | 超碰免费观看 | 欧美男男tv网站 | 欧美在线视频免费 | 高清不卡免费视频 | 精品一区二区视频 | 伊人中文在线 | 午夜 免费 | 中文字幕色在线视频 | 在线观看黄色的网站 | 96亚洲精品久久 | 日韩午夜精品福利 | 五月天堂网 | 免费观看一级视频 | 欧美激情视频在线免费观看 | 韩国av电影在线观看 | 一区二区三区四区精品 | 日韩有码在线观看视频 | 成人性生交大片免费观看网站 | 国产精品一区二区三区视频免费 | 天天爽天天爽夜夜爽 | 亚洲成人动漫在线观看 | 精品日韩中文字幕 | 国产 成人 久久 | 国产一级特黄电影 | 欧美激情视频在线观看免费 | 久久好看免费视频 | 欧美大片www | 久久人人爽人人爽人人 | 五月开心网 | 在线精品视频免费播放 | 免费观看全黄做爰大片国产 | 久久免费电影网 | 日韩高清久久 | 亚洲专区在线播放 | 亚洲电影网站 | 国产福利精品在线观看 | 毛片网在线观看 | 日韩电影中文,亚洲精品乱码 | 丁香花在线观看免费完整版视频 | 亚洲精品电影在线 | 久久艹国产视频 | 97偷拍在线视频 | 久艹在线免费观看 | 成人免费在线电影 | 91精品色 | 久久久久国产a免费观看rela | 中文字幕一区二区三区在线观看 | 国产高清不卡在线 | 中文字幕电影高清在线观看 | 97精品超碰一区二区三区 | 五月激情五月激情 | 波多野结衣动态图 | 精品视频 | 蜜臀久久99精品久久久无需会员 | 婷婷色综合色 | 久久免费一 | 国产精品久久久av | 亚洲精品视频网址 | 久久最新网址 | 免费看污污视频的网站 | www.777奇米 | 国产一区免费在线观看 | 久久人人爽人人爽人人 | 丝袜av一区 | 亚洲精品国产欧美在线观看 | 日韩a在线观看 | 久久综合狠狠狠色97 | 亚洲五月 | 青青河边草观看完整版高清 | 久久视频在线观看中文字幕 | 亚洲免费av观看 | 天天摸日日摸人人看 | 9色在线视频 | 国产色婷婷精品综合在线手机播放 | 亚洲视频一区二区三区在线观看 | 在线午夜电影神马影院 | 欧美a视频在线观看 | 天天干天天天 | 国产91勾搭技师精品 | 欧美福利视频一区 | 成人久久18免费网站图片 | 日韩肉感妇bbwbbwbbw | 国产黄色资源 | 婷婷免费视频 | 黄色三级视频片 | 亚洲热久久 | 91亚洲精| 国产做a爱一级久久 | 国产精品黄 | www.久久免费 | 在线观看一区 | 欧美aa级 | 国产美女在线免费观看 | av久久在线 | 国产69精品久久99不卡的观看体验 | 黄色网址国产 | 美女视频久久久 | 美女久久久久久久久久久 | 成年免费在线视频 | 一级成人免费视频 | 精油按摩av | www.香蕉 | 国产99免费 | 免费av一级电影 | 一级片色播影院 | 亚洲国产视频直播 | 国产伦精品一区二区三区四区视频 | 欧美另类性 | 中文区中文字幕免费看 | www.xxxx变态.com | 亚洲,播放| 91精品看片| 日韩理论在线播放 | 亚洲综合在 | 亚洲开心激情 | 亚洲专区免费观看 | 黄污在线看 | 91在线成人 | 99在线视频精品 | 丁香在线视频 | 日韩中文字幕亚洲一区二区va在线 | 91免费视频网站在线观看 | 成人在线网站观看 | 美女免费黄视频网站 | 人人爽人人爽人人片av | 最新国产中文字幕 | 婷婷丁香激情网 | 亚洲少妇自拍 | 久久精品超碰 | 免费观看黄色12片一级视频 | 国产女人18毛片水真多18精品 | 免费一级片视频 | 日韩免费中文字幕 | 一级片免费观看视频 | 91av视频观看 | 日日麻批40分钟视频免费观看 | 激情一区二区三区欧美 | 国产日韩视频在线播放 | 在线观看精品一区 | 99视频精品免费视频 | 午夜少妇| 亚洲综合丁香 | 久精品一区| www天天干 | 国产一区二区综合 | 久草在线视频中文 | 成人在线观看免费视频 | 99自拍视频在线观看 | 亚洲成人精品在线 | 国产成人精品一区一区一区 | 亚洲一区二区精品视频 | 日韩av免费在线电影 | 亚洲精品国产麻豆 | 五月综合色婷婷 | 一区二区三区四区影院 | 91男人影院| 精品一区二区在线免费观看 | 亚洲专区视频在线观看 | 97在线观看免费高清完整版在线观看 | 精品欧美在线视频 | 九九有精品 | 在线视频1卡二卡三卡 | 韩日三级在线 | 成人黄色在线电影 | 日韩中文字幕电影 | 在线国产中文 | 国产91av视频在线观看 | 91亚洲精品久久久中文字幕 | 成人一区不卡 | 国产系列 在线观看 | 成年人在线免费看 | 欧美日韩免费一区二区三区 | .国产精品成人自产拍在线观看6 | 91免费高清在线观看 | 免费色网 | 夜夜操天天 | 色综合久久综合网 | 日韩网站在线播放 | 98涩涩国产露脸精品国产网 | 国产日韩高清在线 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 亚洲精品乱码久久 | 国模一区二区三区四区 | 久久久av免费 | 狠狠干我| 国产精品久久久久久影院 | 人人干人人艹 | 五月婷婷久久丁香 | 日韩视频免费 | 天天干人人| 久久玖 | 中文字幕在线视频免费播放 | 九九九九九精品 | 国产系列在线观看 | 天天射天天干天天爽 | 久久久国产精品一区二区中文 | 亚洲精品在线一区二区 | 国产黄色在线网站 | 久久伊99综合婷婷久久伊 | 国产欧美精品xxxx另类 | 91免费在线 | 国产人成看黄久久久久久久久 | 日韩精选在线观看 | 中文字幕在线中文 | 91丨九色丨高潮丰满 | 日韩三级视频 | 偷拍区另类综合在线 | 1区2区视频 | 亚洲精品色 | 久久经典国产视频 | 六月丁香激情综合色啪小说 | 免费在线激情电影 | 国产成人精品一区二区三区免费 | 亚洲精品免费播放 | 亚洲 欧美日韩 国产 中文 | 精品国产伦一区二区三区免费 | 国产精品成人免费精品自在线观看 | 日日草天天干 | 黄色一级免费 | www夜夜操 | 久久久久久久久毛片精品 | 国语黄色片| av免费网站观看 | 色五月色开心色婷婷色丁香 | 精品视频一区在线 | 成人理论在线观看 | 91在线91拍拍在线91 | 日韩一级成人av | 五月婷婷综合在线观看 | 国产色女 | 国产精品 视频 | 视频在线国产 | 免费国产在线精品 | 日韩精品中文字幕av | 久久久久女教师免费一区 | 麻豆视频入口 | 丁香激情综合 | av电影一区二区三区 | 狠狠色免费 | 99精品在线免费在线观看 | 欧美日韩一区二区三区在线免费观看 | 久久精品五月 | 久久影视精品 | 色国产精品 | 91亚洲精品久久久久图片蜜桃 | 制服丝袜在线 | 亚洲在线资源 | 中文字幕在线观看91 | 国产xvideos免费视频播放 | 97视频人人 | 国产成人精品一区二区三区免费 | 日本午夜免费福利视频 | 毛片888| 九九在线视频免费观看 | 超碰公开在线观看 | 精品久久国产 | 成人av中文字幕在线观看 | 精品av网站 | 麻豆一区二区三区视频 | 久久美女视频 | 免费亚洲视频 | 久久污视频| 日日草天天草 | 国产中文字幕91 | 亚洲国产黄色 | 午夜精品久久久久久久99无限制 | 91在线观看欧美日韩 | 欧美精品久久久久久久免费 | 日韩特黄av | 国产精品久久久久久影院 | 欧美精品久久久久久久亚洲调教 | 中文字幕在线视频网站 | 久久成 | 四虎免费av | 五月婷婷激情六月 | 少妇bbb搡bbbb搡bbbb′ | 久久黄色免费观看 | 亚洲aⅴ久久精品 | 亚洲一级在线观看 | 日韩videos| 国产免费久久久久 | 91精品久久久久久综合乱菊 | 欧美日韩免费在线观看视频 | 超碰成人av | 国产在线va| 午夜视频在线观看一区二区三区 | 99久久久国产精品免费99 | 婷婷丁香花五月天 | 婷婷视频在线播放 | 日韩欧美国产免费播放 | av怡红院 | 国产成人精品一区二区在线 | 色a资源在线 | 视频三区在线 | 国产aa免费视频 | 欧美成人按摩 | www国产亚洲精品久久网站 | 久久国产精品一区二区三区 | 国内精品二区 | 在线观看黄网 | 免费av看片| 一区二区三区免费在线观看视频 | 日韩网| 日韩在线一级 | 午夜av色 | 中日韩欧美精彩视频 | 日韩亚洲国产中文字幕 | 久国产在线播放 | 天天操夜操 | 国产精品美女免费 | 成人av中文字幕 | 狠狠躁天天躁 | 蜜臀一区二区三区精品免费视频 | 成人毛片一区二区三区 | 久久久久成人精品 | 亚洲三级精品 | 国产精品一区在线观看你懂的 | av在线看网站 | 久久夜色精品国产欧美乱 | 欧美在线a视频 | 国产成人61精品免费看片 | 国产精品久久久久久久久久久免费看 | 国产一区国产二区在线观看 | 欧美大片大全 | 999电影免费在线观看 | 久久免费视频一区 | 麻豆视频在线 | 特级西西人体444是什么意思 | 日韩欧美一区二区在线 | 日韩网站在线播放 | 欧美一级小视频 | 91av电影网| 国产日韩精品久久 | 国产黄a三级三级三级三级三级 | 99精品在线视频播放 | 四虎5151久久欧美毛片 | 免费视频成人 | 国产剧情一区二区 | 国产一区国产精品 | 手机av在线免费观看 | 国产美女永久免费 | 日韩电影中文字幕在线 | 色在线中文字幕 | 国产精品字幕 | 日韩网站在线播放 | 成人影片在线免费观看 | 久久国产精品免费 | 亚洲精品小视频在线观看 | 成人精品99 | 亚洲精品中文字幕视频 | 九九热av| 国产一区二区手机在线观看 | 久久精品久久综合 | 久久艹影院 | 亚州欧美精品 | 婷五月天激情 | 亚洲精品美女在线观看播放 | 亚洲一二视频 | 国产尤物一区二区三区 | 黄色av网站在线免费观看 | 色干综合 | 91成品视频| 91日本在线播放 | 亚洲天天在线日亚洲洲精 | 日本黄色片一区二区 | 能在线观看的日韩av | 中文字幕第 | 中文字幕视频三区 | 麻豆网站免费观看 | 婷婷国产在线 | 蜜桃麻豆www久久囤产精品 | 欧美视频日韩 | 日韩69视频 | 97精产国品一二三产区在线 | 99精品免费 | 91视频黄色 | 国产资源免费 | 久艹在线观看视频 | 精品欧美日韩 | 亚洲做受高潮欧美裸体 | 99精品在线免费视频 | 日韩午夜电影 | 日韩二区三区在线 | 最新日韩中文字幕 | 国产一区二区在线免费播放 | 色资源在线 | 四虎永久精品在线 | 国产精品99久久免费黑人 | 久久99精品久久久久久久久久久久 | 97超碰超碰久久福利超碰 | 波多野结衣日韩 | 国产精品 国内视频 | 久热爱 | 亚洲综合精品视频 | 国产一区麻豆 | 国产精品每日更新 | 国产呻吟在线 | 久草在线视频免费资源观看 | 极品美女被弄高潮视频网站 | 中文字幕成人在线观看 | 天天曰 | 国产精品久久久久久久久久久久午夜 | 欧美日韩一级在线 | 欧美性猛片, | 亚洲成人av在线播放 | 国产精品一区二区中文字幕 | 精品主播网红福利资源观看 | 国产69精品久久久久99尤 | 日韩电影黄色 | 免费国产在线精品 | 成年人免费在线 | 波多野结衣一区二区三区中文字幕 | 久久人人爽 | 亚洲免费在线视频 | 美女国内精品自产拍在线播放 | 在线免费亚洲 | 天天干天天拍 | 久久伦理网 | 99九九免费视频 | 免费v片| 久久视频免费在线观看 | 中文字幕日韩av | 国产亲近乱来精品 | 久久视频这里有精品 | 国产美女免费视频 | 正在播放国产精品 | 久久久久高清毛片一级 | 涩涩资源网 | 亚洲天天做 | 国产精品视频专区 | 精品久久久久久久久亚洲 | avlulu久久精品 | 亚洲免费成人av电影 | 九九综合久久 | 91久久国产露脸精品国产闺蜜 | 欧美激情操| 97国产超碰在线 | 色婷婷天天干 | 久操免费视频 | 国产黄色精品在线 | 最近免费中文字幕mv在线视频3 | 波多野结衣精品 | 亚洲电影影音先锋 | 在线日韩av | 国产一二三精品 | 国产精品成久久久久三级 | 在线免费观看视频你懂的 | 97超碰人人澡人人爱 | 美女在线免费观看视频 | 亚洲黄色小说网 | 国产a级片免费观看 | 久久综合9988久久爱 | 国产视频一区在线免费观看 | 亚洲成人动漫在线观看 | 国产免费不卡 | 天天天干夜夜夜操 | 99re亚洲国产精品 | 亚洲成a人片77777潘金莲 | 美女很黄免费网站 | 国产日韩视频在线播放 | 国产一区二区三区四区大秀 | 久久九九视频 | 中文字幕 在线看 | 亚洲精品在线免费播放 | 黄色三级久久 | av观看免费在线 | 99re视频在线观看 | 一区二区三区在线电影 | 中文字幕xxxx | 国产色视频一区二区三区qq号 | 97电影手机 | 免费在线观看不卡av | 精品久久久久久亚洲综合网站 | 久久老司机精品视频 | 一区二区三区动漫 | 国产日产精品一区二区三区四区的观看方式 | 国内精品美女在线观看 | 99c视频在线 | 欧美成人基地 | 免费毛片一区二区三区久久久 | 国产精品毛片一区视频播 | 免费av福利| 西西4444www大胆视频 | 国产视频精品视频 | 在线观看黄色av | 亚洲另类视频 | 亚洲精品在线看 | 九九热在线精品视频 | 91专区在线观看 | 久久久国产一区二区三区四区小说 | 伊人宗合网 | 91精选在线观看 | 国产一区二区高清不卡 | 亚洲涩涩网 | 成人h动漫精品一区二 | 激情欧美在线观看 | 99在线高清视频在线播放 | 久久99精品一区二区三区三区 | 91丨九色丨高潮 | 天天爽天天搞 | 在线观看精品一区 | 99色精品视频 | 欧美日韩在线观看不卡 | 成人免费中文字幕 | 日韩,中文字幕 | 91在线91拍拍在线91 | av大全在线播放 | 国产精品久久久久久久久免费 | 国产精品永久久久久久久久久 | 97香蕉视频| 亚洲va在线va天堂 | 日韩视频免费观看高清 | 国产成在线观看免费视频 | 国产精品久久久久久久久毛片 | 人人舔人人插 | 国产精品网在线观看 | 麻豆免费视频观看 | 亚洲午夜大片 | 亚洲国产精品免费 | 黄色tv视频| 草久电影| 看片的网址 | 久草爱 | 婷婷在线色 | 国产 日韩 欧美 在线 | 一区二区三区国产欧美 | 美女免费网视频 | 福利视频导航网址 | 亚洲国产视频在线 | 91精品成人 | 日本精品一区二区三区在线播放视频 | 欧美一级日韩三级 | 中中文字幕av在线 | 天天干天天玩天天操 | 国产黄色片一级 | 国产在线观看中文字幕 | 欧美一区二视频在线免费观看 | 99欧美视频 | 国模一区二区三区四区 | 色99色 | 人人天天夜夜 | 91在线超碰 | 国产一区二区高清不卡 | 最近高清中文在线字幕在线观看 | 国产成人一区二区三区电影 | 免费高清男女打扑克视频 | 天天婷婷| 亚洲 欧美 综合 在线 精品 | 天天综合精品 | 五月激情综合婷婷 | 成人免费观看大片 | 欧美一级片免费 | 麻豆果冻剧传媒在线播放 | 亚洲成aⅴ人片久久青草影院 | 国产成人资源 | 精品超碰 | 最近中文国产在线视频 | 亚洲视频免费在线看 | 久草在线在线视频 | 久久久高清 | 成人久久综合 | 91久久久久久久一区二区 | 国产福利a| 成年人在线免费看 | 亚洲一区二区三区在线看 | 国产第一福利网 | 在线日韩一区 | 黄网站免费大全入口 | 香蕉在线观看 | 精品三级av | 成人免费共享视频 | 91精品1区 | 久久99亚洲精品 | 狠狠操导航 | 久久视| 97国产精品久久 | 中文字幕亚洲欧美日韩2019 | 久久黄色成人 | 免费观看9x视频网站在线观看 | 蜜桃视频日本 | 国产精品美女毛片真酒店 | 青青草国产成人99久久 | 婷婷在线免费 | 一区 二区电影免费在线观看 | 亚洲 欧美 综合 在线 精品 | 亚洲在线激情 | 99久久夜色精品国产亚洲96 | 天天想夜夜操 | 亚州人成在线播放 | 精品不卡av| 国产精品久久久久久久免费大片 | 国产黄免费 | 国产在线91精品 | 美女久久 | 五月婷婷色播 | 久草在线观看视频免费 | www.黄色 | 开心综合网| 欧美在线视频a | 免费久久久久久 | 免费成人黄色片 | 亚洲黄色软件 | 午夜精品一区二区三区四区 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 久久久国产毛片 | 丁香六月综合网 | 在线色亚洲 | 国产xxxx做受性欧美88 | 在线中文字幕网站 | 国产精品黄网站在线观看 | 国产超碰97 | av在线播放快速免费阴 | 久久99久久精品 | 日韩av进入| 日批视频国产 | 在线免费观看国产精品 | av不卡免费在线观看 | 国产在线视频导航 | 中文字幕999 | 超碰电影在线观看 | 色综合久久中文字幕综合网 | 日韩激情久久 | 久久九九久久 | 在线视频一区观看 | 91人人干| 91av影视 | av免费高清观看 | 国产a精品| 亚洲国产成人高清精品 | 四虎永久国产精品 | 国产精品自产拍在线观看蜜 | 亚洲 在线| 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 一本一道久久a久久精品蜜桃 | 国产乱对白刺激视频不卡 | 亚洲不卡在线 | 婷婷色综| 成人欧美一区二区三区黑人麻豆 | 久久久久麻豆v国产 | 日日干网 | 91理论片午午伦夜理片久久 | 国内精品中文字幕 | 久久久免费精品国产一区二区 | 国产免费片 | 精品一区二区av | 精品五月天 | 在线观看亚洲a | 久草观看视频 | 六月色播| 深夜国产福利 | 波多野结衣视频一区 | 五月视频 | 亚洲专区在线视频 | 国产做aⅴ在线视频播放 | 69绿帽绿奴3pvideos | 中文字幕日本特黄aa毛片 | 亚洲aⅴ乱码精品成人区 | 亚洲区视频在线观看 | 久久99精品久久久久久清纯直播 | 国产99区| 黄色毛片视频免费 | 国产视频一级 | 中国黄色一级大片 | 天天做天天干 | 黄色大全在线观看 | 国产精品毛片一区视频播 | 久久国产精品影片 | 亚州国产精品久久久 | 99久久久国产精品免费99 | 国产精品原创视频 | 天天摸日日摸人人看 | 三级av在线播放 | 一级一片免费看 | 四虎在线观看精品视频 | 亚洲一区精品二人人爽久久 | 国产成人精品亚洲日本在线观看 | 中文字幕 婷婷 | 国产成人精品av在线观 | 91探花国产综合在线精品 | 亚洲黄色激情小说 | 天天操网址 | 久久不射影院 | 女人18毛片a级毛片一区二区 | 欧美激情视频一区二区三区 | 国产精品一区二区免费视频 | 欧美一级网站 | 黄色在线成人 | 欧美精品三级在线观看 | 欧美精品久久久久久久久老牛影院 | 欧美做受69| 日韩在线不卡 | 色婷婷综合在线 | 人人精久| 国产成人一区二区三区在线观看 | 日韩精品在线免费观看 | 日本电影黄色 | 欧美大荫蒂xxx | 在线视频一区观看 | 国产免费又爽又刺激在线观看 | 欧美极度另类性三渗透 | 国产一区二区久久 | 少妇bbbb | 狠狠精品 | 欧美国产日韩中文 | 免费在线黄色av | 91丨九色丨91啦蝌蚪老版 | 国产二区av| 亚洲日本韩国一区二区 | 国产老太婆免费交性大片 | 超碰人人在线观看 | 99热这里精品 | 国产精品美女久久久久久久久 | 日韩精品免费专区 | 91成人午夜 | 亚洲免费色 | 国内丰满少妇猛烈精品播放 | 欧美日韩国产精品一区二区亚洲 | 欧美一区三区四区 | 日韩美在线 | 国产精品视频免费 | 蜜臀av一区 | 国产午夜在线观看 | 最新中文字幕在线播放 | 热99久久精品 | 亚洲va男人天堂 | 色资源在线 | 国产做a爱一级久久 | 911国产在线观看 | 99久久久久免费精品国产 | 久久永久免费 | 久久国产视屏 | 日韩一区二区免费在线观看 | 丰满少妇一级 | 99精品国产一区二区 | 国产精品国产三级国产专区53 | 精品国产伦一区二区三区观看说明 | 免费在线观看av网址 | 天天草天天插 | 98超碰在线 | 日日夜夜精品免费 | 成年人国产精品 | 国产精品一区二区av | 欧美性生活久久 | 精品欧美乱码久久久久久 | 色999五月色 | 99热这里有精品 | 日韩免费在线观看 |