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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

使用C++编写一个DHT爬虫,实现从DHT网络爬取BT种子

發(fā)布時間:2024/8/1 c/c++ 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用C++编写一个DHT爬虫,实现从DHT网络爬取BT种子 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

使用C++編寫一個DHT爬蟲,實現(xiàn)從DHT網(wǎng)絡爬取BT種子

  • 1、前言
  • 2、相關術語
    • 2.1、P2P網(wǎng)絡
    • 2.2、DHT網(wǎng)絡
    • 2.3、Kademlia算法
    • 2.4、KRPC協(xié)議
    • 2.5、MagNet協(xié)議
  • 3、BT下載的一些概念梳理
    • 3.1、BT軟件下載原理
    • 3.2、迅雷獲取種子的速度為什么那么快
    • 3.3、資源時效性問題
    • 3.4、好用的BT軟件
    • 3.5、有沒有已經(jīng)編寫好的DHT爬蟲
  • 4、使用C++編寫DHT爬蟲
    • 4.1、實現(xiàn)原理
    • 4.2、實現(xiàn)DHT協(xié)議
      • 4.2.1、創(chuàng)建UDP服務
      • 4.2.2、加入DHT網(wǎng)絡
      • 4.2.3、報文解析
      • 4.2.4、對不同類型報文進行處理、回復
      • 4.2.5、隱藏自己,防止被其他節(jié)點拉進黑名單
      • 4.2.6、獲取info_hash和peer
    • 4.3、實現(xiàn)BitTorrent協(xié)議
      • 4.3.1、HandShake(握手)
      • 4.3.2、Extend HandShake(擴展握手)
      • 4.3.3、獲取metadata
      • 4.3.4、制作torrent文件
  • 4、總結(jié)

1、前言

通過前面兩篇文章的科普,相信大家都一定程度上了解了DHT網(wǎng)絡和BT種子的相關知識了,不了解也沒關系,可以倒回去看下面兩篇文章:

  • B編碼與BT種子文件分析,以及模仿json-cpp寫一個B編碼解析器
  • DHT協(xié)議介紹

雖然前面介紹了很多理論相關的知識,但是光有這些理論是沒用的,中看不中用,接下來我們就實戰(zhàn)一下,自己編寫一個DHT爬蟲,達到種子自由的目的,不對,是達到提高我們編程水平的目的。

2、相關術語

2.1、P2P網(wǎng)絡

對等計算(Peer to Peer,簡稱p2p)可以簡單定義成通過直接交換來共享計算機資源和服務,而對等計算模型應用層形成的網(wǎng)絡通常稱為對等網(wǎng)絡。相信大家都用過迅雷等p2p軟件,這里就不贅述了。

2.2、DHT網(wǎng)絡

DHT(Distributed Hash Table,分布式哈希表),DHT由節(jié)點組成,它存儲peer的位置,是一種分布式存儲方法。在不需要服務器的情況下,每個客戶端負責一個小范圍的路由,并負責存儲一小部分數(shù)據(jù),從而實現(xiàn)整個DHT網(wǎng)絡的尋址和存儲,其中BT客戶端包含一個DHT節(jié)點,用來聯(lián)系DHT中其他節(jié)點,從而得到peer的位置,進而通過BitTorrent協(xié)議下載。
簡單點來說DHT就是負責管理提供信息和服務節(jié)點的管理與路由功能,這里有兩個需要區(qū)分的概念:

  • peer:是在一個 TCP 端口上監(jiān)聽的客戶端/服務器,它實現(xiàn)了BitTorrent協(xié)議
  • 節(jié)點:是在一個 UDP 端口上監(jiān)聽的客戶端/服務器,它實現(xiàn)了DHT(分布式哈希表) 協(xié)議

2.3、Kademlia算法

Kademlia是DHT網(wǎng)絡的一種實現(xiàn)。在Kademlia網(wǎng)絡中,距離是通過異或(XOR)計算的,結(jié)果為無符號整數(shù)。distance(A, B) = |A xor B|,數(shù)值越小表示越近兩個節(jié)點越接近,詳細說明可以自行百度查閱。

2.4、KRPC協(xié)議

KRPC是節(jié)點之間的交互協(xié)議,是由B編碼組成的一個簡單的RPC結(jié)構(gòu),它使用UDP報文發(fā)送,一個獨立的請求包發(fā)出去,然后由另一個獨立的包來回復(這也是UDP無連接特性所決定的,所以協(xié)議中肯定也會有讓我們區(qū)分報文包的方法),要注意的是這個協(xié)議沒有重發(fā)機制。

2.5、MagNet協(xié)議

MagNet協(xié)議,也就是磁力鏈接。是一個通過sha1算法生成一個20字節(jié)長的字符串,P2P客戶端使用磁力鏈接,下載資源的種子文件,然后根據(jù)種子文件下載資源。

3、BT下載的一些概念梳理

3.1、BT軟件下載原理

BT軟件使用DHT協(xié)議,通過擊鼓傳花的方式,在DHT網(wǎng)絡上搜尋磁力鏈接對應的資源,當找到擁有此資源的peer之后,使用BitTorrent協(xié)議先將種子下載下來,然后根據(jù)種子文件內(nèi)容下載對應的資源。

3.2、迅雷獲取種子的速度為什么那么快

從理論上來講,由于BT軟件要先去DHT網(wǎng)絡搜尋種子,這個過程時需要耗費一定時間的,所以要做到大部分資源都迅速響應是不可能的,迅雷那么快的原因只有一個,就是迅雷自己有種子庫,里面緩存了其他用戶下載過的種子或者迅雷自己平時在DHT上面爬取的種子。

3.3、資源時效性問題

當DHT網(wǎng)絡上持有某一資源的peer全部停止工作后,資源自然也就下不了了,迅雷由于自己有服務器緩存了以往一些熱門的資源,所以往往會給人造成資源還在的假象,其實此時是迅雷自己充當服務器給你下發(fā)資源而已(這也就是為什么有些資源充了VIP才能下的原因了,畢竟服務器不能讓你白用)。

3.4、好用的BT軟件

既然BT的原理都是DHT協(xié)議加上BitTorrent協(xié)議,所以不同軟件下載速度啥的應該差別不大(有服務器緩存支撐的軟件除外),比較出名的BT軟件有迅雷、uTorrent、qBittorrent、比特彗星、Transmission、aria2等等,大家可以自行去百度去搜索。

3.5、有沒有已經(jīng)編寫好的DHT爬蟲

答案當然是有的啦,所有BT軟件肯定都實現(xiàn)了DHT協(xié)議和BitTorrent協(xié)議,可以看一些開源的BT軟件里面的實現(xiàn)方法,有個叫做libtorrent的庫非常著名,很多BT軟件都是將其套個殼做出來的,只不過代碼寫的比較復雜,看起來有點難受。于是乎就想看看有沒有人已經(jīng)用比較簡單的方式實現(xiàn)了DHT爬蟲,而通過查閱了很多文章,發(fā)現(xiàn)有些人是只實現(xiàn)了DHT協(xié)議,然后拿那些通過DHT網(wǎng)絡爬取到的hash去開源種子庫獲取種子,有些就是沒有把BitTorrent協(xié)議的實現(xiàn)方法開源出來,所以萌生了自己做一個完整的DHT爬蟲的想法(開源庫無法獲取到最新的資源,而且速度肯定是不如直接在DHT網(wǎng)絡爬取的)。

