日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Linux C語言局域網(wǎng)聊天室:從Socket到多線程并發(fā)實現(xiàn)

Linux C語言局域網(wǎng)聊天室:從Socket到多線程并發(fā)實現(xiàn) 簡介一份基于Linux平臺、使用C語言實現(xiàn)的局域網(wǎng)聊天室源碼包面向網(wǎng)絡(luò)編程初學(xué)者以及課程設(shè)計、畢業(yè)設(shè)計的學(xué)生演示如何通過TCP/IP與多線程機制構(gòu)建一個小型局域網(wǎng)聊天服務(wù)。源碼采用客戶端與服務(wù)器分離模式完整實現(xiàn)消息群發(fā)、歷史數(shù)據(jù)查詢、好友列表管理、好友上下線提醒等常用功能其中涉及套接字通信、多客戶端并發(fā)處理、在線狀態(tài)廣播、聊天記錄存儲與檢索等關(guān)鍵知識點兼具可讀性與可擴展性。壓縮包共七個文件主要包括三個C源文件、一個頭文件、一個Makefile構(gòu)建腳本、一份txt說明文檔以及一份docx版程序設(shè)計文檔整體大小僅六十四KB內(nèi)容精煉解壓后可直接閱讀和編譯。附帶的設(shè)計文檔能幫助理解各模塊的設(shè)計思路便于對照源碼深入調(diào)試與二次開發(fā)。目前已有100人學(xué)習(xí)下載適合通過實際項目掌握Linux網(wǎng)絡(luò)編程、多線程協(xié)作以及基礎(chǔ)協(xié)議應(yīng)用并可根據(jù)需要進一步添加私聊、文件傳輸?shù)刃鹿δ堋?. 從Socket到聊天室為什么這個項目值得動手拆一遍不少人在學(xué)完Linux網(wǎng)絡(luò)編程后卡在同一個地方read函數(shù)會阻塞、write返回值不檢查、多線程下共享變量亂改這些零散知識點單獨看都能理解一拼成完整的聊天室就四處漏風(fēng)。這個基于Linux使用C語言實現(xiàn)的局域網(wǎng)聊天室源碼恰好把網(wǎng)絡(luò)編程的核心鏈路串起來了——TCP連接管理、多線程并發(fā)、消息廣播、歷史記錄落盤、上下線狀態(tài)通知。它不做花哨的界面全部走終端交互反而能讓注意力集中在數(shù)據(jù)傳輸和處理邏輯上。適合剛啃完APUE卷socket章節(jié)的學(xué)生也適合想快速回顧select/poll之前那套經(jīng)典多線程模型的在職開發(fā)。配套的docx文檔把設(shè)計思路寫得很直白源代碼結(jié)構(gòu)簡單到可以直接從頭讀完改造成自己項目的通信底層也非常方便。下面我按實際拆源碼的順序把協(xié)議設(shè)計、服務(wù)器端并發(fā)模型、客戶端交互和歷史查詢這幾塊逐一說明。2. TCP選型、數(shù)據(jù)幀格式與多線程模型2.1 為什么局域網(wǎng)即時通訊首選TCP而非UDP聊天室最基礎(chǔ)的需求是“消息不能丟”。UDP雖然省去了握手和?;畹穆闊┑钟蚓W(wǎng)環(huán)境下的丟包率雖然低客戶端突然掉線時UDP根本無從感知服務(wù)器維護在線列表會變得十分不可靠。TCP提供的流式傳輸和連接狀態(tài)檢測能讓服務(wù)器立刻通過read返回0或errno發(fā)現(xiàn)對端關(guān)閉這是實現(xiàn)“好友上下線提醒”的前提。另一個原因是代碼復(fù)雜度TCP的accept、recv、send接口更直觀多線程模型下每個連接一個fd邏輯邊界清晰。如果你練習(xí)過UDP的sendto循環(huán)就知道要在業(yè)務(wù)層自己實現(xiàn)確認和重傳那工作量已經(jīng)接近重寫一個迷你TCP了。局域網(wǎng)場景下帶寬充足TCP頭部開銷幾乎不影響體驗所以這個項目選TCP是合理且務(wù)實的。2.2 自定義協(xié)議幀消息頭和消息體分離源碼中的common.h定義了通信雙方約定的報文格式這是整個聊天室的技術(shù)地基。協(xié)議設(shè)計為固定長度頭部加上變長消息體避免粘包和半包。#define MSG_MAX_LEN 1024 #define NAME_MAX_LEN 32 typedef enum { MSG_TYPE_BROADCAST 1, // 群發(fā)消息 MSG_TYPE_HISTORY, // 歷史記錄請求/響應(yīng) MSG_TYPE_ONLINE_LIST, // 在線列表查詢 MSG_TYPE_LOGIN, // 登錄通知 MSG_TYPE_LOGOUT, // 退出通知 MSG_TYPE_PRIVATE // 預(yù)留的私聊消息 } msg_type_t; typedef struct { int type; // 消息類型見msg_type_t int from_len; // 發(fā)送者名字長度 int body_len; // 消息體長度 } msg_header_t; typedef struct { msg_header_t header; char from[NAME_MAX_LEN]; // 發(fā)送者名字 char body[MSG_MAX_LEN]; // 消息內(nèi)容 } chat_message_t;頭部的三個int字段用定長方式傳輸接收方先讀滿12字節(jié)的msg_header_t再從from_len和body_len得知后續(xù)需要讀取多少字節(jié)。這種設(shè)計的好處是解析時不需要掃描整個數(shù)據(jù)流找分隔符效率高也不會誤拆中文內(nèi)容。注意msg_header_t沒有使用#pragma pack或__attribute__((packed))這是因為在網(wǎng)絡(luò)傳輸中發(fā)送方和接收方可能在不同的Linux發(fā)行版上編譯結(jié)構(gòu)體默認對齊可能產(chǎn)生額外填充字節(jié)。更穩(wěn)妥的做法是像項目里這樣把各字段單獨發(fā)送或者將頭部字段統(tǒng)一為網(wǎng)絡(luò)字節(jié)序的uint32_t。我在自己的代碼里會額外增加一個magic字段用于校驗防止把錯誤的數(shù)據(jù)流當(dāng)成消息處理。2.3 多線程與多進程的選擇客戶端連接處理項目采用一連接一線程thread-per-connection模型服務(wù)器主線程執(zhí)行accept循環(huán)每接受一個新的客戶端連接就創(chuàng)建一個pthread_t線程專門處理該連接。相比fork子進程線程共享進程地址空間操作同一份在線鏈表和消息計數(shù)不需要借助IPC直接加鎖讀寫即可。代價是一個線程棧默認約8MB如果客戶端數(shù)量達到數(shù)百虛擬內(nèi)存壓力會比較大。對于局域網(wǎng)聊天室這種幾十人量級的場景這是最清晰的并發(fā)方案。void *client_handler(void *arg) { int client_fd *(int *)arg; char peer_ip[INET_ADDRSTRLEN]; // ... 獲取客戶端IP加入在線列表 ... chat_message_t msg; while (1) { memset(msg, 0, sizeof(msg)); // 分兩次讀取先讀頭再讀體 if (recv(client_fd, msg.header, sizeof(msg.header), 0) 0) break; if (recv(client_fd, msg.from, msg.header.from_len, 0) 0) break; if (recv(client_fd, msg.body, msg.header.body_len, 0) 0) break; handle_message(client_fd, msg); // 根據(jù)type分發(fā)處理 } remove_client(client_fd); pthread_detach(pthread_self()); close(client_fd); return NULL; }recv三次變長讀取減少了粘包概率但沒完全解決如果網(wǎng)絡(luò)出現(xiàn)半包第二次recv可能只收到一部分。嚴謹?shù)膶懛ㄊ茄h(huán)讀取直到收滿所需字節(jié)我在改進時會封裝一個readn函數(shù)。另外需要注意線程參數(shù)arg指向的client_fd是棧上變量所以建議用堆上分配的方式傳參否則主線程繼續(xù)循環(huán)時可能修改同一塊內(nèi)存。源碼里用malloc分配新fd副本再傳入這點值得學(xué)習(xí)。3. 服務(wù)器端消息群發(fā)、在線列表與上下線通知3.1 服務(wù)器核心數(shù)據(jù)結(jié)構(gòu)與鎖維護在線客戶端需要一張全局鏈表每個節(jié)點保存fd、昵稱、IP等。由于多線程同時讀寫這張表必須用互斥鎖保護。源碼中在clientlist.c里實現(xiàn)了這個結(jié)構(gòu)插入和刪除都封裝成獨立函數(shù)。typedef struct client_node { int fd; char name[NAME_MAX_LEN]; struct sockaddr_in addr; struct client_node *next; } client_node_t; static client_node_t *head NULL; static pthread_mutex_t clients_mutex PTHREAD_MUTEX_INITIALIZER; void add_client(client_node_t *node) { pthread_mutex_lock(clients_mutex); node-next head; head node; pthread_mutex_unlock(clients_mutex); } void remove_client(int fd) { pthread_mutex_lock(clients_mutex); client_node_t *cur head, *prev NULL; while (cur) { if (cur-fd fd) { if (prev) prev-next cur-next; else head cur-next; free(cur); break; } prev cur; cur cur-next; } pthread_mutex_unlock(clients_mutex); }加鎖粒度要控制好。很多新手會把整個廣播循環(huán)也放在鎖內(nèi)導(dǎo)致一次慢客戶端拖住所有發(fā)送。正確做法是在遍歷時先鎖住鏈表然后逐個取出fd并調(diào)用sendsend是阻塞操作可能耗時長所以應(yīng)該在取到fd后盡快解鎖。比較穩(wěn)妥的方式是用引用計數(shù)或淺拷貝的方式拿一份fd數(shù)組出來然后釋放鎖再執(zhí)行send。3.2 消息廣播與上下線提醒的實現(xiàn)廣播函數(shù)遍歷所有在線節(jié)點將收到的消息原樣轉(zhuǎn)發(fā)給除自己外的其他客戶端。上下線提醒本質(zhì)上是廣播一條特殊類型的系統(tǒng)消息只是消息體寫的是“xx上線了”。void broadcast_message(chat_message_t *msg, int sender_fd) { pthread_mutex_lock(clients_mutex); client_node_t *cur head; while (cur) { if (cur-fd ! sender_fd) { ssize_t sent send(cur-fd, msg, sizeof(*msg), 0); if (sent -1) { // 發(fā)送失敗通常會走到remove_client流程 perror(send error); } } cur cur-next; } pthread_mutex_unlock(clients_mutex); } void notify_status(const char *name, int online) { chat_message_t sys_msg; memset(sys_msg, 0, sizeof(sys_msg)); sys_msg.header.type online ? MSG_TYPE_LOGIN : MSG_TYPE_LOGOUT; sys_msg.header.from_len strlen(name); snprintf(sys_msg.body, sizeof(sys_msg.body), %s, online ? 上線了 : 下線了); sys_msg.header.body_len strlen(sys_msg.body); strncpy(sys_msg.from, name, NAME_MAX_LEN); broadcast_message(sys_msg, -1); }注意broadcast_message用sender_fd -1來表示系統(tǒng)廣播這樣所有客戶端都會收到。上下線提醒應(yīng)該在客戶端加入鏈表之前發(fā)送還是之后發(fā)送如果先發(fā)通知再插入鏈表其他客戶端無法看到這位新用戶因為發(fā)送通知時他還沒在列表里。正確順序是先插入鏈表再廣播上線的同時廣播一份在線列表給所有客戶端。這樣收到上線通知的客戶端可以主動向新用戶問好而新用戶也能立刻拿到完整的成員名單。源碼main.c里就是按這個順序處理的。3.3 歷史數(shù)據(jù)查詢的服務(wù)端存儲策略源碼將聊天記錄保存在一個普通文本文件chat.log中。每個廣播或私聊消息在轉(zhuǎn)發(fā)的同時同步追加寫入文件。查詢歷史時客戶端發(fā)送MSG_TYPE_HISTORY類型消息服務(wù)器打開文件讀出全部內(nèi)容通過send返回給客戶端。寫入時要注意多線程寫文件的原子性。兩個線程同時調(diào)用write到同一文件描述符如果消息長度不超過PIPE_BUFLinux下4096字節(jié)內(nèi)核會保證write系統(tǒng)調(diào)用是原子的。這里每條消息通常不到幾百字節(jié)所以直接用write追加問題不大。更穩(wěn)妥的做法是給文件寫操作單獨加一把鎖或讓所有寫入集中在專門的日志線程。我建議在關(guān)鍵函數(shù)里加鎖因為如果把write放在broadcast的循環(huán)里廣播期間的任何失敗都會影響寫日志。void append_history(chat_message_t *msg) { FILE *fp fopen(chat.log, a); if (!fp) { perror(fopen chat.log); return; } fprintf(fp, [%ld] %s: %s\n, time(NULL), msg-from, msg-body); fclose(fp); }每次打開和關(guān)閉文件會有開銷但對聊天室這種低頻寫入完全可接受。開發(fā)環(huán)境里用fopen/fclose能保證數(shù)據(jù)立即落盤避免緩沖區(qū)滯留。查詢時使用fgets逐行讀取并拼接通過send一次性或分段發(fā)送給請求者。還記得MSG_MAX_LEN為1024嗎如果歷史文件超過這個長度服務(wù)器端要拆包發(fā)送客戶端則需要循環(huán)接收。源碼里直接用了定長數(shù)組返回這個在長聊天記錄下會截斷我實測后把發(fā)送邏輯改成了按行拆包。4. 客戶端實現(xiàn)交互線程、好友列表與本地記錄4.1 客戶端主流程與雙線程結(jié)構(gòu)客戶端程序main.c的主函數(shù)邏輯清晰創(chuàng)建socket、connect到服務(wù)器、啟動接收線程處理來自服務(wù)器的數(shù)據(jù)同時主線程循環(huán)讀取用戶輸入并發(fā)送。接收線程的存在是為了及時處理廣播消息、上下線提醒、在線列表更新等異步事件避免用戶正輸入時錯過消息。void *recv_thread(void *arg) { int sock_fd *(int *)arg; chat_message_t msg; while (1) { int n recv(sock_fd, msg, sizeof(msg), 0); if (n 0) { printf(服務(wù)器連接已斷開\n); exit(EXIT_FAILURE); } switch (msg.header.type) { case MSG_TYPE_BROADCAST: printf(\n[%s] %s\n, msg.from, msg.body); break; case MSG_TYPE_ONLINE_LIST: printf(當(dāng)前在線用戶\n%s\n, msg.body); break; case MSG_TYPE_LOGIN: printf( %s 上線了\n, msg.from); break; case MSG_TYPE_LOGOUT: printf( %s 下線了\n, msg.from); break; case MSG_TYPE_HISTORY: printf(-----歷史記錄-----\n%s\n, msg.body); break; default: break; } printf( ); fflush(stdout); } return NULL; }注意接收線程里printf之后要重新打印提示符并刷新stdout否則用戶正在輸入的內(nèi)容會和消息混在一起。這里有個小技巧在printf消息前輸出換行消息結(jié)束后再打印“ ”提示符并fflush這樣即使主線程正在等待輸入用戶也能看到新消息插入且自己的輸入內(nèi)容不會被沖掉。真正的控制臺聊天室還會加ncurses庫做獨立輸入?yún)^(qū)但這個項目的終端交互方式對學(xué)習(xí)socket更友好。4.2 好友列表查看與上下線狀態(tài)維護服務(wù)器返回在線列表的方式有兩種一種是指令觸發(fā)時服務(wù)器遍歷鏈表拼裝字符串另一種是每次客戶端登錄或退出時服務(wù)器主動推送最新列表。源碼采用后者好處是客戶端無需主動請求就能維持較新的好友狀態(tài)視圖??蛻舳藗?cè)只需要在收到MSG_TYPE_ONLINE_LIST時用strtok按換行符拆分然后更新本地的一個char online_names[][NAME_MAX_LEN]數(shù)組即可。void update_online_list(const char *data) { memset(online_names, 0, sizeof(online_names)); online_count 0; char tmp[MSG_MAX_LEN]; strncpy(tmp, data, sizeof(tmp) - 1); char *token strtok(tmp, \n); while (token online_count MAX_CLIENTS) { strncpy(online_names[online_count], token, NAME_MAX_LEN - 1); token strtok(NULL, \n); } }注意strtok會修改原字符串所以必須先復(fù)制一份data。判斷一個好友是否在線只需遍歷online_names下線則意味著列表中沒有對應(yīng)名字。這個設(shè)計不需要客戶端維護好友關(guān)系數(shù)據(jù)庫一切以服務(wù)器廣播的列表為準(zhǔn)屬于無狀態(tài)模式。壞處是如果客戶端錯過了某次列表推送會導(dǎo)致狀態(tài)不準(zhǔn)確所以還需要一個主動查詢指令也就是發(fā)送MSG_TYPE_ONLINE_LIST請求。4.3 歷史記錄查詢與本地文件緩存客戶端發(fā)送查詢請求時直接把MSG_TYPE_HISTORY類型的空消息發(fā)給服務(wù)器服務(wù)器就返回整個聊天日志。這里要處理網(wǎng)絡(luò)傳輸長度不穩(wěn)定的情況所以客戶端的接收邏輯不能只依賴一次recv。我用如下循環(huán)處理可能的多段響應(yīng)void request_history(int sock_fd) { chat_message_t req; memset(req, 0, sizeof(req)); req.header.type MSG_TYPE_HISTORY; send(sock_fd, req, sizeof(req.header), 0); char buf[MSG_MAX_LEN]; int total 0; int n; while ((n recv(sock_fd, buf total, sizeof(buf) - total - 1, 0)) 0) { total n; if (total sizeof(buf) - 1 || n MSG_MAX_LEN) break; } buf[total] \0; printf(%s\n, buf); return; }這個循環(huán)要想穩(wěn)定工作前提是服務(wù)器一次性發(fā)送完整數(shù)據(jù)后關(guān)閉連接或發(fā)送特定的結(jié)束標(biāo)記。當(dāng)前源碼里服務(wù)器用一次send發(fā)送歷史文件內(nèi)容然后保持連接不變這樣客戶端會阻塞在下一個recv等待新消息。所以更好的做法是服務(wù)器將歷史響應(yīng)用一個獨有的body長度標(biāo)記客戶端通過body_len判斷是否收完整。我在自己改進版里是讓服務(wù)器把文件內(nèi)容分多次發(fā)送并在末尾發(fā)送一個“END”字符串客戶端循環(huán)接收直到遇到END這樣更通用。客戶端也可以把收到的歷史記錄追加寫入本地history_YYYYMMDD.log方便離線查看。寫入時的打開方式用O_APPEND保證多寫不覆蓋。這個功能雖然不是必須但面試聊到“如何做持久化”時可以多一個加分項。5. 進階優(yōu)化與排錯讓聊天室從能跑到好跑5.1 用netstat和telnet直接驗證服務(wù)器狀態(tài)源碼編譯后先用最基本的方式驗證網(wǎng)絡(luò)棧是否正常。服務(wù)器運行./server后用netstat -tlnp查看監(jiān)聽端口應(yīng)能看到LISTEN狀態(tài)的IPv4 socket。然后使用telnet作為簡易模擬客戶端手動敲入二進制消息較麻煩但可以用printf管道配合nc工具。比如nc -v 127.0.0.1 8888如果項目源碼監(jiān)聽的端口不是8888需要去main.c里確認#define PORT的設(shè)置。nc連接上后輸入任意文本如果服務(wù)器有回顯或廣播其他端口說明鏈路通。實際排查中我發(fā)現(xiàn)最常見的錯誤是socket bind失敗原因是端口被占用或沒有設(shè)置SO_REUSEADDR。在bind前加一行int opt 1; setsockopt(listen_fd, SOL_SOCKET, SO_REUSEADDR, opt, sizeof(opt));這樣可以快速重啟服務(wù)器而不需要等TIME_WAIT超時。5.2 粘包與半包問題定位方法局域網(wǎng)高并發(fā)下多條小消息可能連續(xù)到達觸發(fā)TCP的Nagle算法合并成一個大包接收方一次recv拿到多條消息這就是粘包。本項目使用固定頭部加變長體的做法能區(qū)分每一條消息的邊界。但前提是recv必須完整地讀到頭和體。我在調(diào)試中曾遇到客戶端發(fā)兩次send第一次發(fā)header第二次發(fā)bodybody較小時兩次可能落入同一個TCP段接收方先讀12字節(jié)頭部沒問題然后要根據(jù)header里的body_len繼續(xù)讀。但我在第三個recv階段只調(diào)用一次如果body沒到齊就返回0會直接break導(dǎo)致消息丟失。所以需要把讀取操作封裝成readnssize_t readn(int fd, void *buf, size_t count) { size_t left count; char *ptr (char *)buf; while (left 0) { ssize_t ret recv(fd, ptr, left, 0); if (ret 0) return ret; ptr ret; left - ret; } return count; }然后用readn替換所有直接recv。這樣處理半包問題后粘包問題其實也迎刃而解因為每次都嚴格按照頭部聲明的長度讀取剩下的數(shù)據(jù)會留到下次recv再解析。5.3 線程安全的日志寫入與退出清理歷史記錄寫入chat.log時如果廣播線程A和線程B同時調(diào)用append_history可能發(fā)生交錯寫入行內(nèi)容穿插。在append_history內(nèi)部加一把全局日志鎖static pthread_mutex_t log_mutex PTHREAD_MUTEX_INITIALIZER; void append_history_safe(chat_message_t *msg) { pthread_mutex_lock(log_mutex); FILE *fp fopen(chat.log, a); if (fp) { fprintf(fp, [%ld] %s: %s\n, time(NULL), msg-from, msg-body); fclose(fp); } pthread_mutex_unlock(log_mutex); }服務(wù)器main函數(shù)收到SIGINT退出時一定要先遍歷鏈表并逐個close所有客戶端fd再釋放鏈表內(nèi)存最后關(guān)閉監(jiān)聽fd。否則客戶端socket不會被內(nèi)核立即回收重啟服務(wù)器時可能報Address already in use??梢杂胹ignal(SIGINT, handler)注冊清理函數(shù)handler里將全局運行標(biāo)志置為0主循環(huán)退出后執(zhí)行清理。5.4 用strace快速定位臨時故障如果客戶端發(fā)送消息后服務(wù)器端沒有轉(zhuǎn)發(fā)一個高效排查手段是strace跟蹤進程的系統(tǒng)調(diào)用。假設(shè)服務(wù)器pid是1234strace -p 1234 -e tracenetwork,write,read -o /tmp/server_trace.log然后讓另一臺客戶端發(fā)一條消息查看trace日志里recv返回的字節(jié)數(shù)、send調(diào)用的目標(biāo)fd和返回值。如果send返回-1且errno為EPIPE說明對端已關(guān)閉連接如果recv返回0說明客戶端主動斷開了。這樣能快速判斷問題在網(wǎng)絡(luò)層還是業(yè)務(wù)邏輯。這個技巧比打印log更快尤其適合排查只在特定網(wǎng)絡(luò)場景下才出現(xiàn)的偶發(fā)問題。5.5 擴展方向select/poll多路復(fù)用與private消息當(dāng)前項目是線程阻塞模型客戶端數(shù)量增加后在大量線程切換上會有開銷。作為進階練習(xí)可以用select或poll重寫服務(wù)器事件循環(huán)將listenfd和所有客戶端fd放入fd_set統(tǒng)一處理可讀事件。這樣單線程就能支撐上百連接。另外協(xié)議里預(yù)留了MSG_TYPE_PRIVATE實現(xiàn)私聊很簡單消息體里包含“目標(biāo)名字:內(nèi)容”服務(wù)器解析后轉(zhuǎn)發(fā)給對應(yīng)fd即可。這些改動都在可控范圍內(nèi)建議把源碼復(fù)制一份出來先備份再逐項重構(gòu)每次都能跑通再繼續(xù)下一步。最后有個實用小技巧把makefile里的CFLAGS改為-Wall -Wextra -g編譯時把警告全部暴露出來。我看到源碼Makefile里只有一行g(shù)cc -o這在實際工作中不夠用。加上-fno-stack-protector調(diào)試棧問題時關(guān)閉保護但上線前務(wù)必恢復(fù)。多讀幾遍clientlist.c里鏈表插入刪除的邏輯把它畫成圖理解指針操作后再去改比我在這里寫一千字都有效。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷精品国产欧美精品亚洲人人爽| 青青在线视频免费| 亚洲国产一区二区三区四区国产| 成人无码在线超碰网| 日本免费一区二区不卡| 精品人人| 性爱1区| 欧亚无码视频| 色臀AV| 欧美综合 站| 九九人人操| 日本高清_区二区三区| 免费岛国一级片| 破处bbq| 欧美激情视频一区二区三区不卡| 人人色97| 熟女精品一区二区三区| 天天视频黄网站| 91综合色噜噜| 天啪| 黄页av| 日产精品久久久一区二区| 久久中出在线| 自拍啪啪视频| 中文字幕国产| 疯操AV| 伊人久久亚洲色欲综合网站 | 欧美日韩人妻婷婷一区| 国产视频大全| 夜夜操中文字幕| 四虎884a| 中文熟女五十乱码在线| 啊啊啊啊在线播放| 久超碰这里只有精品| 四虎视频在线观看| 国产欧美日韩臀| 天天摸夜夜摸| 老熟妇一区二区三区啪啪| 蜜臀99999| 厕所偷拍在线| 亚洲青青草| 欧美第五页| 自拍第一页| 欧美综合狠| 激情婷婷丁香网| 日本免费一区二区不卡| 91痴汉| 啊啊啊操死我了| 99热99re6国产在线播放| 国产和美国毛片| 91劲爆| 99最新日韩偷拍视频| 操91| 91亚洲图片| 91视频综合网| 国产丝袜美女在线一区| 亚洲第一精品在线视频| 91人人爽人人爽| 欧美老妇综合网| 91欧美另类| 欧美高潮| 日本一二区不卡| 亚洲成人精品在线一区| 亚洲伊人a线观看视频| 亚洲 日韩 丝袜 熟女 变态| 久久久久国产无av| 久久99国产综合精品女同| 免费看污网址| 色五月av| 国产理论视频在线播放| 亚洲图片 91| 91精品丝袜久久久久久无码人妻| 日韩AV噜噜噜一区二区三区四区| 无遮挡男女激烈动态图| 国产强奸超碰AV| 日韩在线视频1234| 少妇熟女视频一二三区| 天天爽夜夜爽夜夜爽精| 久久超碰爱| 美国久久一二三四| 户外裸露刺激视频第一区| 亚欧无码在线| 99国产精品久久久在线播放| 亚洲丝袜少妇在线| 久久亚洲AV无码专区国产精品| 日本福利二区视频| 在线播放中文字幕| 国产又色又粗又黄又爽| 国产suv精品一区二区四| 亚州欧美总和| 天天谢天天干| 躁躁日曰躁2020| 十八禁黄色| 日韩亚洲国产视频| 九九热免费国产视频婷婷伊人五月| 中文字幕综合人妻| 在线无码视频| 九九久久首页| 久草免费在线视频| av资源在线播放天堂| 性色av一区二区| 中文三一区| 韩国三级理论在线| 91黄站| 翔田千里一区二区三区奶水| 另类亚洲图色| 国产高清午夜成人在线观看| 青娱乐导航AV| 97超碰欧美中文字幕| 老司机射| 插入粉嫩少妇视频| 尤物视频一区| 性色av一区二区| 伊人一区二区在线播放| 肥臀熟女福利视频一区二区| 91人妻人人澡人人爽人人精品| 色狠狠综合| 五月天加勒比啪| 美国一区二区三区视频| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 国产精品97超碰| 国产真乱mangent| 丝袜制服字幕在线| 亚洲日韩视频二区| 97一本大道亚洲一区| 亚洲国产精品成人综合| 欧美日日夜夜| 思思热影视| 亚洲 欧美 综合 91| 精品在线观看视频在线| 夜夜夜夜爽| 人人操人人摸人人看人人干| 久久久久921| 自拍视频一区在线观看| 青久久| 大香网伊人久久综合| 蜜区区视频79 | 欧美91网站| av日韩手机在线影视| 精品国产久久乱码| 国产精品久久久久久久久AV大片| 日本亚欧爱爱| 玖玖在线视频| 国产综合色精品在线观看| 欧美综合站| 97无码视频在线播放| 99re8超碰| 欧美日韩大黄片| 久操影视| 欧美人妻精品| 亚洲成a人在线观看久| 色老久久| 亚洲天堂综合AV| 国产一级特黄大片处女| 中精品一区二区三区| 天天插天天操| 人妻熟女av国产网站| 九t超碰| wwe 天天干.com| 老司机射| 另类图片欧美激情综合| 熟妇激情| 久久25| 欧美性爱三区二区| 亚州综合色| 日日干夜夜欢| 蜜桃视频一区二区三区在线观看| 国产原创剧情在线丝袜| 加勒比在线观看一区二区| 欧美女同在线| 日韩99神马视频播放| 亚洲AV无码久久久国产精品| 婷婷干黄色| 国产后入式在线观看| 精品久久久久黄少妇| 国产精品自产拍在线观看社区 | 大香蕉十区| 国产精品老师| 日韩性爱网址| 高清无码在线播放网站| 2024黄色视频| 水多多映视AV| 久久精品28| 国产精品一区二区后入| 刺激性视频黄页| 亚洲无码99| xxx0国产在线播放| 日日操免费视频| 久久精品电影在线| 羞答答AV中文字| 加勒比AV天堂| 亚洲一二三| 一区二区三区国产精产| 2010男人的天堂| 国产精品探花视频| 大香蕉九九| 亚洲高清无码在线桃色| 大香蕉一区二区在线观看.| 97在线视频免费看| 四虎免费在线播放| 91九色丨风韵犹存| 久久性爱视频免费看| 99999国产| 激情人妻另类| 中亚黄色三级大片| 人妻少妇精品久久久| 超碰精品| 亚洲熟女乱熟乱熟妇综合网二区| 欧美日韩青操| 精品无码产区一区二| 97精品97久久| 蜜区区视频79 | 一级特黄aaa大片在线观看成人一级片在线观看| 超碰色老头| 麻豆美女丝袜人妻中文| 欧美色图综合| 亚洲囯产精品女人久久久| 国产在线能看的你懂的| 日韩av一级黄片| 嫩草一区二区在线观看| www.婷婷| wwe 天天干.com| 久久超碰98| 亚洲性综合| 欧美精品亚洲精品日韩传电影| julia ann久久| 嗯嗯嗯啊啊在线观看| 91精品91久久久久77777| 亚洲 无码 有码 中文字幕| com 首页 18岁 禁区 女优 免费 精选 同城 | 日韩99神马视频播放片在线播放| 日韩99神马视频播放片在线播放| 亚洲资源网| 人人澡人人澡人人| 另类天堂| 色噜噜精品一区二区三| 密桃99999| 嗯,啊。舔我逼| 五月天久久人妻| 热99这里有精品综合久久| 男啪女色黄无遮挡免费观看| 国产女人和拘做爰视频| 国产亚洲禁久一区二区| 亚洲国产精品久久久久婷婷青年| 日本精品免费一区二区三区四区| 蜜区区视频79| 国产午夜精品理论片一二三区区| 操高情无码| 激情六月天| 91亚洲影院综合| 99re在线视频这里只有精品| 国产一级内射高清视频| 自慰白浆在线观看| 国产白领连续中出在线观看| 色香天天| 亚洲欧洲国产综合av| 欧美亚男人的天堂| 欧美97免费| 97超碰磁| 高清无码网址| 九九九九97| 人妻三级在线中文字幕| 国产日韩在线播放| 九九拍拍精品视频在线播放 | 777奇米影视777四色| 亚洲精品蜜桃久久久一区二区三区| 久久婷婷亚洲欧| 亚洲高清91| 在线人人人人人人精品超 | 人人操人人爽人人操人人| 中国探花熟女| 久久草视频污视频| 超碰国产精品久| 另类小说五月天| 欧洲精品久久| 四虎国产精品永久地址入口| 欧美色997| 东京热双插| 国产一区二区三区影片| 中文字幕乱偷人妻久久艾草网| 日韩在线观看三级电影| 午夜精品99久久久久传媒| 玖玖综合视频| 九九性爱网| 少妇色综合| 一类无码操逼视频| 国桃视频产巨乳精品一区二区在线| 欧美超碰在线| 香一区二区三区| 中欧人妻丝袜中文字幕| 狠狠中文字幕| 最近二区三区视频大全| 懂色AV一区二区三区| 春色91| 色欧美天天| 日本大香蕉综合网红本杳社区| 免费久久精品麻豆一区二区av| 中文字幕av丝袜| 岛国大片国产| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 亚洲美欧999| 凹凸精品熟女在线观看| 视频在线观看一二三区| 国产精品一二三区18| 四虎永久在线精品免费网址| 日韩免费中文字幕视频| 国内操逼视频二区| 91干熟女| 亚洲欧美日韩激情不卡| 久久久熟妇熟女国产| 青娱乐二区免费| 内射黑人| 在线无码操| 久操免费电影| 亚洲三级网址久久最新| 欧美人与性动交a美精品| 嫩草 我啊~嗯~在线| www.av在线观看| 综合自拍| 蜜桃中文字日产乱幕4区| 日韩精品国产一区二区| 久久久久久中文| 长长久久免费视频| 久久中文字幕一区不卡| 91老司机精品| 欧美亚洲AN| 国产一区二区在线电影| 超碰97亚洲| 91l欧美在线| 十八禁成人网站在线观看| 久草色在线观看| 超碰超碰95| 亚洲国产婷婷在线播放| 中国特猛少妇色xxx| 青娱乐av在线| 亚洲av无码成人精品国产| 九九无码| 天天影视综合色| 日韩人妻网站| 久久五月份| 日日摸夜夜夜夜爽| 乱伦强奸区日韩| 精吧天堂| 精品人妻一区二区三区夜夜| 青青草中文-久久青草精品一区二区三| 干我久操| 熟女人妻一区二区三区免费看| 99啪啪| 国产97色在线| 手机在线播放国产福利| 国产精品电影大全| 精品无码一区二区三区| 老女人老91妇女老热女| 亚洲有薄码区日本系列中文字幕| 亚洲色综合| 国产精品美女久久久久AⅤ国产馆| 精产品久久| 中文字幕一区二区三四五区日日骚| 99国内精品| 免费A V在线| 成人日韩3| 成人国产视频在线观看| 啪啪自拍九九综合| 91 亚欧| 天天摸夜夜操视频| 天天天肏屄欧美| 五月天婷婷综合网| 激情专区综合| 一级啊性爱在线视频| se01国产在线视频| 国产毛片久久久久久久| 日日干天天干夜夜爽| 四虎影视欧美| 美女诱惑一区| 国产熟妇 码视频户外直播| 久久精品28| yazhouzaixian| 91色综合色| 亚洲综合性网址| 国产丰满熟夫69mpp| 曰本精品久久久| 夜夜嗨AV蜜臀av| 少妇毛片久久| 人妻无码后入| 九九九九九九视频| 国产视频小说| 熟女91网| 校园春色 亚洲| 欧美图片色五月天| 人妻丝袜日本| 国产精品分类在线观看| 中国一级操逼视频| 亚洲最大AV网| 天天干,天天日| 久热色情精品| 99re不伦| 久久国产精品视频| 91精品人妻一品二品三品| 亚洲精品欧洲色| 青青草好吊色| 91性高朝久久久久久久久| 国产成人亚洲精品无码最新在线| 国产黄色小视频网站| 丰满人妻一区二区三区性色| 久久亚洲AV无码专区国产精品| 国产乱码精品一区二区三区四川| 人妻熟女一区在| 天天干天天日天天射黄色| 欧美精品第四五页中文字幕在线观看| 日韩78m视频| 性感美女啊啊啊在线| 97欧美日韩精品| 在线不欧美| 亚洲综合另类小说色区亚洲成av人片在www| 国产啊v在线免费播放| 人人干人人操人人..com| 亚洲激情在线| 日韩在线97| AV色五月| 国产精品不卡av免费在线观看| 国产对白刺激视频| 伊人97超碰| 97一本大道亚洲一区| 清纯唯美综合亚洲| 韩三级a视频在线观看| 自拍偷拍2025在线观看| 超碰97资源中文字幕| 中国的操老妇女| 校园春色五月天| 男女激情黄色网址| 丝袜内射| 欧美精品系列| 美国人人操人人操| 蜜臀在线免费观看在线免费观看| 中文精品少妇天堂| AV一起草在线| 婷婷五月影院| 欧洲性人爱视频| 免费观看日本操逼视频| 亚洲成?V人片在线观看福利| 九九九九日本| 欧美日韩大香蕉| 丁香五月色情| 中文字幕av一区二区三区人妻少妇 | 亚洲无码 国产无码| 综合久| 东京热熟女亚洲视频网站| 久久久久久久精| 激情久久久| 60秒免费小视频| 91综合网| 韩国轻伦国内自拍一区| 揉揉日日日日| 久久性爱免费送| 中文字幕精品久久久久人妻红杏ⅰ| 亚洲天堂资源网| 熟女乱伦二区| 久久熟女嫩草成人片免费| 国产精品 久久久精品一牛| 好吊妞转入那个网| 欧美黑人熟妇精品91| 国产农村一一级特黄毛片| 强奸熟女一区二区三区 | 国产馆极品诱惑| 亚洲成成熟女人综合一区二区| 高跟丝袜AV专区国产| 三级AV入口| 一区二区三区 丝袜 高跟 美腿| 亚洲国产精品99久久久| 国产超碰欧美| 国产精品蜜乳AV| 欧美日韩青操| 亚洲欧美日韩偷拍色图| 久久久久久少妇| 超碰夫妻97| 国产黄色动态精品| 青青草吊丝| 91是天天| 99啪| 欧美性爱97超碰| 大香交伊人网| 精品超碰中文在线| 女优视频第10页| 色婷婷六月| 99热在线播放| 精品一区二区啪啪啪| 国产 码在线成人网站| 中文字幕av乱伦| 7777欧美成是人在线观看| 亚洲精品天堂久久A∨51成人漫| 眼镜人妻101.com| 狠狠色噜噜狠狠狠狠2018| 啪啪视频免费在线观看| 乱性AV| 思思视频免费看网站| 欧美日韩另类在线| 精品人妻一区二区视频| 日韩一级成人毛片免费观看| 中国国国产一级特黄毛片| 5月婷婷6月六月丁香| 久久东京国产精品视频| 欧美国产日韩清纯唯美| 亚洲天堂人妻一区二区| 天天综合网91入口| 九一综合网| 国产夫妻性生活视频| 香蕉精品二区二区| 97免费视频在线观看| 久久久久久99AV无码免费网站| 国产精品福利视频播放| 网页导航五月天免费一二三区 | 91天天美女| 99精品九九九九九九| 91精品国产一区三一| 被窝影院午夜看片无码| 操操逼操操逼操操逼逼| 99色热| 亚洲男人天堂网久久| 色制服丝袜夫妻av一区| 亚洲欧美97| 亚洲国产成人精品久久久国产成人一区二区 | 成人热久久精品| 福利大香蕉| 欧美性色网| 欧美一区二区福利在线| 丁香婷婷九月| 蜜桃视频一区二区三区在线观看| 激情文学小说一区二区| 99久久久无码国产精品性啊聊| 亚洲国产婷婷在线播放| 99热在线播放| 国产第二页| 性91| 国产第25页在线观看| 久久女人一区二区三区| 色拍偷亚洲| 9久精品| 97欧美性爱| 五月天黄色av| 91综合天天看| 欧美日韩色综合网| 人妻激情另类| 久草线上视频免费看| 边做饭边操逼逼| 97久久超碰| 欧美国产有色电影| 欧美后入| 色情综合网| 国产精品午夜福利视频| 国产成人欧美精品在线| 欧美一级色| 蜜臀无码一区二区| 青草草免费网站av| 中文一区二区婷婷视频| 亚洲综合有码| 色嗨嗨在线| 97久久精品国产| 色综91| 91热爆在线| 劲爆欧美人妖三区91| 人人人干干人人干| 99在线精品视频| 久久r精品| 99精品久久久久久久婷婷| 天天干天天日天天射黄色大片| 久久内射| 涩五月婷婷| 2019男人的天堂| 在线综合色| 青青草色插素人| 国产精品久久久久久久电影渣男| 欧美三级一级| 日韩在线国产字幕| 天天综合网国产| 天天做天天爱| 啪啪91| 欧美一级A一级a爱片久久| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 97免费在线观看| 噜噜噜狠狠色综合| 青娱乐黄色录像| 狠狠爱综合网| 美女啊啊啊啊啊| 色婷婷在线视频| 亚洲少妇视频| 欧美美女自慰一区二区三区| 在线不欧美| 天天摸天天插天天日| 1240青青草一区二区三区视频天爱| 99视频内射三四| 久久尹人大香焦视| 色综合98| 国产一区二区成人av在线播放| 久久综合久久综合人久久夜精品| 天天视频网站黄| 熟女欧美日韩综合婷婷| 国模不卡| 狠狠色五月亚洲91| 女优视频第10页| 插入逼91| 九九热在线精品视频| 男人高清无码一区二区| 久久精品女同亚洲女同13| 亚洲色欲天天人妻无码系列专区| 亚洲性天堂| 中文字幕视频2区| 波多野结衣一级视频| 丰满人妻一区二区中文| 成人精品在线| 人妻精品视频一区二区三区| 天操老女人| 日欧操屄视频| 日韩欧美大片免费高清啪啪| 亚洲色情在线影视| 骚逼高潮久久精品| 国产精品免费1区2区视频| 老女人碰碰在线碰碰视频| 国产超碰| 欧美成人A√在线一区二区| 国产精品久久久999| 极品极品色影院| 欧美日韩在线视频网站| 日本一久是| 91国产精品在线看| 26uuu偷拍亚洲欧洲综合| 久操免费电影| 丝袜视频一区二区在线播放国产中文| 国产真实野战在线视频| av亚欧| 欧美激情亚洲情色| 蜜桃久久久久久| 久久男女激情视频网站| 亚洲色婷婷久久91| 日韩欧美中文字亚洲慕| 鸥美插入视频| 久操大香蕉手机视频在线看| 亚洲一级性爱视频免费看| 亚洲中文字幕熟女少妇一区二区| 婷婷五月天无码| 亚洲天天艹| 久久99人妖视频国产| 亚洲欧美日韩偷拍色图| 欧美 日韩第一性色| 97超碰热线| 九九热超碰| 亚洲一级特黄大片在线播放91| 亚洲欧美天堂| 综合熟妇一区二区三区| 老女人碰碰在线碰碰视频| 国产欧美日韩在线观看麻豆传媒公司| 91在线精品| A级片日韩欧美国产欧美视频精选观看| 蜜臀99久久精品久久久久久| AV在线资源| 操我啊啊啊啊啊| 婷婷午夜| 2020国产精品| 亚洲欧综合另类无码一区| 亚洲国产成人精品久久久国产成人一区二区 | 亚洲综合影视| 97在线国产精品| 91精品综合久久久久久五月丁香| 欧美麻豆成人同性GⅤ在线| 收看日本人日bb| 最新日本中文字幕| 好吊色青靑草| 日韩日韩日韩-国产乱码精品一区二区| 欧美日动态视频| 欧美美女在线高潮999| 欧美|91色综合| 99欧美| 婷婷色导航| 精品国产精品一区二区| www.av在线观看| 人妻精品一区二区在线| 特级毛片特黄久久免费看 | 青娱乐妇女性生活| 亚洲人妻五月丁香婷婷| 成人无码欧美一级A片狼牙直播| 日夜尻逼网| 久久久九| 蜜臀99久久国产| 日韩大香蕉AV影片| 麻豆 美女 丝袜 人妻 中文| 国产精品9999| 国产一级高清免费观看| 免费成人自拍视频在线| 亚洲精品一区二区日本| 亚洲综合电影| 乱伦强奸区日韩| 亚洲第一页第二页激情| 97操| 综合影院永久入口国产| 亚洲 小说 欧美 激情 另类| 久久久久久亚洲Av无码精| 国产午夜精品理论片一二三区区| 69精品少妇一区二区三区蜜桃| 大香蕉久操| 婷婷香蕉欧美在线一区二区三区 | 日本高清视频xxxx| 欧美激情视频在线一区| 欧美极品性爱天天射| 成年人黄色小视频网站| 熟女人妻一区二区三区| 亚洲精品乱码久久久久久蜜桃麻豆| 久久99精品视频| 成人看片网站| 嗯嗯嗯啊啊啊操的我好爽| 欧美超碰96| 日韩 欧美 国产 麻豆| 97天天插| 欧美日韩1234| 先锋影音av先锋一区| 韩国成人精品久久久免费看| 欧美一区二区三区日韩| 久久久久久亚洲Av无码| 亚洲午夜福利视频| www.夜夜| 日日黄色三级网站| 果冻传媒A片一二三区| 欧洲人妻视频| 操b在线观看| 日韩精品永久在线观看| 99热在线播放| 传媒免费一区二区三区| 亚洲AV色图一区| 亚洲人妻在线精品| 色在线亚洲视频www| 婷婷亚洲综合| 色哟哟-国产专区| AV在线播放网址| 午夜精品久久久| 在线强奷到舒服的无码视频 | 日韩欧美综合激情| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 岛国黄片网站| 99久久精品无码一区二区| 综合色图区| 最新精品久久蜜桃| 99热这里只有精品18| 中文字幕,人妻,日韩| 狠狠综合网| www.婷婷| 视频二区熟女人妻| 中文久久| 精品超碰国产| 精品人妻视频一区二区三区蜜桃视频| 狠狠色五月亚洲91| 国产最新小视频在线播放下载| 亚洲超碰在线| 性色av一区二区| 欧美91精品国产自产| 午夜爽爽爽在线观看永久入口姬片| 热天堂一区二区| 亚洲 中文 欧美 日韩 在线 | 国产热av| 高清国产成人无码| 猛交交| 精品国产99999| 人人操人人操人人人操| 九月AV| 欧美色图综合网| 99操碰| 久久超碰97中文字幕| 91老女人| 多乙久久久久久| 热久日综合| 欧综合网| 97最新在线播放视频| 97视频900| 被操高清无码视频| 精品国产嫩穴视频| 另类小说欧美激情校园春色| 久久精品亚洲成a人天堂| 97国产天堂岛| 国产对白刺激视频| 一牛影视久久久一区二区三区| 日韩综合色图| 久热这里| 中文久久久| 99精品视频在线观看| 97久久超碰日韩精品| 亚洲AV无码黄色强奸| 亚洲综合69| 翔田千里Av在线| 四虎国产成人精品免费一女五男| 日本一级真人黄色性爱视频| 精品少妇一区二区三区免费观看| 91中出视频| 日本熟妇一区二区三区| 欧美草草高清日韩视频| 99精品久久| 凹凸 69堂 在线播放| 玖玖婷婷五月天| 中文字幕欧美精品亚洲日韩蜜臀| 日本九九九九| 亚洲一二三四区在线免费看视频| 国产小u女在线观看| 午夜福利 成人 91| 色色色999| 丁香九月婷婷| 成人贴图日韩欧美| 在线中文字幕| 久草综合视频| 日韩欧美字幕亚洲一区二区| 久久久96精品| 韩日精品四区| 粉嫩av在线| 欧美97在线观看| 免费观看国产小粉嫩喷水精品午| 亚洲天堂资源| 午夜天堂啪啪| 97无码视频在线播放| 日日A∨| 欧美日本国产日韩激情视频| 精品无码少妇| 毛片视频白嫩| 日韩欧美国产一区二区三区四区| 欧洲亚洲综合| 操婷婷逼| 男人天堂欧美| 欧美男人亚洲天堂| 自拍鲍鱼一区在线高清观看免费| 91这里只有精品| 亚洲综合性网址| 久操不卡视频| 亚洲97成人在线观看| 久久久久久久久久精| 久热免费视频| 1级午夜影院费免区| 亚洲激情深爱文学小说网站| 激情五月综合网| 国产中文字幕在线点播| 日日日日做夜夜夜夜做无码97| 五月天色色色| 天天草天天日| 亚洲s色图| 尻女朋友一夜| 日韩丰满熟妇| 亚洲天天操| 久久久久国产| 92福利社视频| 亚洲AV无码久久久国产精品| 欧州一区二区三区四区| 天天天堂影视日韩亚洲91| 美女人妻色网站| 高清无码一区二区三区| 无码二级三级| 欧洲精品一区二区三区| 久久 国产精品 一区| 香蕉国产精品麻豆亚洲欧美日韩| 干妹子| 色色热| 色欲蜜臀AV| 99精品国产户外露出| 日韩欧美~中文字| 日本999精品| 天天做天天爱| 国产h片在线观看视频| 欧美黑人168页欧美黑人167| 美女自卫慰黄网站免费| 97aiaiai| 久久精品一区一起草| 欧美97日韩| 亚洲熟女国产综合另类| www…国产操逼| 欧美性爱1080p| 天天看夜夜看日日干| 91伊人| 极品色电影院| 96爱综合| 啊好爽受不了无码| 日韩三级一区| 五月天婷婷激情| 欧美激情视频在线一区| 欧美性xxxxx狂欢| 欧美少妇色图| 国产精品另类| 欧美狠狠狠| 精人妻无码一区二区三区伊人直播| 午夜成人福利影视| 亚洲欧美大香蕉| 日本午夜久久电影| 中文字幕精品日韩中文字幕| 九九热久久99精品re| 呦呦一区| 97爱爱| 国产精品电影大全| 人人操人人肉久久精品| 四虎影视欧美| 91日产桃蜜| 久久久久久久久久久久97| 久久大香蕉97| 国产乱码久久久| 日日躁天天躁狠狠躁| 久草线上视频免费看| 亚洲久久东京热一二三四五区视频| 欧美白嫩女HD| 国产美女激情| 国产乱青青草久久| 极品AV网站在线观看| 狠操91,com| 91欧美综合在线| 日本熟妇精品九九| 亚洲男人的天堂网| 加勒比东京热五月天天堂网| 欧美 亚洲 综合 制服 另类| 四虎在线播放| 天美一区在线| 国内一区二区三区| 日韩人人精品| 免费男人的天堂| 久草色在线观看| 亚洲色婷婷综合久久久久中文| 日产精品久久久一区二区| 色噜噜人妻av中文字幕| 啊啊啊啊免费视频| 少妇综合| 7777奇米影视久久| 小视频国产| 欧美十八禁导航成人| 国产成人bd在线观看| 自偷自拍的亚洲视频| 婷婷五月天激情网| 亚洲无码99| 人妻碰碰碰碰碰碰| 色 婷97| 欧洲亚洲综合| 欧美碰碰综合色| 国产精品国产亚洲区艳妇糸列| 三级特黄60分钟播放| 日本视频在线观看污污污| 五月丁香亭亭| 日日夜夜骚| 国内精品久9| 福利视频香蕉免费一区二区在线| 国模私拍一区二区三区神乳| 久久激情综合| 色婷婷五月天| 性交一区二区在线播放| 91制服丝袜中文字幕| 国产无码三级视频在线观看| 欧亚性爱啪啪| 嗯嗯嗯好爽| 亚州色图狠狠干| 麻豆AV一区二区| 久久久九| 岛国激情视频在线观看| 丁香五月激情综合国产| 夜夜狼人妻| 大逼色网站| 性爱视频免费网址| 91综合在线| 久久亚洲天天做| 欧美亚洲首页| 激情综合二| 91亚·色| 97在线亚洲| 日韩中文字幕国产| 婷婷操逼| 亚洲熟女乱色一区二区三区久久久 | 乱伦3P视频| 97WW精品| 啊啊啊啊啊舒服| 91人妻最真实刺激绿帽| 8050无码八戒| 欧美激情片一区二区| 大鸡巴久久| 操逼不卡中文字幕| 国产农村妇女精品一二区| 欧美成人精品一区二区男人蜜臀| 麻豆国产97在线| 五月天婷婷色色| 久久久久96| 操婢日韩| 91N五十路| 日本道人妻久久久在线不卡色视频| 国产精品一区二区亚洲人成毛片 | 亚洲天堂男| 久久激情亚洲精品无码?V| 在线观看A啊啊啊| 天天日熟妇| 国产精品熟女九色九色蜜臀| 99超级碰免费视频| 香蕉免费一区二区三区不读| 欧美不卡五十路| 中国女人内射6XXXXX| 蜜臀AV一区二区三区激情综合| 黑丝制服中文字幕| 欧美的性爱网站免费| 69精品在线| 麻豆 美女 丝袜 人妻 中文| 国产精品久久伊人| 天堂涩涩| 看免费的黄片| 亚洲污一污二| 久久久久久99AV无码免费网站| 亚洲五月丁香花狠狠干一区二区三区| 暴力av在线| www.色婷婷色综合| 日韩人人精品| 欧美在线播放aaaa| 99热8| 岛国视频免费在线观看| 亚洲精品不卡一二三区| 久久男人精品| 亚洲精品 欧美精品| 色色色欧美| 日影院久久婷婷夜夜网| 粉嫩粉嫩一区性色AV片| 97精品中文字幕| 欧美日韩亚洲一区二区在线观看| 青青草男人天堂| 国产sv美女内射| 日本久久精品| 97在线观| 日韩丝袜二区| 超碰九九| 九九热超碰| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 亚州五月| 中文字幕精品资源在线| 俺也射| 女人被添高潮免费视频| 狠狠入| 嗯嗯啊啊视频在线看| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 精品无码一二三四区| 日本免费一级AAA大片器| 国产精品3| 天天做日日做天天欢。| 久久9免费视频| 情侣开房子拍 日韩无码 女的很漂亮| 超碰欧美97| 中文字幕少妇色| 国产一级操B视频| 超碰97综合网| 97中文天堂| 久久专区| 美女丝袜激情小说| www.色婷婷色综合| 老熟女综合| 亚洲天天影视综合网| 播播亚洲小说亚洲| 精品人妻高清麻豆av| 久视频在线观看| 激情国产乱伦Av| 亚洲AV色图| 女生自91网站| 极品白嫩美女白浆成人福利在线看| 中文三一区| 裸体美女久久久| 六十路日本| 精品国产av一区二区三区四区入口| 学生妹天天看| 大奶啊啊好爽 | 人妻熟女一区二区| 五月天激情国产综合婷婷婷| 国产高清精品一区二区三区毛片| 中文字幕AV片| a久久| 思思热er精品视频| 91无码西班牙视频在线| 天堂射| 久操99| 99ri在线视频| 99re免费视频精品全部| 91欧美经典| Julia Annxxxxx| 97爱免费插| 男男H黄动漫啪啪无遮挡网站| 操啊国产| 日本黄色天堂| 爽爽爽免费视频| 五月香婷婷| 国产精品激情久久久久久久| 91 丝袜在线播放| 欧美手机在线综合| 精品无码一区二区| 国内三级自拍小视频在线观看| 伊人五月天婷婷| 久久啊啊| 人人妻人人色一区二区三区| 天堂在线一区二区| 夜夜嗨一区二区| 亚洲成人日韩小说| 一区二区视频在看| 久久熟女久| 东北女人的毛片| 中文字幕日韩综合| 成人性爱美曰韩| 日韩一区二区精彩视频| 91色插| 伊人国产av| 超碰人人超在线观看| 成人精品一区二区91毛片不卡| 国产一线二线三线av| 亚洲日韩青青草色月| AV天天综合| 97人肏| 另类小说五月天| JULIA一区二区三区在线播放| 日韩乱伦影音先锋| 国模无码人体一区二区三| 黄色无码高清黄色无码网站| 精精品人妻一区二区三区| 国内精品久9| 亚洲色图片区| 中文子幕一二三| 成人欧美日超碰| 曰韩香蕉97| 无码操逼天堂| 91欧美综合在线| 99热 按摩 日韩| 欧美变态激情网| 熟女欧美日韩综合婷婷| 久久亚州高清| 91久久国产综合精品| 91nbbbbbb| 熟女一区二区| 亚州色图欧美| 加勒比伊人影院| 欧美天天谢综合网| 人人手机欧洲亚洲国产人妻| 99精品在线| 国产美女在线精品免费看| 碰碰97| 日韩综合无码一区久久92| 日韩精品资源专区二区| 在线天堂资源亚洲| 天天肏夜夜肏| 色图四区| 麻豆一区二区AV天美| 新91视频.cmp| 亚洲天堂少妇| 色噜噜日韩精品| 国语精品对白| 亚洲欧美国产va在线播放频| 欧美97超碰| 一区二区三区国产在线播放| 亚洲激情在线观看一区| 亚洲黄色a级片| 久久久国产成人一区二区三区在线| 强奸a片网| 综精品久久久aaaa| 亚av顶级裸体一区二区三区四区五区 | 少妇熟女视频一二三区| 九九九精品色乱九九九| 91精品婷婷国产综合久久| 超碰色老头| 亚洲天堂一区二区久久| 激情综合二| 婷婷激情五月| 日本精品国产视频| 日日夜夜草草草| 在线二区不卡| 操国产逼| 国产精品久久久鸭无码的功能| 人妻啊啊人妻啊啊| 中文字幕视频免费|