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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Netty】NIO 网络编程 聊天室案例

發布時間:2025/6/17 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Netty】NIO 网络编程 聊天室案例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、 NIO 聊天室需求
  • 二、 NIO 聊天室 服務器端 代碼分析
  • 三、 NIO 聊天室 客戶端 代碼分析
  • 四、 NIO 聊天室 服務器端 完整代碼
  • 五、 NIO 聊天室 客戶端 完整代碼
  • 六、 NIO 聊天室 運行





一、 NIO 聊天室需求



1 . NIO 聊天室需求 :


① 服務器 客戶端 通信 : 服務器 與 客戶端 實現 雙向通信 ; 服務器可以寫出數據到客戶端 , 也能讀取客戶端的數據 ; 客戶端可以寫出數據到服務器端 , 也可以讀取服務器端的數據 ;

② 多人聊天 : 一個服務器 與 多個客戶端 進行數據交互 , 同時還要實現將某一個客戶端的數據轉發給其它客戶端 ;

③ 用戶狀態監測 : 服務器可以檢測用戶的 上線 , 離線 狀態 ;



2 . 數據傳輸細節 :


① 上線監聽 : 當有客戶端連接時 , 服務器檢測到用戶上線 , 服務器將該用戶上線狀態通知給其它客戶端 ;

② 下線監聽 : 如果有客戶端離線 , 服務器檢測到連接斷開 , 服務器將該用戶離線的狀態通知給聊天室的其它客戶端 ;

③ 聊天信息轉發 : 客戶端發送消息時 , 服務器端接收到該數據 , 并轉發給聊天室的其它用戶客戶端 ;





二、 NIO 聊天室 服務器端 代碼分析



服務器端的連接管理流程 : 創建 服務器套接字通道 ( ServerSocketChannel ) , 將該通道注冊給 選擇器 ( Selector ) , 選擇器開啟監聽 , 監聽到客戶端連接 , 就創建一個 套接字通道 ( SocketChannel ) , 注冊給選擇器 ;


服務器端的消息轉發流程 : 服務器端收到客戶端發送的消息 , 將該消息轉發給除該客戶端外的其它客戶端 , 從選擇器中可以獲取到所有的 通道 , 注意 屏蔽 服務器套接字通道發送本消息的客戶端對應的通道 ;


服務器連接監聽 : 當客戶端與服務器連接成功 , 即觸發注冊給 選擇器 ( Selector ) 的 服務器套接字通道 ( ServerSocketChannel ) 的 SelectionKey.OP_ACCEPT 事件 , 表示有客戶端連接服務器成功 , 用戶上線 ;


服務器斷開連接監聽 : 當服務器端與客戶端讀寫數據出現異常時 , 說明該客戶端離線 , 在異常處理代碼中可以判定某個客戶端離線 ;



1 . 服務器套接字通道 : 調用 open 靜態方法創建服務器套接字通道 , 并綁定 8888 端口 , 設置非阻塞網絡通信模式 ;

// 創建并配置 服務器套接字通道 ServerSocketChannel serverSocketChannel = ServerSocketChannel.open(); serverSocketChannel.socket().bind(new InetSocketAddress(PORT)); serverSocketChannel.configureBlocking(false);

2 . 服務器端選擇器 : 調用 open 靜態方法獲取 選擇器 , 注冊之前創建的 服務器套接字通道 ;

// 獲取選擇器, 并注冊 服務器套接字通道 ServerSocketChannel selector = Selector.open(); serverSocketChannel.register(selector, SelectionKey.OP_ACCEPT);

3 . 監聽事件 : 阻塞監聽, 如果有事件觸發, 返回觸發的事件個數 ; 被觸發的 SelectionKey 事件都存放到了 Set<SelectionKey> selectedKeys 集合中 ;

// 阻塞監聽, 如果有事件觸發, 返回觸發的事件個數 // 被觸發的 SelectionKey 事件都存放到了 Set<SelectionKey> selectedKeys 集合中 // 下面開始遍歷上述 selectedKeys 集合 try {int eventTriggerCount = selector.select(); } catch (IOException e) {e.printStackTrace(); }

4 . 處理客戶端連接事件 : 接受客戶端連接 , 獲取 網絡套接字通道 ( SocketChannel ) , 并注冊給 選擇器 ( Selector ) , 監聽 SelectionKey.OP_READ 數據讀取事件 ;

// 客戶端連接服務器, 服務器端需要執行 accept 操作 if (key.isAcceptable()) {//創建通道 : 為該客戶端創建一個對應的 SocketChannel 通道//不等待 : 當前已經知道有客戶端連接服務器, 因此不需要阻塞等待//非阻塞方法 : ServerSocketChannel 的 accept() 是非阻塞的方法SocketChannel socketChannel = null;try {socketChannel = serverSocketChannel.accept();//如果 ServerSocketChannel 是非阻塞的, 這里的 SocketChannel 也要設置成非阻塞的//否則會報 java.nio.channels.IllegalBlockingModeException 異常socketChannel.configureBlocking(false);//注冊通道 : 將 SocketChannel 通道注冊給 選擇器 ( Selector )//關注事件 : 關注事件時讀取事件, 服務器端從該通道讀取數據//關聯緩沖區 :socketChannel.register(selector, SelectionKey.OP_READ, ByteBuffer.allocate(1024));System.out.println(String.format("用戶 %s 進入聊天室", socketChannel.getRemoteAddress()));} catch (IOException e) {e.printStackTrace();} }

5 . 處理客戶端消息轉發事件 :


① 讀取客戶端上傳的數據 : 通過 SelectionKey 獲取 通道緩沖區 , 使用 套接字通道 ( SocketChannel ) 讀取 緩沖區 ( ByteBuffer ) 中的數據 , 然后記錄顯示該數據 ;

// 獲取 通道 ( Channel ) : 通過 SelectionKey 獲取 SocketChannel socketChannel = (SocketChannel) key.channel(); // 獲取 緩沖區 ( Buffer ) : 獲取到 通道 ( Channel ) 關聯的 緩沖區 ( Buffer ) ByteBuffer byteBuffer = (ByteBuffer) key.attachment(); String remoteAddress = null; String message = null; try {// 讀取客戶端傳輸的數據int readCount = socketChannel.read(byteBuffer);byte[] messageBytes = new byte[readCount];byteBuffer.flip();byteBuffer.get(messageBytes);// 處理讀取的消息message = new String(messageBytes);//重置以便下次使用byteBuffer.flip();remoteAddress = socketChannel.getRemoteAddress().toString();System.out.println(String.format("%s : %s", remoteAddress, message)); } catch (IOException e) {//e.printStackTrace();// 如果此處出現異常, 說明該客戶端離線了, 服務器提示, 取消選擇器上的注冊信息, 關閉通道try {System.out.println( String.format("%s 用戶離線 !", socketChannel.getRemoteAddress()) );key.cancel();socketChannel.close();//繼續下一次循環continue;} catch (IOException ex) {ex.printStackTrace();} }