4、使用C++編寫DHT爬蟲

4.1、實現(xiàn)原理

偽裝成DHT節(jié)點加入DHT網(wǎng)絡中收集信息,爬蟲主要收集get_peer、announce_peer這兩個請求的信息。當收到get_peer或者announce_peer的請求時,直接使用BitTorrent協(xié)議從請求發(fā)起者下載對應的種子信息(獲取不到種子的概率會比較大,原因大家自行完整看一下DHT協(xié)議就明白了)
這里有一個疑問,要如何加入DHT網(wǎng)絡,通過查看其他大神們的開源代碼,我發(fā)現(xiàn)基本都是ping下面三個節(jié)點來加入DHT網(wǎng)絡的

域名端口
router.utorrent.com6881
router.bittorrent.com6881
dht.transmissionbt.com6881

4.2、實現(xiàn)DHT協(xié)議

4.2.1、創(chuàng)建UDP服務

創(chuàng)建一個UDP服務,監(jiān)聽6881端口(DHT默認端口,可以自行修改,理論上啥端口都可以)

4.2.2、加入DHT網(wǎng)絡

通過ping上面那幾個節(jié)點來將自己加入到DHT網(wǎng)絡中,這樣才能獲取到節(jié)點的消息,實現(xiàn)如下:

void DhtSearch::ping_root() {std::vector<std::pair<const char*, const char*>> ip_addr = {{"router.utorrent.com", "6881"},{"router.bittorrent.com", "6881"},{"dht.transmissionbt.com", "6881"}};for (auto addr : ip_addr){struct addrinfo hints, *info;memset(&hints, 0, sizeof(hints));hints.ai_socktype = SOCK_DGRAM;hints.ai_family = AF_UNSPEC;int error = getaddrinfo(addr.first, addr.second, &hints, &info);if (error){log_error << "getaddrinfo fail, error=" << error << ", errstr=" << gai_strerror(error);}else{struct addrinfo* p = info;while (p){if (p->ai_family == AF_INET){send_ping((struct sockaddr_in*)p->ai_addr, "");log_debug << addr.first << ":" << addr.second << " is AF_INET";}else{log_debug << addr.first << ":" << addr.second << " is no support the family(" << p->ai_family << ")";}p = p->ai_next;}freeaddrinfo(info);}} }

4.2.3、報文解析

收到其他節(jié)點發(fā)過來的報文之后,進行報文解析,DHT網(wǎng)絡中互相之間通信的格式是B編碼,不了解B編碼的可以去看這篇文章《B編碼與BT種子文件分析,以及模仿json-cpp寫一個B編碼解析器》,解析報文的代碼如下:

// private int DhtSearch::parse(const char* buf, int len, std::string& tid, std::string& id,std::string& info_hash, unsigned short& port, std::string& nodes) { #define XX(str) \log_error << str; \return -1int ret;BEncode::Value root;size_t start = 0;if (BEncode::decode(buf, start, len, &root) || root.getType() != BEncode::Value::BCODE_DICTIONARY){XX("bencode message is invalid");}// tid(始終在頂層){auto value = root.find("t");if (value != root.end()){if (value->getType() != BEncode::Value::BCODE_STRING){XX("\"t\" value is must be string");}tid = value->asString();}}// y(始終在頂層)auto type_y = root.find("y");if (type_y != root.end() && type_y->getType() == BEncode::Value::BCODE_STRING){std::string value = type_y->asString();if (value == "r")ret = REPLY;else if (value == "e"){XX("remote reply ERROR value");}else if (value == "q"){auto type_q = root.find("q");if (type_q != root.end() && type_q->getType() == BEncode::Value::BCODE_STRING){std::string v = type_q->asString();if (v == "ping")ret = PING;else if (v == "find_node")ret = FIND_NODE;else if (v == "get_peers")ret = GET_PEERS;else if (v == "announce_peer")ret = ANNOUNCE_PEER;else if (v == "vote" || v == "sample_infohashes")return -1;else{XX("\"q\" value(" + v + ") is invaild");}}else{XX("not found \"q\" value");}}else{XX("\"y\" value(" + value + ") is invaild");}}else{XX("not found \"y\" value");}BEncode::Value::iterator body_value;if (ret == REPLY){body_value = root.find("r");if (body_value == root.end() || body_value->getType() != BEncode::Value::BCODE_DICTIONARY){XX("not found \"r\" value");}}else{body_value = root.find("a");if (body_value == root.end() || body_value->getType() != BEncode::Value::BCODE_DICTIONARY){XX("not found \"a\" value");}}// id{auto value = body_value->find("id");if (value != body_value->end()){if (value->getType() != BEncode::Value::BCODE_STRING){XX("\"id\" value is must be string");}id = value->asString();if (id.size() != 20)id.clear();}elseid.clear();}// info_hash{auto value = body_value->find("info_hash");if (value != body_value->end()){if (value->getType() != BEncode::Value::BCODE_STRING){XX("\"info_hash\" value is must be string");}info_hash = value->asString();if (info_hash.size() != 20)info_hash.clear();}elseinfo_hash.clear();}// port{auto value = body_value->find("port");if (value != body_value->end()){if (value->getType() != BEncode::Value::BCODE_INTEGER){XX("\"port\" value is must be int");}port = (unsigned short)(value->asInt());}elseport = 0;}// nodes{auto value = body_value->find("nodes");if (value != body_value->end()){if (value->getType() != BEncode::Value::BCODE_STRING){XX("\"nodes\" value is must be string");}nodes = value->asString();}elsenodes.clear();}return ret;#undef XX }

4.2.4、對不同類型報文進行處理、回復

解析完成后,如果報文有效,則進行后續(xù)處理,由于我們的需求只是爬取其他人的種子,自己不進行主動查詢,所以并不需要完整實現(xiàn)DHT協(xié)議,即不緩存其他節(jié)點信息,別人的請求有用的就接受,沒用的返回一些假的信息給請求節(jié)點,通過這種騙、偷襲的方法可以使得編寫出的爬蟲的復雜度大大降低,接下來分析各個請求的回應方法(不知道DHT協(xié)議的請看這篇文章《DHT協(xié)議介紹》,請務必看完,不然接下來的內(nèi)容很有可能無法看懂)

請求類型回復方法
PING直接按標準格式回復PONG就行
FIND_NODE由于我們并沒有緩存其他節(jié)點信息,來我們這里查找節(jié)點是不可能做到的,所以返回一個空的節(jié)點列表給它
GET_PEERS這個對于我們是有用的,我們要通過GET_PEERS請求的發(fā)起者來下載種子文件,但是由于我們既沒有緩存節(jié)點,也沒有緩存peer,所以回復它一個空列表
ANNOUNCE_PEER和GET_PEERS處理方式一樣
REPLY由于我們始終沒有在主動查詢?nèi)魏钨Y源,所以基本不太可能受到回復,收到的話檢測報文中有沒有nodes,有的話把里面的節(jié)點拿出來ping一遍,加入到更多的網(wǎng)絡之中

4.2.5、隱藏自己,防止被其他節(jié)點拉進黑名單

由于整個過程中欺騙其他節(jié)點的成分很大,所以每次回復別人錯誤信息的時候最好修改一下自己的node id,防止被其他節(jié)點加入黑名單

4.2.6、獲取info_hash和peer

通過獲取GET_PEERS或者ANNOUNCE_PEER消息中的info_hash還有對端地址就可以開始使用BitTorrent協(xié)議來下載種子信息了(此時將對端節(jié)點視為peer,下載失敗的概率會挺大,畢竟對端節(jié)點也有可能只是在找種子而已,而不是持有種子在下載資源)

4.3、實現(xiàn)BitTorrent協(xié)議

要想實現(xiàn)BitTorrent協(xié)議,就得先仔細看完下面兩篇官方文檔
http://www.bittorrent.org/beps/bep_0009.html
http://www.bittorrent.org/beps/bep_0010.html
里面的介紹非常簡短,建議全部看完

4.3.1、HandShake(握手)

從bep_0010中可以看到,握手的報文消息格式為:19的ASCII碼 + BitTorrent protocol + \x00\x00\x00\x00\x00\x10\x00\x04 + infohash的十六進制解碼 + 二十字節(jié)長的nodeid,infohash是種子的hash,nodeid就是我們自己的id了,需要注意的是BitTorrent協(xié)議除了握手消息之外的其他所有的消息的開頭四個字節(jié)是消息長度(不包含長度域),對端收到消息之后,會給你返回一個至少68字節(jié)的回復信息(為什么是至少,下面擴展握手那里會講),至于如何判斷對端是接受了我們的握手呢,判斷返回信息的第25位和27位即可(這個是看其他開源代碼這樣寫的,具體原因沒去深究,通過測試之后證明確實是這樣)

// 握手std::string handshake_message;handshake_message.resize(28);handshake_message[0] = 19;memcpy(&handshake_message[1], "BitTorrent protocol", 19);char ext[8];memset(ext, 0x00, sizeof(ext));ext[5] = 0x10;ext[7] = 0x04;memcpy(&handshake_message[20], ext, 8);handshake_message += m_info_hash + m_node_id;m_sock->send(&handshake_message[0], handshake_message.size());int len = m_sock->recv(buf, BUF_LEN);if (len < 68){log_debug << COMMON_PART << "(handshake) message size=" << len<< " is too short(must be >= 68)";delete buf;return false;}std::string handshake_reply(buf, 68);std::string ext_message;if (len > 68)ext_message = std::string(buf + 68, len - 68);if (handshake_reply.substr(0, 20) != handshake_message.substr(0, 20)){log_debug << COMMON_PART << "(handshake) protocol fail, message:"<< std::endl << dump(handshake_reply);delete buf;return false;}if ((int)handshake_reply[25] & 0x10 == 0){log_debug << COMMON_PART << "(handshake) peer does not support extension protocol, message:"<< std::endl << dump(handshake_reply);delete buf;return false;}if ((int)handshake_reply[27] & 0x04 == 0){log_debug << COMMON_PART << "(handshake) peer does not support fast protocol, message:"<< std::endl << dump(handshake_reply);delete buf;return false;}

下面是請求報文示例

下面是響應報文示例,大家可以自己算一下,從第四行第7個字節(jié)0x13開始算起到報文結(jié)尾,長度確實是超過了68

4.3.2、Extend HandShake(擴展握手)

從bep_0010中可以看到,握手之后就要進行擴展握手了,而擴展握手是至關重要的,報文消息格式為:消息長度 + MSG_ID的ASCII + EXTEND_ID的ASCII + B編碼的字典{‘m’:{‘ut_metadata’:1}}
其中MSG_ID為20,由于是擴展握手,EXTEND_ID是0,完成之后,peer的響應報文里面會包含了兩個我們下一步用得到的鍵值:ut_metadata、和metadata_size,這兩個非常重要,拿到之后要找個變量存起來

注意事項:協(xié)議中本來是要求握手協(xié)議和擴展握手是分開兩步進行的,但是在實際測試中發(fā)現(xiàn)了很多peer會直接在第一次握手時就把全部數(shù)據(jù)發(fā)過來了,也就是把原本屬于擴展握手的消息的應答也一并發(fā)過來,而且還有幾率發(fā)不全。剛開始在寫代碼的時候,由于不知道這點,導致一直擴展握手失敗,差點懷疑智商和碼生,到后來通過抓包才了解到這個東西,所以在最終實現(xiàn)時必須這樣做,就是第一次握手之后,如果數(shù)據(jù)量大于68個字節(jié),把多余的內(nèi)容保存下來,然后進行擴展握手,擴展握手后,把握手剩余的內(nèi)容和擴展握手的內(nèi)容一加,就得到正確的擴展握手數(shù)據(jù)了

代碼實現(xiàn)如下:

// 擴展握手std::string ext_handshake_message;ext_handshake_message.append(1, 20);ext_handshake_message.append(1, 0);ext_handshake_message += "d1:md11:ut_metadatai2ee1:v" + std::to_string(m_v.size()) + ":" + m_v + "e";std::string ext_handshake_message_size_str;ext_handshake_message_size_str.resize(4);uint32_t ext_handshake_message_size = ext_handshake_message.size();ext_handshake_message_size = littleByteSwap(ext_handshake_message_size);memcpy(&ext_handshake_message_size_str[0], &ext_handshake_message_size, 4);ext_handshake_message = ext_handshake_message_size_str + ext_handshake_message;m_sock->send(&ext_handshake_message[0], ext_handshake_message.size());len = 0;while (1){int cur_len = m_sock->recv(buf + len, BUF_LEN - len);if (cur_len <= 0)break;len += cur_len;if (len >= BUF_LEN)break;}std::string ext_reply;if (len > 0)ext_reply = ext_message + std::string(buf, len);else if (!ext_message.empty())ext_reply = ext_message;else{log_debug << COMMON_PART << "(ext handshake) fail";delete buf;return false;}// 摘取數(shù)據(jù)// ut_metadatasize_t pos = ext_reply.find("ut_metadata");if (pos == std::string::npos){log_debug << COMMON_PART << "(ext handshake) parse ut_metadata fail, message:"<< std::endl << dump(ext_reply);delete buf;return false;}pos += 12;size_t pos_e = ext_reply.find("e", pos);if (pos_e == std::string::npos){log_debug << COMMON_PART << "(ext handshake) parse ut_metadata fail, message:"<< std::endl << dump(ext_reply);delete buf;return false;}std::string ut_metadata_str = ext_reply.substr(pos, pos_e - pos);uint32_t ut_metadata = atoi(ut_metadata_str.c_str());// metadata_sizepos = ext_reply.find("metadata_size");if (pos == std::string::npos){log_debug << COMMON_PART << "(ext handshake) parse metadata_size fail, message:"<< std::endl << dump(ext_reply);delete buf;return false;}pos += 14;pos_e = ext_reply.find("e", pos);if (pos_e == std::string::npos){log_debug << COMMON_PART << "(ext handshake) parse metadata_size fail, message:"<< std::endl << dump(ext_reply);delete buf;return false;}std::string metadata_size_str = ext_reply.substr(pos, pos_e - pos);int64_t metadata_size = atoll(metadata_size_str.c_str());