② 轉發給其它客戶端 :選擇器 ( Selector )keys 集合 中獲取所有注冊的通道 , 然后除 ServerSocketChannel發送本信息的 客戶端對應的 SocketChannel 通道 之外 , 其它所有的通道都轉發一份聊天信息 ;

// 向其它客戶端轉發消息, 發送消息的客戶端自己就不用再發送該消息了 // 遍歷所有注冊到 選擇器 Selector 的 SocketChannel Set<SelectionKey> selectionKeys = selector.keys(); for (SelectionKey selectionKey : selectionKeys) {// 獲取客戶端對應的 套接字通道// 這里不能強轉成 SocketChannel, 因為這里可能存在 ServerSocketChannelChannel channel = selectionKey.channel();// 將自己排除在外, 注意這里是地址對比, 就是這兩個類不能是同一個地址的類// 這個類的類型必須是 SocketChannel, 排除之前注冊的 ServerSocketChannel 干擾if (socketChannel != channel && channel instanceof SocketChannel) {// 將通道轉為 SocketChannel, 之后將字符串發送到客戶端SocketChannel clientSocketChannel = (SocketChannel) channel;// 寫出字符串到其它客戶端try {clientSocketChannel.write(ByteBuffer.wrap( ( remoteAddress + " : " + message ).getBytes()));} catch (IOException e) {//e.printStackTrace();// 如果此處出現異常, 說明該客戶端離線了, 服務器提示, 取消選擇器上的注冊信息, 關閉通道try {System.out.println( String.format("%s 用戶離線 !", clientSocketChannel.getRemoteAddress()) );selectionKey.cancel();clientSocketChannel.close();} catch (IOException ex) {ex.printStackTrace();}}} }



三、 NIO 聊天室 客戶端 代碼分析



客戶端的連接與數據接收 : 客戶端的工作是連接服務器 , 得到與服務器通信的 套接字通道 ( SocketChannel ) , 注冊該通道到 選擇器 ( Selector ) , 監聽 SelectionKey.OP_READ 讀取數據事件 , 接收到數據后顯示即可 ;



1 . 連接服務器 : 連接服務器 , 并設置網絡通信非阻塞模式 ;

// 創建并配置 服務器套接字通道 ServerSocketChannel socketChannel = SocketChannel.open(new InetSocketAddress(SERVER_ADDRESS, PORT)); socketChannel.configureBlocking(false);

2 . 獲取選擇器并注冊通道 : 獲取 選擇器 ( Selector ) , 并將 套接字通道 ( SocketChannel ) 注冊給該選擇器 ;

// 獲取選擇器, 并注冊 服務器套接字通道 ServerSocketChannel selector = Selector.open(); //注冊通道 : 將 SocketChannel 通道注冊給 選擇器 ( Selector ) //關注事件 : 關注事件時讀取事件, 服務器端從該通道讀取數據 //關聯緩沖區 : socketChannel.register(selector, SelectionKey.OP_READ, ByteBuffer.allocate(1024));

3 . 監聽服務器端下發的消息 : 阻塞監聽, 如果有事件觸發, 返回觸發的事件個數 ; 被觸發的 SelectionKey 事件都存放到了 Set<SelectionKey> selectedKeys 集合中 ;

// 阻塞監聽, 如果有事件觸發, 返回觸發的事件個數 // 被觸發的 SelectionKey 事件都存放到了 Set<SelectionKey> selectedKeys 集合中 // 下面開始遍歷上述 selectedKeys 集合 try {int eventTriggerCount = selector.select(); } catch (IOException e) {e.printStackTrace(); }

4 . 處理服務器端發送的數據 : 如果監聽到服務器下發數據 , 開始遍歷當前觸發事件的通道 , 調用該通道讀取數據到緩沖區 , 之后顯示該數據 ;

// 處理事件集合 : // 獲取當前發生的事件的 SelectionKey 集合, 通過 SelectionKey 可以獲取對應的 通道 Set<SelectionKey> keys = selector.selectedKeys(); // 使用迭代器迭代, 涉及到刪除操作 Iterator<SelectionKey> keyIterator = keys.iterator(); while (keyIterator.hasNext()) {SelectionKey key = keyIterator.next();// 根據 SelectionKey 的事件類型, 處理對應通道的業務邏輯// 客戶端寫出數據到服務器端, 服務器端需要讀取數據if (key.isReadable()) {// 獲取 通道 ( Channel ) : 通過 SelectionKey 獲取SocketChannel socketChannel = (SocketChannel) key.channel();// 獲取 緩沖區 ( Buffer ) : 獲取到 通道 ( Channel ) 關聯的 緩沖區 ( Buffer )ByteBuffer byteBuffer = (ByteBuffer) key.attachment();String message = null;try {// 讀取客戶端傳輸的數據int readCount = socketChannel.read(byteBuffer);byte[] messageBytes = new byte[readCount];byteBuffer.flip();byteBuffer.get(messageBytes);// 處理讀取的消息message = new String(messageBytes);byteBuffer.flip();System.out.println(String.format(message));} catch (IOException e) {//e.printStackTrace();// 客戶端連接斷開key.cancel();try {socketChannel.close();} catch (IOException ex) {ex.printStackTrace();}}// try}// if (key.isReadable())



四、 NIO 聊天室 服務器端 完整代碼