下面是請求報文示例

下面是正常響應報文示例

下面是需要用拼接的響應報文示例(和握手剩余內(nèi)容拼接),可以很想看出報文沒有以字母d開頭(B編碼表示的報文都需要d開頭表示整體是一個對象)

4.3.3、獲取metadata

我們在握手完畢,收到ut_metadata、metadata_size后就能進行下載了,為什么需要這兩個值,因為請求的格式為:消息長度 + MSG_ID的ASCII + ut_metadata的ASCII + B編碼的字典{‘msg_type’:0,‘piece’:piece}
這里MSG_ID為20,ut_metadata必須為2,不然peer不會給你回復的,piece值為分片標記,協(xié)議中說,一個piece分片的長度為 16KB=16*1024B,所以我們需要拿metadata_size和16*1024除法計算分片標記,代碼如下

std::string data;int piece = 0;while (metadata_size > 0){std::string get_metadata_message;get_metadata_message.append(1, 20);get_metadata_message.append(1, 2);get_metadata_message += "d8:msg_typei0e5:piecei" + std::to_string(piece) + "ee";std::string get_metadata_message_size_str;get_metadata_message_size_str.resize(4);uint32_t get_metadata_message_size = get_metadata_message.size();get_metadata_message_size = littleByteSwap(get_metadata_message_size);memcpy(&get_metadata_message_size_str[0], &get_metadata_message_size, 4);get_metadata_message = get_metadata_message_size_str + get_metadata_message;m_sock->send(&get_metadata_message[0], get_metadata_message.size());len = 0;while (1){int cur_len = m_sock->recv(buf + len, BUF_LEN - len);if (cur_len <= 0)break;len += cur_len;if (len >= BUF_LEN)break;}if (len <= 0)break;int i = 6;while (i < len - 1){if (buf[i] == 'e' && buf[i + 1] == 'e'){i += 2;break;}i++;}if (i < len){data.append(buf + i, len - i);metadata_size -= (len - i);piece++;}else{log_debug << COMMON_PART << "get metadata message is invaild, message:"<< std::endl << dump(std::string(buf, len));if (data.empty()){delete buf;return false;}else{data.append(buf, len);break;}}}delete buf;

下面是請求報文示例

下面是響應報文示例,可以看到第一行第7個字節(jié)開始到第四行第3個字節(jié)結(jié)束,這段是報文消息的元數(shù)據(jù),要把他剔除,因為他不屬于種子信息,這點和bep_0009描述的一致

4.3.4、制作torrent文件

將metadata信息寫入文件中就形成種子文件了,要注意的是在前面循環(huán)獲取metadata時,每一次都要把元數(shù)據(jù)信息給剔除了,因為元數(shù)據(jù)是消息的一部分,而不是種子文件的一部分

4、總結(jié)

本文介紹了DHT和BitTorrent的相關知識,并且實現(xiàn)了一個C++版本的DHT爬蟲,源代碼已經(jīng)上傳到github了,大家覺得有用的話麻煩給項目點一下star,覺得本文有用的話可以點贊收藏關注我一下,謝謝

源碼github地址:https://github.com/bifang-fyh/gude

總結(jié)

以上是生活随笔為你收集整理的使用C++编写一个DHT爬虫,实现从DHT网络爬取BT种子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