package kim.hsl.nio.chat;import java.io.IOException; import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.*; import java.util.Iterator; import java.util.Set;/*** 聊天室服務器端** @author hsl* @date 2020-05-29 17:24*/ public class Server {/*** 服務器監聽的端口號*/public static final int PORT = 8888;/*** 監聽 ServerSocketChannel 通道和各個客戶端對應的 SocketChannel 通道*/private Selector selector;/*** 服務器端的套接字通道, 相當于 BIO 中的 ServerSocket*/private ServerSocketChannel serverSocketChannel;/*** 初始化服務器相關操作*/public Server() {initServerSocketChannelAndSelector();}/*** 初始化 服務器套接字通道 和*/private void initServerSocketChannelAndSelector() {try {// 創建并配置 服務器套接字通道 ServerSocketChannelserverSocketChannel = ServerSocketChannel.open();serverSocketChannel.socket().bind(new InetSocketAddress(PORT));serverSocketChannel.configureBlocking(false);// 獲取選擇器, 并注冊 服務器套接字通道 ServerSocketChannelselector = Selector.open();serverSocketChannel.register(selector, SelectionKey.OP_ACCEPT);} catch (IOException e) {e.printStackTrace();}}/*** Selector 開始執行 監聽工作*/private void selectorStartSelectOperation() {System.out.println("服務器端啟動監聽 :");while (true) {// 阻塞監聽, 如果有事件觸發, 返回觸發的事件個數// 被觸發的 SelectionKey 事件都存放到了 Set<SelectionKey> selectedKeys 集合中// 下面開始遍歷上述 selectedKeys 集合try {int eventTriggerCount = selector.select();} catch (IOException e) {e.printStackTrace();}// 當前狀態說明 :// 如果能執行到該位置, 說明 selector.select() 方法返回值大于 0// 當前有 1 個或多個事件觸發, 下面就是處理事件的邏輯// 處理事件集合 :// 獲取當前發生的事件的 SelectionKey 集合, 通過 SelectionKey 可以獲取對應的 通道Set<SelectionKey> keys = selector.selectedKeys();// 使用迭代器迭代, 涉及到刪除操作Iterator<SelectionKey> keyIterator = keys.iterator();while (keyIterator.hasNext()) {SelectionKey key = keyIterator.next();// 根據 SelectionKey 的事件類型, 處理對應通道的業務邏輯// 客戶端連接服務器, 服務器端需要執行 accept 操作if (key.isAcceptable()) {//創建通道 : 為該客戶端創建一個對應的 SocketChannel 通道//不等待 : 當前已經知道有客戶端連接服務器, 因此不需要阻塞等待//非阻塞方法 : ServerSocketChannel 的 accept() 是非阻塞的方法SocketChannel socketChannel = null;try {socketChannel = serverSocketChannel.accept();//如果 ServerSocketChannel 是非阻塞的, 這里的 SocketChannel 也要設置成非阻塞的//否則會報 java.nio.channels.IllegalBlockingModeException 異常socketChannel.configureBlocking(false);//注冊通道 : 將 SocketChannel 通道注冊給 選擇器 ( Selector )//關注事件 : 關注事件時讀取事件, 服務器端從該通道讀取數據//關聯緩沖區 :socketChannel.register(selector, SelectionKey.OP_READ, ByteBuffer.allocate(1024));System.out.println(String.format("用戶 %s 進入聊天室", socketChannel.getRemoteAddress()));} catch (IOException e) {e.printStackTrace();}}// 客戶端寫出數據到服務器端, 服務器端需要讀取數據if (key.isReadable()) {// 獲取 通道 ( Channel ) : 通過 SelectionKey 獲取SocketChannel socketChannel = (SocketChannel) key.channel();// 獲取 緩沖區 ( Buffer ) : 獲取到 通道 ( Channel ) 關聯的 緩沖區 ( Buffer )ByteBuffer byteBuffer = (ByteBuffer) key.attachment();String remoteAddress = null;String message = null;try {// 讀取客戶端傳輸的數據int readCount = socketChannel.read(byteBuffer);byte[] messageBytes = new byte[readCount];byteBuffer.flip();byteBuffer.get(messageBytes);// 處理讀取的消息message = new String(messageBytes);//重置以便下次使用byteBuffer.flip();remoteAddress = socketChannel.getRemoteAddress().toString();System.out.println(String.format("%s : %s", remoteAddress, message));} catch (IOException e) {//e.printStackTrace();// 如果此處出現異常, 說明該客戶端離線了, 服務器提示, 取消選擇器上的注冊信息, 關閉通道try {System.out.println( String.format("%s 用戶離線 !", socketChannel.getRemoteAddress()) );key.cancel();socketChannel.close();//繼續下一次循環continue;} catch (IOException ex) {ex.printStackTrace();}}// 向其它客戶端轉發消息, 發送消息的客戶端自己就不用再發送該消息了// 遍歷所有注冊到 選擇器 Selector 的 SocketChannelSet<SelectionKey> selectionKeys = selector.keys();for (SelectionKey selectionKey : selectionKeys) {// 獲取客戶端對應的 套接字通道// 這里不能強轉成 SocketChannel, 因為這里可能存在 ServerSocketChannelChannel channel = selectionKey.channel();// 將自己排除在外, 注意這里是地址對比, 就是這兩個類不能是同一個地址的類// 這個類的類型必須是 SocketChannel, 排除之前注冊的 ServerSocketChannel 干擾if (socketChannel != channel && channel instanceof SocketChannel) {// 將通道轉為 SocketChannel, 之后將字符串發送到客戶端SocketChannel clientSocketChannel = (SocketChannel) channel;// 寫出字符串到其它客戶端try {clientSocketChannel.write(ByteBuffer.wrap( ( remoteAddress + " : " + message ).getBytes()));} catch (IOException e) {//e.printStackTrace();// 如果此處出現異常, 說明該客戶端離線了, 服務器提示, 取消選擇器上的注冊信息, 關閉通道try {System.out.println( String.format("%s 用戶離線 !", clientSocketChannel.getRemoteAddress()) );selectionKey.cancel();clientSocketChannel.close();} catch (IOException ex) {ex.printStackTrace();}}}}}// 處理完畢后, 當前的 SelectionKey 已經處理完畢// 從 Set 集合中移除該 SelectionKey// 防止重復處理keyIterator.remove();}}}public static void main(String[] args) {Server server = new Server();server.selectorStartSelectOperation();} }



五、 NIO 聊天室 客戶端 完整代碼



package kim.hsl.nio.chat;import java.io.IOException; import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.*; import java.util.Iterator; import java.util.Scanner; import java.util.Set;public class Client {/*** 服務器地址*/public final static String SERVER_ADDRESS = "127.0.0.1";/*** 服務器監聽的端口號*/public static final int PORT = 8888;/*** 監聽 SocketChannel 通道的 選擇器*/private Selector selector;/*** 服務器端的套接字通道, 相當于 BIO 中的 ServerSocket*/private SocketChannel socketChannel;public Client() {initClientSocketChannelAndSelector();}/*** 初始化 服務器套接字通道 和*/private void initClientSocketChannelAndSelector() {try {// 創建并配置 服務器套接字通道 ServerSocketChannelsocketChannel = SocketChannel.open(new InetSocketAddress(SERVER_ADDRESS, PORT));socketChannel.configureBlocking(false);// 獲取選擇器, 并注冊 服務器套接字通道 ServerSocketChannelselector = Selector.open();//注冊通道 : 將 SocketChannel 通道注冊給 選擇器 ( Selector )//關注事件 : 關注事件時讀取事件, 服務器端從該通道讀取數據//關聯緩沖區 :socketChannel.register(selector, SelectionKey.OP_READ, ByteBuffer.allocate(1024));} catch (IOException e) {e.printStackTrace();}}/*** 向服務器端發送消息* @param message*/public void sendMessageToServer(String message){try {socketChannel.write(ByteBuffer.wrap(message.getBytes()));} catch (IOException e) {e.printStackTrace();}}public void readMessageFromServer(){// 阻塞監聽, 如果有事件觸發, 返回觸發的事件個數// 被觸發的 SelectionKey 事件都存放到了 Set<SelectionKey> selectedKeys 集合中// 下面開始遍歷上述 selectedKeys 集合try {int eventTriggerCount = selector.select();} catch (IOException e) {e.printStackTrace();}// 當前狀態說明 :// 如果能執行到該位置, 說明 selector.select() 方法返回值大于 0// 當前有 1 個或多個事件觸發, 下面就是處理事件的邏輯// 處理事件集合 :// 獲取當前發生的事件的 SelectionKey 集合, 通過 SelectionKey 可以獲取對應的 通道Set<SelectionKey> keys = selector.selectedKeys();// 使用迭代器迭代, 涉及到刪除操作Iterator<SelectionKey> keyIterator = keys.iterator();while (keyIterator.hasNext()) {SelectionKey key = keyIterator.next();// 根據 SelectionKey 的事件類型, 處理對應通道的業務邏輯// 客戶端寫出數據到服務器端, 服務器端需要讀取數據if (key.isReadable()) {// 獲取 通道 ( Channel ) : 通過 SelectionKey 獲取SocketChannel socketChannel = (SocketChannel) key.channel();// 獲取 緩沖區 ( Buffer ) : 獲取到 通道 ( Channel ) 關聯的 緩沖區 ( Buffer )ByteBuffer byteBuffer = (ByteBuffer) key.attachment();String message = null;try {// 讀取客戶端傳輸的數據int readCount = socketChannel.read(byteBuffer);byte[] messageBytes = new byte[readCount];byteBuffer.flip();byteBuffer.get(messageBytes);// 處理讀取的消息message = new String(messageBytes);byteBuffer.flip();System.out.println(String.format(message));} catch (IOException e) {//e.printStackTrace();// 客戶端連接斷開key.cancel();try {socketChannel.close();} catch (IOException ex) {ex.printStackTrace();}}// try}// if (key.isReadable())// 處理完畢后, 當前的 SelectionKey 已經處理完畢// 從 Set 集合中移除該 SelectionKey// 防止重復處理keyIterator.remove();}}public static void main(String[] args) {Client client = new Client();// 接收服務器端數據線程new Thread(new Runnable() {@Overridepublic void run() {while (true){//不停地從服務器端讀取數據client.readMessageFromServer();}}}).start();Scanner scanner = new Scanner(System.in);while (scanner.hasNextLine()){String message = scanner.nextLine();client.sendMessageToServer(message);}} }



六、 NIO 聊天室 運行



按照如下步驟演示聊天室功能 ( 一定要按照順序執行 ) ;


1 . 服務器啟動 : 首先

2 . 設置客戶端多個 : 點擊下圖綠框中的下拉菜單 , 選擇 Edit Configuration , 彈出如下對話框 , 配置 Client 應用 , 勾選 Allow parallel run 選項 , 之后 Client 程序就可以運行多個 , 否則只能運行一個 ;

3 . 客戶端 111 連接 : 運行客戶端程序即可 ;

4 . 客戶端 222 連接 : 運行客戶端程序即可 ;

5 . 客戶端 333 連接 : 運行客戶端程序即可 ;

6 . 客戶端 222 發送消息 :

服務器顯示 : 客戶端 222 將消息發送給服務器 , 服務器顯示該消息 ;


客戶端 111 顯示 : 這是由服務器轉發的客戶端 222 發送的消息 , 客戶端 333 也收到該消息 ;

7 . 客戶端 222 退出 : 終止客戶端 222 程序 , 服務器端檢測到異常 , 就可以將客戶端 222 退出 ;

總結

以上是生活随笔為你收集整理的【Netty】NIO 网络编程 聊天室案例的全部內容,希望文章能夠幫你解決所遇到的問題。

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

一区二区精品在线视频 | 五月婷婷在线观看视频 | 精品久久一 | 808电影| 久久视频这里只有精品 | 丰满少妇久久久 | 五月天天色| 久久免费播放 | 黄av资源| 国产在线91在线电影 | 在线亚洲成人 | av免费福利 | 精品一区二区三区久久久 | 五月情婷婷 | 欧美激情视频在线观看免费 | 天天干,天天操,天天射 | 97视频免费在线看 | 日韩av中文| 免费特级黄色片 | 国产黄色片在线 | 成人xxxx | av网站在线免费观看 | 日本高清中文字幕有码在线 | 久久久久福利视频 | 日韩欧三级 | 欧美成a人片在线观看久 | 一区二区毛片 | www.成人久久 | 久久久夜色 | 成人午夜片av在线看 | 超碰日韩| 日韩有码在线播放 | 亚洲激情在线视频 | 人人爽人人乐 | 一区二区三区国产欧美 | 国产 色| 97在线免费观看视频 | 国产亚洲一区二区三区 | 一区二区不卡高清 | 日韩欧美一区二区三区在线 | 国产四虎影院 | 国产精品入口传媒 | www.夜夜爽 | 日本大尺码专区mv | 亚洲精品在 | 日日夜夜网 | 国产最新91 | 国产91精品在线播放 | 91成人网在线播放 | 中文字幕乱码电影 | 亚洲免费观看视频 | 精品视频在线免费 | 人人玩人人添人人澡超碰 | 国产九九精品视频 | 在线观看视频国产 | 青青草华人在线视频 | 亚洲国产av精品毛片鲁大师 | 色com| 国产精品嫩草55av | 成人小视频在线播放 | 免费日韩 精品中文字幕视频在线 | 午夜av电影院 | 伊人五月综合 | 成年人免费在线 | 黄色高清视频在线观看 | 91视频免费视频 | 国产精品久久久久999 | 一区二区电影在线观看 | 国产精品大尺度 | 国产精品黄色 | 色婷婷免费视频 | 69视频国产| 综合久久2023 | 香蕉久草在线 | 视频一区视频二区在线观看 | 国产成人精品一区二 | 国产精品免费人成网站 | 日韩有码第一页 | 亚洲最大激情中文字幕 | 韩国av一区二区三区在线观看 | 色噜噜日韩精品一区二区三区视频 | 在线观看视频你懂的 | 国产精品对白一区二区三区 | 精品久久久久久久久久国产 | 奇米导航 | 午夜av在线 | 国产精品成人一区二区三区吃奶 | 一区二区三区免费在线 | 国产精品久久久久久久久久久杏吧 | 成人午夜毛片 | 亚洲精品视频一二三 | 狠狠色伊人亚洲综合成人 | av片在线观看免费 | 亚洲春色综合另类校园电影 | 中文字幕免费国产精品 | 久热av| 成人午夜影视 | 日韩黄色免费在线观看 | 成人免费xxxxxx视频 | 天天色天天射天天干 | 欧洲精品亚洲精品 | 免费日韩视 | 久久综合色8888| 亚洲一区动漫 | 91九色在线播放 | 91成人精品一区在线播放 | 久久免费精品视频 | 日韩资源在线播放 | 免费观看国产视频 | 九月婷婷综合网 | 国产成人久久精品77777综合 | 久久免费99 | 成年人精品 | 亚洲精品视频在线免费 | 欧美国产不卡 | 国产精品久久久久久av | 92精品国产成人观看免费 | 中文字幕国产 | 超碰在线公开 | 日本中文一区二区 | 有码视频在线观看 | 日韩在线观看 | 九九av | 亚洲精品日韩在线观看 | 亚洲天天在线日亚洲洲精 | 成人黄色影片在线 | 天天操天天爱天天干 | 日韩av成人 | 五月婷婷天堂 | 国产一区二区三区高清播放 | 国产资源中文字幕 | 成人片在线播放 | 狠狠干.com | 一区二区三区免费播放 | 在线激情影院一区 | 日韩性久久 | 丁香激情五月 | 国产高清无av久久 | 国产精品每日更新 | 999电影免费在线观看2020 | 精品在线观看视频 | 国内99视频 | 91在线亚洲 | 五月婷婷av在线 | 视频一区二区在线观看 | 国产一级特黄毛片在线毛片 | 国产在线精品区 | 热re99久久精品国产66热 | 日韩精品电影在线播放 | 亚州免费视频 | 天天翘av| 九色精品 | 一区二区视频电影在线观看 | 日韩免费一级a毛片在线播放一级 | 国产成a人亚洲精v品在线观看 | 国产精品久久久久久婷婷天堂 | 黄色三级免费观看 | 精品不卡视频 | 国产一区高清在线观看 | 欧美日韩精品国产 | 久久不射电影院 | 精品一区二区三区在线播放 | 免费a v在线 | 国产自产在线视频 | 97超碰人 | 在线视频一二区 | 中文字幕在线免费观看 | 国产美女免费视频 | 亚洲经典在线 | 欧美一级性生活视频 | 69精品视频在线观看 | 国产精品久久嫩一区二区免费 | 久久在现视频 | 国产精品午夜免费福利视频 | 国产精品乱码高清在线看 | 国产精品自产拍在线观看网站 | 日韩精品 在线视频 | 午夜av免费在线观看 | 久久精品韩国 | 日韩成人黄色 | 爱射综合| 最近中文字幕在线中文高清版 | 精品免费国产一区二区三区四区 | 激情综合网五月婷婷 | 亚洲天堂视频在线 | 中日韩在线 | 中文字幕一区二区在线播放 | 亚洲va综合va国产va中文 | 91天天操| 最近中文字幕高清字幕免费mv | av不卡免费看 | 久久精品国产一区二区三区 | 97精品久久人人爽人人爽 | av在线超碰 | 午夜私人影院 | 香蕉精品视频在线观看 | 免费看十八岁美女 | 色综合久久久久网 | 欧美一级特黄aaaaaa大片在线观看 | 国产视频日韩视频欧美视频 | 国产裸体视频bbbbb | 东方av在线免费观看 | 久久久久久久久久福利 | 日韩大片在线免费观看 | 国产成人久久久久 | 性色av免费观看 | 亚洲日韩中文字幕 | 美女视频黄免费 | 亚洲午夜精品一区二区三区电影院 | 国产在线观看免 | 国产精品都在这里 | 久久不卡视频 | 久久久久免费电影 | 99热国内精品 | 欧美乱码精品一区二区 | 日本性动态图 | 一区二区影院 | 99re热精品视频 | 在线观看 国产 | 99热99re6国产在线播放 | 99在线观看 | 欧美另类69 | 国产美女精品视频 | 在线中文字幕播放 | www色网站 | 色综合久久久久综合体 | 综合网伊人 | 欧美日韩在线视频一区二区 | 五月婷婷黄色网 | 香蕉视频18 | 999久久a精品合区久久久 | 99久久精品免费看国产四区 | 97在线观| 久久香蕉电影网 | 91九色视频国产 | 狠狠色狠狠色综合日日小说 | 黄色录像av| 国产中文字幕视频在线观看 | 在线视频精品播放 | 国产精品美女毛片真酒店 | 一区二区在线电影 | 亚洲综合国产精品 | 国产无限资源在线观看 | a在线播放| 国产精品欧美一区二区三区不卡 | 中文国产字幕在线观看 | 国产精品资源网 | 国产精品一区专区欧美日韩 | 中文字幕在线免费看 | 日日干夜夜草 | 久久久久国产a免费观看rela | 天天插天天爱 | 国产精品一区一区三区 | 一区二区三区在线观看 | 99视频精品免费观看, | 69视频永久免费观看 | 91日本在线播放 | 免费人做人爱www的视 | 久久66热这里只有精品 | 日韩精品一区二区三区电影 | 久久精品综合视频 | 国产又粗又硬又爽视频 | 国产精品一区二区久久 | 视频福利在线观看 | 曰本免费av | 国产五月天婷婷 | 综合天天久久 | 日本精品午夜 | 蜜臀av麻豆 | 欧美一区二区在线刺激视频 | 一区二区三区在线视频观看58 | 美女黄频视频大全 | 涩涩在线 | 亚洲最大在线视频 | 欧美一区免费在线观看 | 亚洲激情 欧美激情 | 亚洲aⅴ在线观看 | 超碰97.com| 日日操操| av电影 一区二区 | 日本黄色大片免费 | 久久看看| 亚洲伊人第一页 | 日本一区二区三区免费看 | 国产午夜不卡 | 天天干天天插 | 操操操日日日干干干 | 精品av在线播放 | 亚洲成av人电影 | 欧美精品小视频 | 国产精品二区三区 | av不卡网站 | 在线中文字幕电影 | 久久天天综合网 | 最近能播放的中文字幕 | 日韩69视频 | 日韩精品免费在线播放 | 日韩久久一区 | avwww在线| 成人网页在线免费观看 | 不卡电影一区二区三区 | 日本黄色免费大片 | 欧美色操 | 久久手机精品视频 | 久久久亚洲国产精品麻豆综合天堂 | 超碰97在线人人 | 日韩欧美视频免费在线观看 | 国产成人一区二区三区影院在线 | 久久综合免费 | 国产成人久久av免费高清密臂 | 夜夜躁天天躁很躁波 | 日韩精品国产一区 | 天天玩天天操天天射 | 97香蕉超级碰碰久久免费软件 | 国产成人333kkk| a黄色片在线观看 | 黄色免费网 | 九色琪琪久久综合网天天 | 亚洲v欧美v国产v在线观看 | 一级黄网| 91精品国产欧美一区二区 | 免费精品人在线二线三线 | 久久综合之合合综合久久 | 久久综合狠狠综合久久狠狠色综合 | 国产精品二区三区 | 日韩区欧美久久久无人区 | 国产特级毛片aaaaaa毛片 | 国产在线视频导航 | 日韩精品专区 | 国产小视频免费在线网址 | 久久久久久久久久久高潮一区二区 | 一本一本久久a久久精品综合小说 | 国产亚洲精品久久 | 久久99精品久久久久久久久久久久 | 亚洲高清av在线 | 亚洲h在线播放在线观看h | 久久99爱视频 | 国产精品永久免费 | 日韩一二三 | 久久综合九色欧美综合狠狠 | 激情视频区 | 亚洲一区二区三区精品在线观看 | av动态图片 | 天天玩天天干天天操 | 亚洲精品日韩av | 在线免费观看国产视频 | 国产亚洲一区 | 久久久久色 | 手机av永久免费 | 精品久久久久_ | 日韩av高清| 99精品国产在热久久下载 | 人人爽人人爽人人爽人人爽 | 六月丁香综合网 | 色老板在线视频 | 欧美整片sss | 日本高清免费中文字幕 | 婷婷在线免费 | 亚洲国产精品一区二区尤物区 | 国产一区二区久久久 | 九九免费在线视频 | 激情视频在线高清看 | 亚洲国产免费看 | 久久久久在线观看 | 啪啪激情网 | 久久字幕精品一区 | 欧美成人猛片 | 色久av| 久久综合给合久久狠狠色 | 欧美精品乱码久久久久 | 丁香婷婷综合激情 | 国产国语在线 | 亚洲国产中文字幕在线 | 久久久久久久久黄色 | 探花国产在线 | 久青草国产在线 | 欧美午夜激情网 | 亚洲电影黄色 | 色综合网在线 | 国产午夜三级一二三区 | 一区二区三区高清在线 | 怡红院成人在线 | 日韩乱码中文字幕 | 99久久久久久国产精品 | 国产特级毛片 | 欧美亚洲精品一区 | 成人黄色片免费看 | 亚洲成av人片在线观看香蕉 | 免费又黄又爽 | 欧美日本国产在线观看 | 激情欧美一区二区三区免费看 | 精品二区久久 | 久久99国产精品自在自在app | 国产黄色免费 | 日韩av网址在线 | 日韩中午字幕 | 国产中文字幕视频在线观看 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | 日韩电影久久久 | 91视频免费| 国产精品爽爽久久久久久蜜臀 | 美女黄频在线观看 | 在线国产一区 | 91视频网址入口 | 色播五月激情五月 | 国产精品99久久免费观看 | 狠狠色丁香婷综合久久 | 韩国精品在线观看 | 色欧美成人精品a∨在线观看 | 97av在线视频免费播放 | 天天操狠狠操 | 日日夜夜天天综合 | 亚洲精品国产精品久久99 | 亚洲热久久 | 91麻豆精品国产91久久久久久 | 亚洲精品国产自产拍在线观看 | 色噜噜日韩精品一区二区三区视频 | 欧美亚洲xxx | 欧美 日韩 性 | 日韩视频一区二区在线 | 五月婷婷综合在线视频 | 日韩理论片在线观看 | 久久综合9988久久爱 | 天天干天天在线 | 东方av在线免费观看 | 亚洲视频免费在线 | 日本久久视频 | 天天草天天色 | 操少妇视频 | 免费在线精品视频 | 国产成人免费高清 | 精品一区二区免费视频 | 中文字幕精品www乱入免费视频 | 日韩系列在线观看 | 麻豆传媒视频观看 | 久久久久久美女 | 久久伊人色综合 | 91成年人在线观看 | 亚洲国产精品va在线看黑人 | 亚洲综合激情小说 | 国产精品久久久久久久久久ktv | 欧美日韩有码 | 亚洲国产av精品毛片鲁大师 | 天天操操操操操 | 亚洲国产精品视频 | 天堂在线视频免费观看 | 婷婷六月中文字幕 | 黄色一及电影 | 999色视频| 日韩大片在线看 | 日日爱网址 | 国产一级免费播放 | 在线观看视频一区二区三区 | 国产香蕉97碰碰久久人人 | 中文乱码视频在线观看 | 91桃色在线播放 | 81精品国产乱码久久久久久 | 午夜视频福利 | 久艹视频在线免费观看 | 黄色在线看网站 | 成人三级网址 | 在线观看视频在线观看 | 亚洲婷婷综合色高清在线 | 99在线国产| 69精品在线观看 | 免费a视频| 在线免费av网站 | a级国产乱理论片在线观看 特级毛片在线观看 | 黄色软件视频大全免费下载 | 99久久www | 日韩在线视频不卡 | 丰满少妇在线 | 亚洲欧洲视频 | 久久免费视频一区 | 色a综合| 麻豆高清免费国产一区 | 国产一区二区三精品久久久无广告 | 天天做日日做天天爽视频免费 | 色综合 久久精品 | 91成人国产| 99精品视频在线免费观看 | 高清国产午夜精品久久久久久 | 夜夜高潮夜夜爽国产伦精品 | 91久久精 | 青春草免费视频 | 中文字幕av免费 | 日韩欧美高清一区二区三区 | 成片免费观看视频 | 国产99久久久国产精品免费二区 | 色综合激情久久 | 国产精品久久久久久久久久久杏吧 | 国产精品久久久久久婷婷天堂 | 66av99精品福利视频在线 | h视频在线看 | 一区二区中文字幕在线播放 | 久久国内精品视频 | 99久久精品免费看国产一区二区三区 | 国产成人精品一区二区三区在线观看 | 欧美福利在线播放 | 国产精品久久久久久久久蜜臀 | 91香蕉视频720p | 国产在线久草 | 欧美激情操 | 伊人狠狠色丁香婷婷综合 | 国产精品 中文在线 | 精品久久久久久亚洲综合网站 | 一区二区三区在线电影 | 福利视频导航网址 | 日韩在线视频播放 | 黄色精品免费 | 日韩va亚洲va欧美va久久 | 成人福利在线播放 | 亚洲日本韩国一区二区 | 国产精品热 | 99精品色 | 国产一级片观看 | 亚洲精选视频免费看 | 亚洲精品国精品久久99热 | 久久久精选 | www激情久久| 国产在线精品视频 | 国产一区成人在线 | 国产精品情侣视频 | 免费在线成人av电影 | 国产不卡视频在线播放 | 精品中文字幕在线播放 | 国产激情电影综合在线看 | 又色又爽的网站 | 国产精品美女久久久久久久久 | 久久看看 | 成人97人人超碰人人99 | 99国产视频 | 中文字幕 国产精品 | 久久在线免费视频 | 开心丁香婷婷深爱五月 | 日韩欧美亚州 | 亚洲 欧美 国产 va在线影院 | 91麻豆传媒| 日本黄色黄网站 | 毛片3 | 在线观看免费视频你懂的 | 国产精品嫩草在线 | 欧美a级在线播放 | 国产精品情侣视频 | 国产日本高清 | 成人av片在线观看 | 欧美色精品天天在线观看视频 | 91久久偷偷做嫩草影院 | 黄色av电影免费观看 | 在线国产中文字幕 | 久久视影 | 国产成人精品一区二区三区在线 | 91香蕉国产 | 正在播放五月婷婷狠狠干 | 欧美疯狂性受xxxxx另类 | 成人国产精品免费 | 久久久久久久久久网站 | 日韩精品国产一区 | av福利在线看 | 你操综合| 在线视频福利 | 国产精品 亚洲精品 | 天天综合日 | 欧美精品久久久久久久久久久 | 久久大片 | av大片免费在线观看 | 手机av电影在线观看 | 在线播放91| 亚洲永久精品国产 | 婷婷五月情 | 欧美日本一二三 | 黄色毛片电影 | 国产真实精品久久二三区 | 亚洲免费在线观看视频 | 97超碰免费 | 中文字幕电影网 | 999国产| 久久伊人精品天天 | 国产91学生粉嫩喷水 | 日韩二区精品 | 日韩免费在线视频观看 | 91香蕉国产| 久久免费看视频 | 久久曰视频| 国产尤物一区二区三区 | 精品国产一区二区三区噜噜噜 | 国产精品淫片 | 伊人六月| 欧美一级片免费在线观看 | 91探花在线 | 激情av资源 | 久久久久这里只有精品 | 国产精品久久毛片 | 在线精品亚洲 | 一区二区三区在线免费观看视频 | 18国产精品白浆在线观看免费 | 少妇搡bbbb搡bbb搡忠贞 | av片中文| 91视频成人免费 | 免费av网站观看 | 成人久久久久久久久久 | 高清中文字幕av | 亚洲国产精品女人久久久 | 国产精品视频线看 | 日日夜夜天天综合 | 国产一区二区久久久 | 欧美亚洲久久 | 久久综合影院 | 亚洲经典在线 | 色网免费观看 | 国产精在线| 国产18精品乱码免费看 | 一区二区视频免费在线观看 | 国产手机免费视频 | 午夜久久视频 | 国产1区在线观看 | 婷婷丁香综合 | 麻豆91小视频 | 久久久亚洲国产精品麻豆综合天堂 | 丁香六月色 | 日韩久久精品一区二区 | 久久看片 | 91精品一区二区三区久久久久久 | 亚一亚二国产专区 | 国产香蕉97碰碰久久人人 | 国内少妇自拍视频一区 | 最近中文字幕视频完整版 | 亚洲精品乱码久久久久久蜜桃欧美 | 久久伊人免费视频 | 久久成年人网站 | 日韩欧美综合在线视频 | 丁香六月在线观看 | 亚洲国产日韩欧美 | 激情黄色av | 国产欧美高清 | 91精品国产综合久久福利不卡 | 精品国产观看 | 欧美一级性生活视频 | 最近高清中文在线字幕在线观看 | 亚洲首页| 久久电影中文字幕视频 | 成年人免费在线观看网站 | 国产综合在线视频 | 九九色视频 | 久久撸在线视频 | 久久久久久久久网站 | 日韩中文字幕网站 | 免费观看视频黄 | 天天摸天天干天天操天天射 | 99视频免费播放 | 色在线中文字幕 | 就要干b | 国产丝袜美腿在线 | 色在线最新 | 丁香国产视频 | www.黄色片网站 | 免费在线观看视频一区 | 福利视频一区二区 | 中文字幕在线日亚洲9 | 国产区av在线 | 久久婷婷一区 | 久久99久久99精品免观看粉嫩 | 在线视频欧美精品 | 天天色天天爱天天射综合 | 免费激情在线电影 | 欧美一区二区在线刺激视频 | 国产一区免费看 | 最近中文字幕免费av | 成人一级片在线观看 | 超碰在线最新地址 | 日韩在线国产 | 日韩在线视频看看 | 麻豆 91 在线 | 精产嫩模国品一二三区 | 久草www| 亚洲精品视频在线 | 久久高清视频免费 | 狠狠插狠狠操 | av超碰免费在线 | 国产高清久久久 | 久久久久免费精品国产小说色大师 | 中文字幕人成乱码在线观看 | www.久久视频| 99热精品久久 | 最近字幕在线观看第一季 | 亚洲区二区 | 国产精品久久久久久久午夜 | 国产在线观看网站 | 亚洲一二三区精品 | 国产一二三区在线观看 | 正在播放 久久 | 人人看97 | 97影视| www.av中文字幕.com| 亚洲三级黄 | 在线日韩一区 | 欧美在线1 | 精品96久久久久久中文字幕无 | 99精品免费久久久久久久久 | 色五丁香 | 久久久精品 一区二区三区 国产99视频在线观看 | 久久免费成人 | 亚洲高清91| 性色va| 黄网在线免费观看 | 久热精品国产 | 在线视频观看你懂的 | 综合网中文字幕 | 韩国av免费在线 | 日韩免费不卡av | 国产小视频福利在线 | 天天操伊人 | 午夜久久久久久久久 | 五月婷香蕉久色在线看 | 精品视频免费久久久看 | 日韩视频一区二区三区在线播放免费观看 | 日韩在线观看av | 亚洲日本va中文字幕 | 少妇搡bbb| 丁香六月婷婷综合 | 午夜精品一区二区三区在线观看 | 欧美日韩亚洲在线观看 | 91精品黄色 | 国产福利一区在线观看 | 午夜视频在线网站 | 91久久精品一区二区三区 | 国产剧在线观看片 | 亚洲国产播放 | 99视频久久 | 日韩视频一区二区三区在线播放免费观看 | 免费视频一级片 | 精品欧美一区二区三区久久久 | 欧美少妇xx | 草草草影院 | 久99久视频 | 亚洲激情 在线 | 久久久精品电影 | 99热国内精品 | 国产精品四虎 | 婷婷五情天综123 | 狂野欧美激情性xxxx欧美 | 国产精品露脸在线 | 中文字幕888 | 日韩精品在线看 | 欧美一区二区在线免费观看 | 日韩av免费在线看 | 亚洲涩涩色 | 麻豆国产在线视频 | 成人观看 | 狠狠色狠狠色综合日日小说 | 久久精品视频18 | 日韩免费视频在线观看 | 国产特级毛片aaaaaaa高清 | 国产一区二区高清不卡 | 高清av网| 最近中文字幕免费av | 国产一二三区在线观看 | 成人一级免费电影 | 成人9ⅰ免费影视网站 | 欧洲一区二区在线观看 | 99av在线视频 | a级国产乱理伦片在线播放 久久久久国产精品一区 | 午夜久久久精品 | 日韩网站一区二区 | 国产成人黄色在线 | 麻豆国产精品永久免费视频 | 日本h视频在线观看 | 四川bbb搡bbb爽爽视频 | 久久精品国产免费看久久精品 | 就要色综合 | 久久 精品一区 | 日本久久不卡视频 | 日日躁天天躁 | 日本一区二区三区免费观看 | 国产 一区二区三区 在线 | 久久99精品久久久久久久久久久久 | 精品国模一区二区三区 | 午夜精品久久久久久久99无限制 | 久久人视频 | www.久久久com | 日韩在线免费高清视频 | av在线免费观看网站 | 在线观看国产www | 久久综合9988久久爱 | 91视频在线播放视频 | av看片在线观看 | 精品一区二区免费视频 | 视频直播国产精品 | 久久你懂得 | 中文字幕丝袜一区二区 | 日韩影视精品 | 久久久久国产精品午夜一区 | 日韩av手机在线观看 | 午夜精品视频福利 | 国产精品美女 | 黄色av网站在线免费观看 | 香蕉视频在线看 | 久久国语露脸国产精品电影 | 日韩欧美视频一区二区三区 | 久久av中文字幕片 | 亚洲综合射 | 亚洲精品在线观看视频 | 欧美黄色软件 | 六月婷婷网 | 欧洲精品一区二区 | 午夜精品久久久久久99热明星 | 女人18精品一区二区三区 | 美女久久久久久久 | 成人在线黄色电影 | 国内精品久久久久久 | 久久久精品福利视频 | 日韩av成人免费看 | 美女网站在线播放 | 成人网色 | 九色91福利| 久久草av | 色网站国产精品 | 日韩欧美一区视频 | 精品a级片 | 中文字幕在线观看第一区 | 日韩激情三级 | 激情五月五月婷婷 | 国产91九色蝌蚪 | 亚洲日本va午夜在线电影 | 国产精品99久久久久久宅男 | 在线观看免费国产小视频 | 成人夜晚看av | 欧美日韩不卡一区二区 | 久久综合久久综合这里只有精品 | 精品在线一区二区 | 天天操 夜夜操 | 国产精久久久久久妇女av | 国产精品一区二区麻豆 | 国内精品美女在线观看 | 亚洲电影毛片 | 久久久精品国产一区二区电影四季 | 九月婷婷色 | 国产在线观看一区 | 五月天亚洲激情 | 99久久夜色精品国产亚洲96 | 色综合激情网 | 午夜精品av | 91久久国产综合精品女同国语 | 超碰999| 成年人黄色免费看 | 久久无码av一区二区三区电影网 | 国产精品久久久久久久久久久杏吧 | 欧美a√在线| 久久久久这里只有精品 | 日p视频| 69国产精品视频免费观看 | 91男人影院 | 91自拍成人| 久青草电影 | 2019久久精品 | 亚洲精品一区二区在线观看 | 日韩美女av在线 | 色视频在线免费观看 | 黄色成人在线网站 | 一区二区不卡视频在线观看 | 久久久免费看片 | 激情av一区二区 | 色综合久 | 久久情网| 夜色资源站国产www在线视频 | 国产精品99久久久久久小说 | 欧美性生爱 | 国产视频精品在线 | 中文字幕在线影院 | 国产精品v a免费视频 | 亚洲亚洲精品在线观看 | 韩国一区二区三区视频 | 国产一区在线观看免费 | 97超碰福利久久精品 | 午夜电影久久 | 久久免费视频精品 | 99热在 | 亚洲精品综合在线观看 | 很黄很污的视频网站 | 久久96国产精品久久99软件 | 国产人成免费视频 | 日日干干夜夜 | 香蕉视频免费在线播放 | av在线一级 | 黄视频网站大全 | 中文国产在线观看 | 日韩精品一区二区三区水蜜桃 | av免费观看在线 | 蜜臀av夜夜澡人人爽人人 | www.狠狠 | 欧美精品三级在线观看 | 中文字幕欧美日韩va免费视频 | av片子在线观看 | 狠狠色丁香婷婷综合久久片 | 天堂网av 在线 | 国产在线a视频 | 欧美a级在线播放 | 日本丶国产丶欧美色综合 | 天天综合中文 | 有码中文字幕在线观看 | 久久午夜色播影院免费高清 | 黄色片毛片 | 日韩在线不卡视频 | 国产麻豆精品95视频 | 91大神精品视频在线观看 | av电影在线不卡 | a√资源在线 | www最近高清中文国语在线观看 | 色丁香婷婷 | 国产在线一区二区三区播放 | 久久精品国产免费看久久精品 | 超碰人人草人人 | 国内成人精品2018免费看 | 97人人模人人爽人人喊中文字 | 日韩在线视频一区二区三区 | 一区二区三区免费看 | 亚洲 综合 激情 | 蜜桃av久久久亚洲精品 | 91视视频在线直接观看在线看网页在线看 | 久久国产精品一二三区 | 一区在线电影 | 亚洲精品www久久久 www国产精品com | 五月婷婷开心中文字幕 | 亚洲人毛片 | 亚洲欧洲久久久 | 婷婷六月激情 | 亚洲国产片 | 97超碰精品 | 97色se| 一区二区三区免费在线观看视频 | 日韩在线观看的 | 中文在线a天堂 | 一区二区三区免费 | 国产精品免费小视频 | 久久影院午夜论 | 久久色视频 | 狠狠88综合久久久久综合网 | 久久综合精品一区 | 精品国内自产拍在线观看视频 | 在线观看日本韩国电影 | 在线电影91| 日韩精品一区二区三区丰满 | 国产探花视频在线播放 | 激情综合国产 | 国产精品久久久久一区二区三区 | 日韩精品影视 | 91久久久久久久一区二区 | 九九免费在线看完整版 | 欧美视频www | 美女视频黄免费网站 | 最新日韩精品 | 国产无套精品久久久久久 | 9999精品免费视频 | 日韩一级片观看 | 色综合天天综合 | 91人人澡人人爽人人精品 | 国产婷婷在线观看 | 人人超碰免费 | 狠狠色丁香婷婷综合久久片 | 一本到视频在线观看 | 国产一区 在线播放 | 亚洲欧洲成人精品av97 | 亚洲另类人人澡 | 在线一区电影 | 91精品国产欧美一区二区 | 日韩一区二区三区在线观看 | 天天爽夜夜爽精品视频婷婷 | 国产精品区二区三区日本 | 一区二区高清在线 | 精品久久久久久久久久岛国gif | 少妇搡bbbb搡bbb搡忠贞 | 国产精品国产三级国产 | 国产999精品久久久 免费a网站 | 18国产精品白浆在线观看免费 | 国产在线永久 | 四虎免费在线观看视频 | 日日干天夜夜 | 91手机视频在线 | 91av在线免费 | 天天综合色| 亚洲精品免费观看视频 | 亚洲人成人在线 | 天天操导航 | 久久精品96| 九九视频精品在线 | 五月色综合 | 国产高清精品在线观看 | 精品国产乱码久久久久久1区二区 | 国产一区二区在线免费观看 | 色婷婷综合久久久久中文字幕1 | 一区二区视频电影在线观看 | 久久国产影视 | 黄色毛片网站在线观看 | 欧美日韩在线视频观看 | 免费a网址 | 国产精品乱码在线 | 米奇狠狠狠888 | 色综合久久久久网 |