色偷偷88欧美精品久久久 | 亚洲天堂精品 | 免费国产在线精品 | 成人在线播放视频 | 天天操夜夜叫 | 蜜臀av性久久久久蜜臀av | 欧美大片mv免费 | 日韩一区在线播放 | 丰满少妇在线观看资源站 | 国产成人久久精品一区二区三区 | 亚洲人成人在线 | www视频免费在线观看 | 欧美色精品天天在线观看视频 | 97人人爽人人 | 久久久久久片 | 久久色中文字幕 | 一区二区精品视频 | 免费在线视频一区二区 | 狠狠撸电影 | 国产在线播放不卡 | 国产精品久久久久久久久久久久冷 | 欧美日韩二区三区 | 亚洲中字幕 | 国产乱对白刺激视频在线观看女王 | 国内精品久久久久久久久久久久 | 国产精品99久久久久久宅男 | 国产亚洲高清视频 | 亚洲精品小视频 | 香蕉91视频 | 丁香六月婷婷开心 | 亚洲一区免费在线 | 久久99精品国产99久久6尤 | 国产999精品视频 | 亚洲五月花 | 久久精品99国产精品日本 | 成人黄色电影在线观看 | 日韩中文久久 | 超碰精品在线观看 | 国产精品3| 九九热1 | 黄色在线观看污 | 国产免费资源 | 日韩免费观看一区二区 | 天天操夜夜干 | 丝袜美腿av | 午夜成人影视 | 黄色小说网站在线 | 天堂在线一区二区三区 | 成人永久视频 | 国产精品123 | 四月婷婷在线观看 | 黄色精品网站 | 久草资源免费 | 国产群p| 福利电影一区二区 | 久久综合久久鬼 | 亚洲aⅴ在线观看 | 在线免费视频一区 | .国产精品成人自产拍在线观看6 | 色香蕉网 | 在线国产专区 | 亚洲综合视频在线观看 | 四虎影视成人永久免费观看视频 | 日韩在线视频网 | 天天操天天玩 | 黄色视屏免费在线观看 | 亚洲精品成人网 | 2022中文字幕在线观看 | 蜜桃传媒一区二区 | 中文字幕av一区二区三区四区 | 91日韩在线视频 | 免费成人在线观看视频 | 亚洲情影院| 99精品免费久久久久久久久日本 | 麻豆影视在线播放 | 国产手机视频在线观看 | 精品伊人久久久 | 91香蕉视频黄色 | 亚洲精品国产精品99久久 | 日韩欧美网站 | 国产视频 亚洲精品 | 免费三级av | 欧美日韩久久 | 国产一级二级三级在线观看 | 九九在线播放 | av中文字幕网 | 日韩三级视频在线观看 | 国产精品美女久久久 | 99视频国产在线 | 久久国产经典视频 | 亚洲精品视频免费观看 | 国产精品24小时在线观看 | 国产精久久久久久久 | 97自拍超碰 | 人人干人人爽 | 91免费在线播放 | 亚洲最新在线视频 | 日日夜夜狠狠操 | 久久精品久久久久久久 | www免费黄色 | 青青河边草观看完整版高清 | 狠狠久久伊人 | 成人av网站在线观看 | 日韩欧美一区二区三区视频 | 一区二区三区高清不卡 | 国产淫片 | 国产资源精品在线观看 | 激情六月婷婷久久 | 亚洲欧美日韩一区二区三区在线观看 | 精品久久久久久久久久久院品网 | 日本中文字幕高清 | 国产综合小视频 | 99精品亚洲 | 欧美精品乱码久久久久久按摩 | 久久精品国产成人 | 粉嫩aⅴ一区二区三区 | 成人黄视频 | 亚洲人成人99网站 | 成人av在线影院 | 国产精品免费在线播放 | 99 色| 国产成人精品综合久久久 | 黄色av网站在线观看免费 | 91视频 - x99av | 97精品国产97久久久久久粉红 | 91麻豆精品国产自产在线 | 人人爽人人看 | 婷婷丁香在线 | 国产黑丝一区二区三区 | av片中文字幕 | 超碰97网站 | 国产精品99久久免费观看 | 中文字幕国产视频 | 国产精品高潮呻吟久久久久 | 亚洲精品在线观看中文字幕 | 91麻豆产精品久久久久久 | 日韩一区二区三区免费视频 | 久久精品网站视频 | 国产成人av在线影院 | 久久久久久久久亚洲精品 | 成年人免费电影在线观看 | 欧美精选一区二区三区 | 成年人在线电影 | 91九色蝌蚪视频在线 | 成人免费看片98欧美 | 成人av高清| 免费日韩一区二区三区 | 狠狠激情中文字幕 | 午夜久久精品 | 国产又粗又猛又黄又爽视频 | 国产91精品高清一区二区三区 | 欧美在线观看视频一区二区 | 亚洲精品国产麻豆 | 国产精品久久久影视 | 一级成人在线 | 四虎最新入口 | 国产精品嫩草影视久久久 | 久九视频 | 中文字幕在线电影 | 亚洲一区二区三区毛片 | 日韩中文字幕亚洲一区二区va在线 | 中文字幕中文字幕在线中文字幕三区 | 在线天堂视频 | 黄色毛片电影 | 日韩特级毛片 | 99热国产在线观看 | 国产人成在线观看 | 玖玖爱免费视频 | 最近中文国产在线视频 | 日韩精品中文字幕有码 | 久久99国产精品 | 亚洲精品视频在线 | 1024在线看片 | 日韩在线视频不卡 | 国产精品18久久久久久不卡孕妇 | 探花视频在线版播放免费观看 | 最近2019年日本中文免费字幕 | 亚洲欧美成人 | 六月丁香色婷婷 | 97色综合 | 欧美在线1 | 久久人人爽人人爽人人片av免费 | 伊人中文字幕在线 | 亚洲精品成人av在线 | 国产精品99免费看 | 在线观看国产91 | 国产男女爽爽爽免费视频 | 亚洲免费一级电影 | 国产对白av | 超碰电影在线观看 | 丁香婷婷综合色啪 | 91中文字幕一区 | 国产精品3 | 在线直播av| 91精品久 | 97偷拍视频| 精品久久久久久久久久久久久久久久久久 | 天天色天天骑天天射 | 亚洲五月婷 | 日韩视频中文字幕 | 日本护士撒尿xxxx18 | 精品国模一区二区 | 天天躁日日躁狠狠躁av麻豆 | 五月婷婷网站 | 九九九毛片 | 在线久草视频 | 黄网站免费看 | 精品1区2区 | 97理论片 | 国产91在线免费视频 | 婷婷精品国产一区二区三区日韩 | 91精品啪啪 | 久草在线这里只有精品 | 美女视频黄色免费 | 国产精品一区二区久久国产 | 99久久电影 | 天天操天天舔天天干 | 久久久久综合 | 超碰最新网址 | 精品资源在线 | 成人福利在线观看 | 久久久高清一区二区三区 | 国产成人久久精品 | 久久伊人精品一区二区三区 | 亚洲一级特黄 | 在线中文字幕电影 | 五月婷婷中文字幕 | 91av片| 日本中文字幕视频 | 成人黄色电影在线 | 亚州日韩中文字幕 | 69国产精品视频 | 在线观看国产www | 九九视频网| 99久久99久久精品国产片果冰 | 国产91粉嫩白浆在线观看 | 97日日| 中文字幕在线观看完整版 | 99性视频 | 成人午夜精品久久久久久久3d | 欧美一级日韩免费不卡 | 国内小视频| 国产一区视频导航 | 国产999免费视频 | 91av在线视频播放 | 天天摸天天操天天舔 | 国产成人不卡 | 91色欧美| av在线一级 | 999超碰| 亚洲更新最快 | 日韩激情av在线 | 在线免费观看国产精品 | 欧美一级特黄aaaaaa大片在线观看 | 国产在线观看a | 99re在线视频观看 | 91久久丝袜国产露脸动漫 | 91香蕉视频 | 91av原创 | 国产看片 色 | 激情电影在线观看 | 狠狠色2019综合网 | 国产伦理一区二区三区 | 波多野结衣电影一区二区 | 日本99热| 国产精品久久一卡二卡 | 91一区啪爱嗯打偷拍欧美 | www.夜夜操| 久操视频在线观看 | 国产高清无线码2021 | 色综合天天色综合 | 精一区二区 | 亚洲精品综合在线观看 | 国产精品99久久99久久久二8 | 人人澡超碰碰97碰碰碰软件 | 国产精品久久久av久久久 | 99精品热 | 日韩在线视频国产 | 欧美色综合天天久久综合精品 | 99久免费精品视频在线观看 | www.久久色 | 在线成人免费av | 香蕉在线影院 | 中文字幕在线观看的网站 | 九九久久免费视频 | 国产精品涩涩屋www在线观看 | 久久久国产影视 | 久久久成人精品 | 国产精品一区在线观看你懂的 | 五月婷婷激情网 | 亚洲三级在线 | 九九久久久久久久久激情 | 久久久久欠精品国产毛片国产毛生 | 久操视频在线播放 | 在线视频 你懂得 | 国内综合精品午夜久久资源 | 婷婷四房综合激情五月 | 成人a大片 | 免费aa大片 | 成人h电影 | 永久免费观看视频 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 丁香婷婷色综合亚洲电影 | 超碰免费公开 | 在线观看中文字幕第一页 | 日韩不卡高清 | 亚洲国产网址 | 精品在线免费视频 | 91热视频 | 91精品国产高清自在线观看 | 日韩视频www | 91精品国产自产在线观看永久 | 免费网址你懂的 | 国产永久网站 | 中文字幕一区二区三区四区 | 麻豆视频91 | 久久人人爽人人人人片 | 性色视频在线 | 91在线www | 日韩av进入 | 国产亚洲精品成人av久久ww | 日韩电影一区二区在线观看 | 九九爱免费视频在线观看 | 久久国产精品久久精品 | 日韩一级片网址 | 国产成人一二片 | 91av视频观看 | 日本精品久久久久 | 美女av电影| 综合精品久久久 | 成人在线观看av | 日韩精品免费一区二区三区 | 在线a亚洲视频播放在线观看 | 日韩久久久久久久久久久久 | 国产日韩欧美在线观看视频 | 99色亚洲 | 天天伊人网| 国产一级免费电影 | 国产精品久久久久影视 | 精品成人a区在线观看 | 插婷婷| 激情视频网页 | 深夜国产在线 | 亚洲小视频在线观看 | 中文字幕精品一区二区精品 | 日韩av免费一区 | 在线观看黄色小视频 | 国产午夜精品免费一区二区三区视频 | 999久久久久久久久久久 | 99视频在线观看免费 | 欧美日韩视频在线一区 | 国产成人一二三 | 日韩精品一区二区三区在线视频 | 欧美调教网站 | 99re中文字幕 | 人人躁| 国产成人av电影在线 | 黄色小说免费在线观看 | 手机看国产毛片 | 欧美成人xxxxx| 999电影免费在线观看 | 久久精品99国产精品酒店日本 | 玖玖在线观看视频 | 97精品国产手机 | 综合精品久久久 | 久久国产欧美日韩 | 在线观看va | 三级av片 | 五月婷婷激情综合网 | 五月天最新网址 | 亚洲资源在线 | 一区二区三区在线免费播放 | 午夜三级福利 | 日韩精品久久久久 | 国产打女人屁股调教97 | 在线亚洲成人 | 日韩欧美视频在线播放 | 久久久久久久久久久久影院 | 欧美日韩午夜爽爽 | 欧美91在线 | 精品一区精品二区 | 天天爱天天干天天爽 | 亚洲精品乱码久久久久久久久久 | 国产日韩欧美在线看 | 最近中文字幕大全中文字幕免费 | 成人午夜免费剧场 | 婷婷电影在线观看 | 久久综合婷婷国产二区高清 | 国产精品中文久久久久久久 | 亚洲精品2区 | 免费观看一级一片 | 久草久草视频 | 四虎影视www | 国产亚洲精品久久久久久移动网络 | 97看片网| 国产高清在线一区 | 韩日精品中文字幕 | 91天堂素人约啪 | 久久黄色免费 | 97成人精品视频在线观看 | 毛片视频网址 | 亚洲精品中文字幕视频 | 亚洲一区欧美激情 | av电影免费在线播放 | 91禁看片 | 欧美色图88 | 国产精品第三页 | 欧美一级性生活 | 中文字幕免费不卡视频 | 国产成人精品女人久久久 | avlulu久久精品 | 欧美日韩在线精品一区二区 | 日韩在线免费高清视频 | 免费看三片 | 毛片网站免费在线观看 | 亚洲黄色成人网 | 欧美日韩中文国产 | 精品一区二区av | 国产高清永久免费 | 4438全国亚洲精品在线观看视频 | 91丨九色丨勾搭 | 精品国产三级 | 日韩精品中文字幕在线不卡尤物 | 国产中文字幕视频 | 免费午夜视频在线观看 | 狠狠干免费 | 国产不卡视频在线 | 日韩在线观看精品 | 日韩一区二区三 | 又湿又紧又大又爽a视频国产 | 亚洲激色| 欧美一级久久久 | 91av手机在线观看 | 免费成人在线观看 | 国产色在线观看 | 国产一区二区三区久久久 | 五月天天色 | 天天做天天爱天天爽综合网 | 亚洲婷婷丁香 | 狠狠色丁香婷婷综合久小说久 | 狠狠操操操 | 中文av在线免费观看 | 日韩av一区二区三区四区 | 综合网欧美 | 成片免费 | 免费看片在线观看 | 久久精品国产99国产 | 91亚洲网 | 成年人看片网站 | 欧美色图亚洲图片 | 97视频免费观看2区 亚洲视屏 | 国产精品一区二区三区免费看 | 一区视频在线 | av一二三区 | 亚洲国产操 | 黄色大全免费网站 | 天天综合婷婷 | 蜜桃视频成人在线观看 | 区一区二区三在线观看 | 在线天堂v | 日韩成人免费在线 | 成人综合婷婷国产精品久久免费 | 天堂网中文在线 | 国产一级小视频 | 亚洲成人精品av | 成人av手机在线 | 在线看黄色的网站 | 天天爽人人爽夜夜爽 | 香蕉视频在线免费 | 国产91九色蝌蚪 | 久久人人爽人人爽人人片av软件 | 亚洲精品国产自产拍在线观看 | 很污的网站 | 国产v视频 | 亚洲最新视频在线 | 久久国产精品免费看 | www日韩视频 | 国产福利a | 久草在线视频在线观看 | 欧美性直播 | 久久国产麻豆 | 欧美日韩精品网站 | av高清一区二区三区 | 欧美一区二区精品在线 | 成人一区二区三区在线观看 | 亚洲精品中文字幕视频 | 亚洲欧美国产精品久久久久 | 日韩手机在线观看 | 亚洲欧美在线视频免费 | 国内亚洲精品 | 亚洲国产午夜精品 | 五月开心色 | 亚洲免费av一区二区 | 在线免费观看黄网站 | 91传媒91久久久 | 久章操 | 亚洲黄色在线观看 | 九九综合九九 | 欧美日韩国产一区二区三区 | 久久日韩精品 | 国产精品久久久久aaaa | 日本黄色免费看 | 97超碰精品| 国产精品亚洲成人 | 欧美淫视频 | 999国内精品永久免费视频 | 成全免费观看视频 | 国产一级做a | 成人一区不卡 | 黄色精品在线看 | 又黄又爽又刺激 | 日韩在线观看一区 | 久 久久影院 | 国产成人av一区二区三区在线观看 | 亚洲精品视频在线免费播放 | 黄网av在线 | 免费观看91视频 | 日本最新一区二区三区 | 色婷婷久久久综合中文字幕 | 久久精品一区 | 999久久国精品免费观看网站 | 麻豆精品传媒视频 | a√天堂中文在线 | 国产精品免费久久久 | 国产真实精品久久二三区 | 国产精品久久久久久高潮 | 91伊人久久大香线蕉蜜芽人口 | 国产一级在线 | 九九热在线视频 | 欧美成人va | 视频 国产区 | 91探花国产综合在线精品 | 国内久久看 | av在线免费在线 | 一区二区精品在线 | 国产精品嫩草55av | 激情视频在线高清看 | 久久欧美视频 | 国内一级片在线观看 | 91一区二区三区久久久久国产乱 | 日韩精品一区在线播放 | 久久久久久久免费看 | 国产午夜精品一区二区三区嫩草 | 人人揉人人揉人人揉人人揉97 | av高清影院 | 丰满少妇对白在线偷拍 | 欧美日韩不卡在线观看 | 日韩欧美电影 | 最新av网址在线观看 | 996久久国产精品线观看 | 91av视频在线观看免费 | 日韩va在线观看 | 黄色av免费电影 | 日韩视频1 | 久久99国产精品 | 久久尤物电影视频在线观看 | 国产伦理久久 | 国产99久久九九精品免费 | 中文字幕资源网 国产 | 免费视频久久久 | 久久久久久国产精品美女 | 夜夜夜草 | 又黄又爽又刺激的视频 | 亚洲精品乱码久久久久久写真 | 天天插日日射 | 激情伊人五月天久久综合 | 在线看片视频 | 天天激情综合网 | 人人爽人人爽 | 久精品在线观看 | 久久国产欧美日韩精品 | 91丨精品丨蝌蚪丨白丝jk | 国产视频在 | 伊人天天色| 国产精品久久久久高潮 | 国产 一区二区三区 在线 | 国产黄色理论片 | 97超碰中文 | 国产日产精品久久久久快鸭 | mm1313亚洲精品国产 | 九九久久电影 | 久久久久久久看片 | 日本午夜免费福利视频 | 在线最新av | 欧美日韩不卡一区二区三区 | 久久蜜臀av | 精品国产久| 岛国av在线 | 中文区中文字幕免费看 | 色视频网站免费观看 | 国产精品1000 | 国产亚洲精品久久久久久移动网络 | 久久久久久黄色 | 亚洲狠狠丁香婷婷综合久久久 | 久久久久久久久久久久国产精品 | 91精品一 | 成年人在线视频观看 | 一区二区三区在线看 | 免费三级av | 天天草综合 | www.狠狠色.com| 国产在线p | 狠狠干美女 | 色噜噜在线观看视频 | 成人a大片 | 成人免费观看完整版电影 | 久久视讯 | 成人中心免费视频 | 天天操天天摸天天干 | 99久久精品日本一区二区免费 | 麻豆久久久 | www.五月婷 | 欧美性免费 | 久久免费视频网 | 中文有码在线视频 | 中文字幕在线影视资源 | 国产精品二区在线 | 久久久久在线视频 | 在线观看国产中文字幕 | 国产免费成人 | 色婷婷狠狠操 | 小草av在线播放 | 免费在线观看成人小视频 | 男女激情片在线观看 | 精品麻豆入口免费 | 黄色片免费电影 | 字幕网av | 日日夜夜天天射 | 中文字幕成人在线 | 日韩av电影国产 | 97视频网站 | 久久精品第一页 | 午夜精品久久久久久中宇69 | 国产精品18久久久久久久久久久久 | 欧美国产日韩在线视频 | 日韩在线免费不卡 | 日韩毛片在线播放 | 久久久久国产精品视频 | 精品国产自在精品国产精野外直播 | 在线成人小视频 | 成人在线免费看视频 | 五月婷婷欧美视频 | 一区二精品 | 国产精品igao视频网入口 | 国产精品国产三级国产aⅴ无密码 | 97成人精品视频在线播放 | 日韩免费观看一区二区 | 激情网站五月天 | 岛国大片免费视频 | 在线免费观看羞羞视频 | 久久99精品久久久久久三级 | 国产999精品久久久久久麻豆 | 天天摸天天操天天舔 | 丁香六月久久综合狠狠色 | 黄色一级片视频 | 伊人色**天天综合婷婷 | 99色国产 | 婷婷六月综合亚洲 | 亚色视频在线观看 | 欧美精品久久久久久久久老牛影院 | 亚洲美女免费精品视频在线观看 | 久久一久久 | 六月色播 | 欧美一级片免费 | 一区二区三区免费网站 | 综合精品久久 | 中文字幕在线日亚洲9 | 日韩在线观看一区二区 | 国产黄a三级三级 | 在线免费观看黄色 | 最近久乱中文字幕 | 中文字幕文字幕一区二区 | 天天射天| 久久久久久久毛片 | 国产精品一区二区av影院萌芽 | 最新免费av在线 | 成人av在线直播 | www.国产在线观看 | 成人动态视频 | 天天做天天爱天天爽综合网 | 人人添人人澡人人澡人人人爽 | 久久久精品视频网站 | 人人要人人澡人人爽人人dvd | 国产我不卡 | 亚洲电影一区二区 | 久久xx视频 | 91人人澡人人爽 | 欧美性性网 | 最近中文字幕完整视频高清1 | 国产精品毛片一区 | 色干综合 | 91久久国产自产拍夜夜嗨 | www一起操| 伊人久在线 | 精品久久久久久亚洲综合网站 | 国产xvideos免费视频播放 | 日韩精品一区电影 | 婷婷丁香六月天 | 欧美乱码精品一区二区 | 91中文字幕在线观看 | 久久激情五月丁香伊人 | 久草香蕉在线视频 | 97精品国产91久久久久久 | 久久成 | 国产乱码精品一区二区蜜臀 | 国产专区日韩专区 | 亚洲视频在线播放 | 手机成人免费视频 | 久久精品一区二区三区中文字幕 | 国产九九九九九 | 911免费视频 | 久久九九影视 | 91丨精品丨蝌蚪丨白丝jk | 在线国产高清 | 91看片成人 | 狠狠色丁香久久婷婷综合丁香 | 在线看的毛片 | 国产精品免费成人 | 亚洲首页 | 黄色国产成人 | 99精品在线播放 | 丁香网五月天 | 国产黄网在线 | 日日夜夜天天久久 | 日韩精品一区二区三区免费观看视频 | 六月丁香伊人 | 国内精品久久影院 | 色婷婷伊人 | 中文永久字幕 | 欧美一区日韩精品 | 国产精品手机视频 | 黄在线 | 青青看片| 日韩网站在线 | 国产高清在线观看av | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 国产精品久久久久久久久岛 | 国产一区二区网址 | 国产日本在线 | 97精品国产一二三产区 | 99re视频在线观看 | 日韩高清在线一区二区三区 | 一二三精品视频 | 亚洲一区日韩精品 | 午夜精品视频一区 | 国产成人区 | 91网站在线视频 | 久久高清av | 成人性生交大片免费观看网站 | 最近中文字幕在线播放 | 国产精品久久三 | 婷婷 综合 色 | 成人av在线直播 | 伊人影院在线观看 | 欧美色图88 | 成人播放器 | 国产色在线| 久久这里只有精品久久 | 综合成人在线 | 久久久精品电影 | 久久99欧美| 国产精品夜夜夜一区二区三区尤 | 日韩理论在线观看 | 久久这里只有精品久久 | 色网影音先锋 | 婷婷开心久久网 | 国产精品va在线观看入 | 国产精品女同一区二区三区久久夜 | 99热最新 | 国产精品女| 天天操天操| 久草视频在线资源 | 中文免费 | 成人黄色大片网站 | 国产v视频 | 四虎在线影视 | 亚洲国产精品久久久久久 | 黄色软件视频网站 | 久久人人爽视频 | 欧美日韩免费一区二区 | 人人涩 | 天天色图 | 久草在线资源观看 | av久久在线 | 中文字幕婷婷 | 国产精品一区二区av麻豆 | 亚洲成人软件 | 黄色av网站在线免费观看 | 色婷婷亚洲婷婷 | 欧美福利片在线观看 | 免费看国产一级片 | 中文字幕观看在线 | 国产破处在线视频 | 超碰97免费观看 | 亚洲资源一区 | 一区三区视频在线观看 | www.69xx | 欧美va天堂在线电影 | 久久a久久| 欧美大片第1页 | 91九色精品 | www.狠狠色.com| 久久人人爽人人 | 韩国一区二区三区视频 | 欧美精品免费一区二区 | 男女视频91 | 欧美日韩国产一区 | 成年人视频在线免费播放 | 国产美女被啪进深处喷白浆视频 | 亚洲伊人网在线观看 | 欧美日韩a视频 | 中文字幕视频播放 | 天天操福利视频 | 午夜精品久久 | 国产亚洲精品av | 中文字幕在线观看第一区 | 国内小视频在线观看 | 狠狠操天天射 | 亚洲激情 欧美激情 | 国产资源在线播放 | 亚洲精品久久久久中文字幕二区 | 午夜三级在线 | 2024国产在线 | 国产成人免费av电影 | 久久久免费电影 | 久久国产91| 国产在线a免费观看 | 亚洲国产三级在线观看 | 国产视频一区在线免费观看 | 亚洲h在线播放在线观看h | 一区二区久久久久 | 亚色视频在线观看 | 99热官网 | 天天激情综合 | 亚洲在线视频观看 | 天堂av在线网 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 黄污在线看 | 久久精品香蕉 | 日本精油按摩3 | 精品国产一区二区三区四 | 色综合久久久久久久久五月 | 狠狠色丁香婷综合久久 | 成人在线观看日韩 | 狠狠色香婷婷久久亚洲精品 | 在线免费观看黄网站 | 亚洲国产日韩精品 | 青青河边草观看完整版高清 | 超碰在线网 | 国产丝袜在线 | 97人人爽 | 操操日| 国产黄色看片 | 亚洲综合在线视频 | 69久久99精品久久久久婷婷 | 国产精品免费久久久久久 | 国产精品video爽爽爽爽 | 久久草在线视频国产 | 欧美日韩久久不卡 | 激情小说网站亚洲综合网 | 天天干,狠狠干 | 亚洲综合成人在线 | 亚洲精品玖玖玖av在线看 | 国产成人久久精品一区二区三区 | 国产精品视频app | 精品黄色在线观看 | 国产精品久久久久久久久久久不卡 | 9免费视频 | 色播五月激情综合网 | 免费国产黄线在线观看视频 | 麻豆免费视频观看 | 中文字幕一区二区三区在线观看 | 日韩在线观看第一页 | 国产五月 | 99久久久久国产精品免费 | 天天操夜夜操国产精品 | 日韩高清不卡一区二区三区 | 色综合久久久 | www五月 | 亚洲 综合 国产 精品 | 日韩成人邪恶影片 | 久草在线中文视频 | 天天狠狠 | 黄色av电影在线 | 久久久久久国产精品亚洲78 | av在线8| 亚洲国产精品小视频 | 国产精品专区在线观看 | 国产电影黄色av | 2021国产精品视频 | 免费日韩 精品中文字幕视频在线 | 免费看毛片网站 | 一区精品久久 | 成人免费视频视频在线观看 免费 | 欧美亚洲精品在线观看 | 在线小视频你懂得 | 国产精品久久99综合免费观看尤物 | 日韩视频免费播放 | 久久久久女人精品毛片 | 亚洲在线资源 | 免费久久精品视频 | 高清av中文字幕 | 久久久精品网 | 91精品1区 | 69国产盗摄一区二区三区五区 | 中文字幕不卡在线88 | 亚洲经典视频在线观看 | 少妇性xxx | 麻豆视频免费在线 | 国产91九色蝌蚪 | 午夜久久网 | 日韩,中文字幕 | 亚洲高清视频在线观看 | 嫩草av在线| 色网影音先锋 | 国产视频久久 | 成人禁用看黄a在线 | 久久久久久久免费 | 久久精品专区 | 日韩影视大全 | 久久久九色精品国产一区二区三区 | 日本特黄一级片 | 午夜 久久 tv | 国产69久久久 | 欧美一二在线 | 亚洲午夜久久久久 | 91综合在线| 99999精品视频| 免费看一及片 | 日韩mv欧美mv国产精品 | 久久国产精品免费观看 | 久久国产一区二区三区 | 国产免费又爽又刺激在线观看 | 91免费试看 | 丁香六月网 | 日韩欧美网址 | 国产手机在线 | 五月婷婷激情综合 | 蜜桃视频成人在线观看 | 久久亚洲热| 97视频播放| 亚洲国产婷婷 | 色婷婷av国产精品 | 久久国产精品99国产 | 亚洲精品高清视频在线观看 | 91免费网 | 国产一级一片免费播放放 | 国产一级91 | 久久久久久高潮国产精品视 | 在线免费观看国产视频 | 深爱五月激情五月 | 狠狠色丁香婷婷综合久久片 | 免费看的黄色的网站 | 97精品国产97久久久久久免费 | 91网站观看 | 亚洲禁18久人片 | 日产乱码一二三区别免费 | 天天插日日射 | 99久久精品国产一区二区三区 | 国产精品11 | 99r精品视频在线观看 | 国产片网站 | 91麻豆精品国产91久久久久 | 精品国产一区二区三区久久久久久 | 日韩电影一区二区三区在线观看 | 三级黄色在线观看 | 韩国精品一区二区三区六区色诱 | 中文字幕在线观看的网站 | 四虎5151久久欧美毛片 | 久久久精品福利视频 | 国产女教师精品久久av | 精品亚洲二区 | 日本一区二区三区免费看 | 狠狠色狠狠综合久久 | 手机在线中文字幕 | 亚洲精品小区久久久久久 | 日韩av影视在线观看 | 成人国产精品免费观看 | 欧美国产91 | 国产看片 色 | 久草视频网 | 在线观看日韩国产 | 四虎8848免费高清在线观看 | 免费久久99精品国产婷婷六月 | 色婷婷亚洲综合 | 国产精品一区二区免费看 | 久久久久久国产精品美女 | 久久久久亚洲精品成人网小说 | 国产一区二区三精品久久久无广告 | 亚州av成人 | 一区二区三区免费在线观看 | 在线视频 区 | 日韩在线字幕 | av在线看片 | 久久久999免费视频 日韩网站在线 | 午夜视频在线瓜伦 | 91福利社在线观看 | 日日干夜夜骑 |