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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

用boost库实现traceroute小工具

發(fā)布時間:2023/12/13 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用boost库实现traceroute小工具 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

????? 參考了網(wǎng)上幾個 traceroute的實現(xiàn)版本,存在一些缺陷,比如沒有做超時處理,或者只能在window下使用。自己用boost實現(xiàn)了一個traceroute小工具,在window下正常運行。

????? 先來看下面實現(xiàn)的原理。這些說明來自維基百科。traceroute,現(xiàn)代Linux系統(tǒng)稱為tracepath,Windows系統(tǒng)稱為tracert,是一種電腦網(wǎng)絡工具。它可顯示數(shù)據(jù)包在IP網(wǎng)絡經(jīng)過的路由器的IP地址。 程序利用增加存活時間(TTL)值來實現(xiàn)其功能的。每當數(shù)據(jù)包經(jīng)過一個路由器,其存活時間就會減1。當其存活時間是0時,主機便取消數(shù)據(jù)包,并傳送一個ICMP TTL數(shù)據(jù)包給原數(shù)據(jù)包的發(fā)出者。

????? 下面是具體實現(xiàn)的源代碼:

?

1 // 2 // traceroute.cpp 3 // ~~~~~~~~ 4 // 5 // BoSheng Lu 2013-04-25 6 // 7 // Version 1.0. 8 // 9 10 #include <boost/asio.hpp> 11 #include <boost/bind.hpp> 12 #include<boost/thread.hpp> 13 #include <istream> 14 #include <iostream> 15 #include<iomanip> 16 #include<string> 17 #include <ostream> 18 19 #include "icmp_header.hpp" 20 #include "ipv4_header.hpp" 21 22 using boost::asio::ip::icmp; 23 using boost::asio::deadline_timer; 24 namespace posix_time = boost::posix_time; 25 26 class traceroute 27 { 28 public: 29 traceroute(boost::asio::io_service& io_service, const char* destination) 30 : resolver_(io_service), socket_(io_service, icmp::v4()), 31 sequence_number_(0), max_hop_(30) 32 { 33 icmp::resolver::query query(icmp::v4(), destination, ""); 34 destination_ = *resolver_.resolve(query); 35 36 std::cout << "\nTracing route to " << destination 37 << " [" << destination_.address().to_string() << "]" 38 << " with a maximum of " << max_hop_ << " hops.\n" << std::endl; 39 40 #if defined(BOOST_WINDOWS) 41 int timeout = 5000; 42 if( setsockopt(socket_.native(), SOL_SOCKET, SO_RCVTIMEO, 43 (const char*)&timeout, sizeof(timeout))) 44 { 45 std::cout << "RCVTIMEO not set properly." << std::endl; 46 throw std::runtime_error("RCVTIMEO not set properly"); 47 } 48 #else 49 struct timeval tv; 50 tv.tv_sec = 5; 51 tv.tv_usec = 0; 52 if( setsockopt(socket_.native(), SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv))) 53 { 54 std::cout << "RCVTIMEO not set properly." << std::endl; 55 throw std::runtime_error("RCVTIMEO not set properly"); 56 } 57 #endif 58 59 reach_dest_host_ = false; 60 int ttl = 1; 61 while (!reach_dest_host_ && max_hop_--) 62 { 63 const boost::asio::ip::unicast::hops option(ttl); 64 socket_.set_option(option); 65 66 boost::asio::ip::unicast::hops op; 67 socket_.get_option(op); 68 if( ttl != op.value() ) 69 { 70 std::cout << "TTL not set properly. Should be " 71 << ttl << " but was set to " 72 << op.value() << '.' << std::endl; 73 throw std::runtime_error("TTL not set properly"); 74 } 75 76 std::cout << std::setw(3) << ttl << std::flush; 77 start_send(); 78 start_receive(); 79 80 ttl++; 81 }//while 82 } 83 84 private: 85 void start_send() 86 { 87 std::string body("\"Hello!\" from Asio ping."); 88 89 // Create an ICMP header for an echo request. 90 icmp_header echo_request; 91 echo_request.type(icmp_header::echo_request); 92 echo_request.code(0); 93 echo_request.identifier(get_identifier()); 94 echo_request.sequence_number(++sequence_number_); 95 compute_checksum(echo_request, body.begin(), body.end()); 96 97 // Encode the request packet. 98 boost::asio::streambuf request_buffer; 99 std::ostream os(&request_buffer); 100 os << echo_request << body; 101 102 // Send the request. 103 time_sent_ = posix_time::microsec_clock::universal_time(); 104 socket_.send_to(request_buffer.data(), destination_); 105 } 106 107 108 void start_receive() 109 { 110 // Discard any data already in the buffer. 111 reply_buffer_.consume(reply_buffer_.size()); 112 113 // Wait for a reply. We prepare the buffer to receive up to 64KB. 114 boost::system::error_code ec; 115 boost::asio::socket_base::message_flags flags = 0; 116 size_t len = socket_.receive(reply_buffer_.prepare(65536), flags, ec); 117 118 handle_receive(len, ec); 119 } 120 121 void handle_receive(std::size_t length, boost::system::error_code& ec) 122 { 123 // The actual number of bytes received is committed to the buffer so that we 124 // can extract it using a std::istream object. 125 reply_buffer_.commit(length); 126 127 // Decode the reply packet. 128 std::istream is(&reply_buffer_); 129 ipv4_header ipv4_hdr; 130 is >> ipv4_hdr; 131 132 if(ec) 133 { 134 std::cout << std::setw(9) << '*' << '\t' << "Request timed out." << std::endl; 135 return; 136 } 137 138 posix_time::ptime now = posix_time::microsec_clock::universal_time(); 139 long long dwRoundTripTime = (now - time_sent_).total_milliseconds(); 140 141 if(dwRoundTripTime) 142 { 143 std::cout << std::setw(6) << dwRoundTripTime << " ms" << std::flush; 144 } 145 else 146 { 147 std::cout << std::setw(6) << "<1" << " ms" << std::flush; 148 } 149 150 boost::this_thread::sleep(boost::posix_time::seconds(2)); 151 152 std::cout << '\t' << ipv4_hdr.source_address() << std::endl; 153 154 // Print out some information about the reply packet. 155 if( ipv4_hdr.source_address().to_string() == destination_.address().to_string() ) 156 { 157 reach_dest_host_ = true; 158 std::cout << std::endl; 159 std::cout << std::endl; 160 std::cout << "traceroute sucess!" << std::endl; 161 162 icmp_header icmp_hdr; 163 is >> icmp_hdr; 164 165 if (is && icmp_hdr.type() == icmp_header::echo_reply 166 && icmp_hdr.identifier() == get_identifier() 167 && icmp_hdr.sequence_number() == sequence_number_) 168 { 169 // Print out some information about the reply packet. 170 std::cout << length - ipv4_hdr.header_length() 171 << " bytes from " << ipv4_hdr.source_address() 172 << ": icmp_seq=" << icmp_hdr.sequence_number() 173 << ", ttl=" << ipv4_hdr.time_to_live() 174 << ", time=" << dwRoundTripTime << " ms" 175 << std::endl; 176 } 177 } 178 } 179 180 static unsigned short get_identifier() 181 { 182 #if defined(BOOST_WINDOWS) 183 return static_cast<unsigned short>(::GetCurrentProcessId()); 184 #else 185 return static_cast<unsigned short>(::getpid()); 186 #endif 187 } 188 189 icmp::resolver resolver_; 190 icmp::endpoint destination_; 191 icmp::socket socket_; 192 unsigned short sequence_number_; 193 posix_time::ptime time_sent_; 194 boost::asio::streambuf reply_buffer_; 195 bool reach_dest_host_; 196 std::size_t max_hop_; 197 }; 198 199 int main(int argc, char* argv[]) 200 { 201 try 202 { 203 if(argc != 2) 204 { 205 std::cerr << "Usage: ping <host>" << std::endl; 206 #if !defined(BOOST_WINDOWS) 207 std::cerr << "(You may need to run this program as root.)" << std::endl; 208 #endif 209 return 1; 210 } 211 212 boost::asio::io_service io_service; 213 traceroute p(io_service, argv[1]); 214 io_service.run(); 215 } 216 catch (std::exception& e) 217 { 218 std::cerr << "Exception: " << e.what() << std::endl; 219 } 220 }

?

?

??? ? ?這個源碼實現(xiàn)使用了boost庫附帶的boost asio使用示例中的代碼,下面也將這個例子中使用到的代碼附上,方便使用。至于boost庫的編譯使用另請參考其他的文章。

????? 下面是ipv4_header.hpp

// // ipv4_header.hpp // ~~~~~~~~~~~~~~~ // // Copyright (c) 2003-2012 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // #ifndef IPV4_HEADER_HPP #define IPV4_HEADER_HPP#include <algorithm> #include <boost/asio/ip/address_v4.hpp>// Packet header for IPv4. // // The wire format of an IPv4 header is: // // 0 8 16 31 // +-------+-------+---------------+------------------------------+ --- // | | | | | ^ // |version|header | type of | total length in bytes | | // | (4) | length| service | | | // +-------+-------+---------------+-+-+-+------------------------+ | // | | | | | | | // | identification |0|D|M| fragment offset | | // | | |F|F| | | // +---------------+---------------+-+-+-+------------------------+ | // | | | | | // | time to live | protocol | header checksum | 20 bytes // | | | | | // +---------------+---------------+------------------------------+ | // | | | // | source IPv4 address | | // | | | // +--------------------------------------------------------------+ | // | | | // | destination IPv4 address | | // | | v // +--------------------------------------------------------------+ --- // | | ^ // | | | // / options (if any) / 0 - 40 // / / bytes // | | | // | | v // +--------------------------------------------------------------+ ---class ipv4_header { public:ipv4_header() { std::fill(rep_, rep_ + sizeof(rep_), 0); }unsigned char version() const { return (rep_[0] >> 4) & 0xF; }unsigned short header_length() const { return (rep_[0] & 0xF) * 4; }unsigned char type_of_service() const { return rep_[1]; }unsigned short total_length() const { return decode(2, 3); }unsigned short identification() const { return decode(4, 5); }bool dont_fragment() const { return (rep_[6] & 0x40) != 0; }bool more_fragments() const { return (rep_[6] & 0x20) != 0; }unsigned short fragment_offset() const { return decode(6, 7) & 0x1FFF; }unsigned int time_to_live() const { return rep_[8]; }unsigned char protocol() const { return rep_[9]; }unsigned short header_checksum() const { return decode(10, 11); }boost::asio::ip::address_v4 source_address() const{boost::asio::ip::address_v4::bytes_type bytes= { { rep_[12], rep_[13], rep_[14], rep_[15] } };return boost::asio::ip::address_v4(bytes);}boost::asio::ip::address_v4 destination_address() const{boost::asio::ip::address_v4::bytes_type bytes= { { rep_[16], rep_[17], rep_[18], rep_[19] } };return boost::asio::ip::address_v4(bytes);}friend std::istream& operator>>(std::istream& is, ipv4_header& header){is.read(reinterpret_cast<char*>(header.rep_), 20);if (header.version() != 4)is.setstate(std::ios::failbit);std::streamsize options_length = header.header_length() - 20;if (options_length < 0 || options_length > 40)is.setstate(std::ios::failbit);elseis.read(reinterpret_cast<char*>(header.rep_) + 20, options_length);return is;}private:unsigned short decode(int a, int b) const{ return (rep_[a] << 8) + rep_[b]; }unsigned char rep_[60]; };#endif // IPV4_HEADER_HPP

?????? 下面是icmp_header.hpp

// // icmp_header.hpp // ~~~~~~~~~~~~~~~ // // Copyright (c) 2003-2012 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // #ifndef ICMP_HEADER_HPP #define ICMP_HEADER_HPP#include <istream> #include <ostream> #include <algorithm>// ICMP header for both IPv4 and IPv6. // // The wire format of an ICMP header is: // // 0 8 16 31 // +---------------+---------------+------------------------------+ --- // | | | | ^ // | type | code | checksum | | // | | | | | // +---------------+---------------+------------------------------+ 8 bytes // | | | | // | identifier | sequence number | | // | | | v // +-------------------------------+------------------------------+ ---class icmp_header { public:enum { echo_reply = 0, destination_unreachable = 3, source_quench = 4,redirect = 5, echo_request = 8, time_exceeded = 11, parameter_problem = 12,timestamp_request = 13, timestamp_reply = 14, info_request = 15,info_reply = 16, address_request = 17, address_reply = 18 };icmp_header() { std::fill(rep_, rep_ + sizeof(rep_), 0); }unsigned char type() const { return rep_[0]; }unsigned char code() const { return rep_[1]; }unsigned short checksum() const { return decode(2, 3); }unsigned short identifier() const { return decode(4, 5); }unsigned short sequence_number() const { return decode(6, 7); }void type(unsigned char n) { rep_[0] = n; }void code(unsigned char n) { rep_[1] = n; }void checksum(unsigned short n) { encode(2, 3, n); }void identifier(unsigned short n) { encode(4, 5, n); }void sequence_number(unsigned short n) { encode(6, 7, n); }friend std::istream& operator>>(std::istream& is, icmp_header& header){ return is.read(reinterpret_cast<char*>(header.rep_), 8); }friend std::ostream& operator<<(std::ostream& os, const icmp_header& header){ return os.write(reinterpret_cast<const char*>(header.rep_), 8); }private:unsigned short decode(int a, int b) const{ return (rep_[a] << 8) + rep_[b]; }void encode(int a, int b, unsigned short n){rep_[a] = static_cast<unsigned char>(n >> 8);rep_[b] = static_cast<unsigned char>(n & 0xFF);}unsigned char rep_[8]; };template <typename Iterator> void compute_checksum(icmp_header& header,Iterator body_begin, Iterator body_end) {unsigned int sum = (header.type() << 8) + header.code()+ header.identifier() + header.sequence_number();Iterator body_iter = body_begin;while (body_iter != body_end){sum += (static_cast<unsigned char>(*body_iter++) << 8);if (body_iter != body_end)sum += static_cast<unsigned char>(*body_iter++);}sum = (sum >> 16) + (sum & 0xFFFF);sum += (sum >> 16);header.checksum(static_cast<unsigned short>(~sum)); }#endif // ICMP_HEADER_HPP

?

轉(zhuǎn)載于:https://www.cnblogs.com/spruce/archive/2013/04/26/3044233.html

總結(jié)

以上是生活随笔為你收集整理的用boost库实现traceroute小工具的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

国产精品免费久久久 | 欧美色图狠狠干 | 麻豆播放 | 国产精品九九久久久久久久 | 国产精品18毛片一区二区 | 久久99久久99精品免观看粉嫩 | 国产一区二区播放 | 日韩二区在线 | 亚洲影视九九影院在线观看 | 九九精品久久久 | 国产日韩精品久久 | 日日夜夜网 | 在线观看中文字幕2021 | 久久在线免费观看 | av免费网站 | 中文字幕丰满人伦在线 | 四虎国产 | 日本在线免费看 | 五月激情综合婷婷 | 丁香婷婷综合色啪 | 在线观看成年人 | 狠狠干 狠狠操 | 又黄又爽又无遮挡的视频 | 成人黄色电影视频 | 香蕉视频色 | 精品亚洲一区二区三区 | 久久久久久久综合色一本 | 国产色网站 | 天天操夜夜爱 | 五月开心六月婷婷 | 成人免费毛片aaaaaa片 | 中文字幕在线观看你懂的 | 99视 | 国产视频一区二区在线 | 亚洲桃花综合 | 亚洲最新av | 成人亚洲精品国产www | 久久久久免费精品国产 | 国产亚洲精品精品精品 | 色婷婷综合成人av | 伊香蕉大综综综合久久啪 | 久久久久久久看片 | 国产精品一区二区吃奶在线观看 | 国产剧情在线一区 | 激情动态 | 国产v欧美 | 91尤物国产尤物福利在线播放 | 99这里只有 | 99re国产 | 久久天天操 | 97色se| 欧美天堂视频在线 | 在线观看亚洲专区 | 日韩免费视频 | 在线观看国产一区二区 | 色亚洲网 | 在线免费观看一区二区三区 | 欧美小视频在线观看 | 久久国产精品99久久久久久丝袜 | ,午夜性刺激免费看视频 | 99久久夜色精品国产亚洲 | 欧美在线aaa | 最新日韩电影 | 天天操天天色天天射 | 夜夜躁日日躁狠狠躁 | 顶级欧美色妇4khd | 婷婷中文字幕综合 | 久久久久亚洲精品男人的天堂 | 免费看国产一级片 | av电影免费在线播放 | 最新中文字幕在线观看视频 | 久久综合九色欧美综合狠狠 | 99这里有精品 | 国产精品视频app | 8x8x在线观看视频 | 国产免费又爽又刺激在线观看 | 亚洲人成在线观看 | 久久玖| 夜夜夜影院 | 久久久久久久久爱 | 精品a在线 | 色多多在线观看 | 四虎影视精品 | 亚洲国产精品电影 | 国产精品久久久久免费 | 一区国产精品 | 手机av在线不卡 | 国语麻豆 | 久久热亚洲 | 日本公妇在线观看高清 | 91av免费看 | 午夜精品福利一区二区三区蜜桃 | 欧美国产亚洲精品久久久8v | 一级a性色生活片久久毛片波多野 | 亚洲精品久久视频 | 亚洲美女精品 | 69视频永久免费观看 | www99精品| 欧美最猛性xxx | 亚洲人成网站精品片在线观看 | 成人综合婷婷国产精品久久免费 | 在线看黄网站 | 国产亚洲精品中文字幕 | 天天色天天搞 | av官网 | 在线亚洲小视频 | 973理论片235影院9 | 久久成人福利 | 国产资源免费在线观看 | 天堂资源在线观看视频 | 午夜av剧场 | 91毛片在线观看 | 手机在线看a | 亚洲欧美成人 | 一区二区激情视频 | 极品久久久久 | 五月天激情综合 | 国产精品久久久久久久久久久免费 | 色狠狠婷婷 | 干干干操操操 | 国产精品视频区 | 免费a网址 | 午夜精品av在线 | 九九免费观看全部免费视频 | 中文字幕有码在线 | 456成人精品影院 | 久久久久久久久久久高潮一区二区 | 国产精品18久久久久久vr | 久久久久久久久久伊人 | 久久久久久国产精品 | 天天爱天天射天天干天天 | 欧美影片| 成人影片在线免费观看 | 日韩大片免费在线观看 | 999国内精品永久免费视频 | 久久99国产精品久久99 | 免费av 在线 | 成人精品国产免费网站 | 97国产精品久久 | 精品久久久久久久久久久久 | 久久久国产精品人人片99精片欧美一 | 91麻豆文化传媒在线观看 | 精品欧美一区二区精品久久 | 国产成人久久精品一区二区三区 | 亚洲专区 国产精品 | 久av在线 | 日韩中文字幕免费在线观看 | 亚洲精品视频在线播放 | 欧美精彩视频在线观看 | 久久久久久久99 | 国产在线专区 | 91看片麻豆 | 久久99电影 | 五月花丁香婷婷 | 国产999在线观看 | 97在线观看视频免费 | 激情综合五月婷婷 | 西西大胆免费视频 | 99色人| 日韩精品欧美专区 | 99热这里只有精品免费 | 中文字幕色在线视频 | 在线视频 区 | 午夜免费福利视频 | 蜜臀av免费一区二区三区 | 久久精品欧美 | 天天视频色版 | 色综合久久中文字幕综合网 | 国产女人18毛片水真多18精品 | 性色av香蕉一区二区 | 特级西西www44高清大胆图片 | 午夜精品一区二区三区可下载 | 国产生活一级片 | 精品久久久久久久久久久久久 | 香蕉精品视频在线观看 | 国产精国产精品 | 成人日韩av | 一区二区三区在线观看免费视频 | 国产高清免费av | 狠狠色丁香婷婷综合久小说久 | 国产色在线,com | 亚洲欧美日韩中文在线 | 亚洲精选在线观看 | 黄色片网站免费 | 国产精品精品久久久 | 亚洲精品乱码久久久久 | 国产婷婷精品av在线 | 久久久这里有精品 | www.夜夜骑.com | 国产一区视频免费在线观看 | 丁香六月久久综合狠狠色 | 91九色视频在线播放 | 天天躁日日躁狠狠躁av中文 | 亚洲视频电影在线 | 菠萝菠萝在线精品视频 | 日韩性色 | 亚洲精品www久久久 www国产精品com | 91av电影在线观看 | 日韩精品三区四区 | 久久久高清免费视频 | 天天干 天天摸 天天操 | 99视频在线观看一区三区 | 久久综合操 | 国产在线视频在线观看 | 在线亚洲日本 | 91精品国产三级a在线观看 | 色天天综合久久久久综合片 | 国产成人黄色 | 超碰97人人在线 | 91精品对白一区国产伦 | 国产精品久久久久久久久久久杏吧 | 亚洲欧美视频在线观看 | 亚洲一区不卡视频 | 日本69hd| 欧美看片 | 黄网站大全 | 五月婷婷丁香网 | 婷婷六月中文字幕 | 超碰日韩在线 | 免费观看高清 | 日日夜夜中文字幕 | 久av电影 | 欧美专区日韩专区 | 久久综合狠狠 | 在线中文视频 | av电影中文字幕在线观看 | 欧美亚洲专区 | 日本夜夜草视频网站 | 久久av高清 | 天天操操| 成人免费视频在线观看 | 欧美 日韩 性 | 久久久久久久久久久久久久av | 91亚洲精品久久久蜜桃网站 | 国产日产欧美在线观看 | 波多野结衣电影一区 | 在线观看黄av| 久久99国产精品视频 | 久久人人97超碰国产公开结果 | 国产在线观看黄 | 久久三级视频 | 久草久草在线观看 | 亚洲综合国产精品 | 碰超在线观看 | 国内精品视频免费 | 性日韩欧美在线视频 | 一区二区毛片 | 在线 国产 亚洲 欧美 | 国产 一区二区三区 在线 | 天天躁天天狠天天透 | 国产在线精品福利 | 国产精品涩涩屋www在线观看 | 99在线免费观看视频 | 亚洲日本在线一区 | 人人爱人人添 | 中文字幕亚洲欧美日韩 | 久久永久视频 | 精品国产午夜 | 蜜桃传媒一区二区 | 日本动漫做毛片一区二区 | 丁香九月婷婷 | 日韩av不卡在线播放 | 久久久久久美女 | 人人添人人澡 | 久久国产精品久久精品 | 天天干天天干天天射 | www.夜夜操.com| 中字幕视频在线永久在线观看免费 | 精品国内自产拍在线观看视频 | 日日操日日插 | 国产色拍拍拍拍在线精品 | 91黄色免费网站 | 免费电影播放 | 国内精品99 | 一区二区三区电影大全 | www国产在线| 亚洲精品88欧美一区二区 | 国产一级精品绿帽视频 | av高清在线观看 | 日日干av | 在线看片日韩 | 国产无限资源在线观看 | 久久香蕉电影 | 国产精品一区二区免费看 | 亚洲免费在线观看视频 | 韩国中文三级 | 伊人狠狠色丁香婷婷综合 | 精品专区 | 精品一区二区三区四区在线 | 91爱爱中文字幕 | 8x成人免费视频 | 在线之家免费在线观看电影 | 日韩69av | 中文字幕在线播放日韩 | 夜夜躁日日躁狠狠久久av | 国产一区二区在线精品 | 狠狠色香婷婷久久亚洲精品 | 麻豆久久一区 | 992tv又爽又黄的免费视频 | 国产黑丝一区二区 | 免费看一级黄色大全 | 国产二区电影 | jizzjizzjizz亚洲 | 久久99国产综合精品 | 2019天天干天天色 | 亚洲精品自拍 | 免费观看日韩 | 激情自拍av | 中文资源在线播放 | 久久午夜网 | 天天天天天天天操 | 免费观看福利视频 | 91精品国产福利在线观看 | 操碰av| 精品亚洲成a人在线观看 | av九九九 | 亚洲成a人片77777kkkk1在线观看 | 中文亚洲欧美日韩 | 91黄色在线视频 | 三级免费黄色 | 久久午夜网 | 久草在线视频免赞 | av亚洲产国偷v产偷v自拍小说 | 中文字幕在线资源 | 国产精品久久久久久久久岛 | 国产精品一区二区免费视频 | 东方av在线免费观看 | 精品国产亚洲日本 | 一级淫片a | 国产三级视频在线 | 国产伦精品一区二区三区无广告 | 久久国产一区 | 狠狠色丁香婷婷综合基地 | 国产精品成人久久久久久久 | 国内精自线一二区永久 | 99久久精品国产欧美主题曲 | 日韩欧美在线第一页 | 国产精品午夜免费福利视频 | 成人在线免费看视频 | 91人人揉日日捏人人看 | 狠狠色丁香婷综合久久 | 国产高清无av久久 | 欧美日韩在线视频一区二区 | 中文字幕在线一二 | 91免费网站在线观看 | 欧美日韩中文国产一区发布 | 91禁在线看 | 国产精品久久久久久久久久东京 | 国产精品一区二区三区在线看 | 成人国产精品一区二区 | 久久国产精品99国产 | 国产一区欧美二区 | 欧美激情第28页 | 亚洲色综合 | 国产一二三区av | 精品999| 日韩国产精品一区 | 久久久免费国产 | 久久精品视频4 | 婷婷综合激情 | 日韩高清在线不卡 | 97热久久免费频精品99 | 视频福利在线 | 亚洲精品一区二区三区四区高清 | 88av视频| 久久久久免费精品视频 | 中文字幕视频一区 | 91在线观看视频网站 | 国产综合精品一区二区三区 | 久久在现视频 | 国产成人精品电影久久久 | 欧美日韩一级久久久久久免费看 | 久久国产亚洲 | 日韩电影在线观看一区二区 | 国产99区 | 免费午夜网站 | 久久久久国产精品午夜一区 | 国产高清专区 | 亚洲精品免费在线观看视频 | 2020天天干天天操 | 18做爰免费视频网站 | 在线免费黄色 | 国产又粗又长又硬免费视频 | 日韩,精品电影 | 九九免费精品视频在线观看 | 亚洲激情 在线 | 看av免费网站| 成人影片在线免费观看 | 精品伦理一区二区三区 | 国产1级毛片 | 在线观看视频91 | 五月婷综合 | 久久免费高清 | 中文字幕日韩有码 | 日韩欧美91| 一区二区三区国产欧美 | 夜夜操天天操 | 日日日视频 | 亚洲2019精品 | 蜜臀av性久久久久av蜜臀三区 | 亚洲电影第一页av | 国产在线a免费观看 | 91九色国产 | 日韩av影视| 久久久久免费看 | 九九视频网站 | av在线播放中文字幕 | 国产不卡网站 | 色黄www小说 | 免费在线观看视频a | 草久中文字幕 | 日日夜夜狠狠干 | 亚洲精品国产日韩 | 久久99精品久久久久婷婷 | 午夜久久福利视频 | 亚洲综合色激情五月 | 成人在线视频一区 | 91 中文字幕| 91成人观看| 黄色1级毛片 | 日韩av一区二区在线 | 操久在线| 国产一级视频 | 久一久久 | 国产小视频免费观看 | 99亚洲国产精品 | 国产日韩在线观看一区 | 深夜福利视频在线观看 | 免费成人av在线看 | 在线导航av | 国产一区二区精品在线 | 99精品免费久久久久久久久 | 91av欧美 | 欧美天堂久久 | 国产精品免费在线 | 欧美a级免费视频 | 日韩电影一区二区在线观看 | 精品福利在线视频 | 亚洲天堂精品 | 天天射,天天干 | 色婷婷激情四射 | 国产精品一区二区在线观看 | 国产中文字幕一区二区三区 | 国产中文字幕91 | 日韩国产精品久久 | 国产精品综合久久久久 | 91.麻豆视频 | 黄色福利网 | 国产精品丝袜 | 国产日韩在线播放 | 在线观看久草 | 亚洲黄色大片 | 午夜精品一区二区三区免费 | 久草在线免费色站 | 欧美一级看片 | 亚洲二区精品 | 91成人天堂久久成人 | 亚洲一二区视频 | 久久精品久久精品 | 天天天色| 成人h在线| 日韩在线观看一区二区 | 91精品播放 | 久久一本综合 | 欧美综合在线视频 | 精品久久网 | 亚洲视频免费在线 | 色网站在线免费观看 | 久草91视频 | 国产在线小视频 | 夜夜干天天操 | aaa亚洲精品一二三区 | 欧美日韩高清免费 | 国产免费久久 | 日韩av专区| 午夜精品视频福利 | 中文字幕免费在线看 | 日韩欧美在线观看一区 | 国产成人福利片 | 激情欧美一区二区免费视频 | 亚洲国产mv | 国产精品美女久久久久久网站 | 91看片淫黄大片在线播放 | 亚洲人成人天堂h久久 | 国产九色在线播放九色 | 激情综合网色播五月 | av一级一片 | 深夜免费福利在线 | 色吊丝在线永久观看最新版本 | 国产精品一区二区av麻豆 | 国产国语在线 | 国内精品小视频 | 人人舔人人爱 | 色婷婷狠狠18 | 狠狠躁天天躁 | 亚洲 欧美日韩 国产 中文 | 精品欧美小视频在线观看 | 亚洲精品久久久久久久不卡四虎 | 国产一二三区在线观看 | 国产精品淫片 | 天天射天天艹 | 日本高清xxxx | 国产无区一区二区三麻豆 | 国产污视频在线观看 | 欧美精品一区二区蜜臀亚洲 | 9999亚洲 | 久久九九久久精品 | 一级黄视频| 高清有码中文字幕 | 久草免费在线 | 亚洲va欧美| 91精品国产99久久久久 | 欧美日韩久久不卡 | 最近中文字幕大全中文字幕免费 | av免费在线免费观看 | 天天干天天射天天插 | 国产精品99久久久久 | 超碰人人91 | 精品久久久久国产 | 麻豆高清免费国产一区 | 在线观看免费av网 | 综合色久 | 一区二区三区电影大全 | 国产精品免费一区二区三区 | 激情小说网站亚洲综合网 | 成人午夜影院在线观看 | 综合久久精品 | 精品久久久久久亚洲综合网站 | 天天摸天天舔天天操 | av青草| 高清一区二区三区 | 亚洲综合激情五月 | 六月丁香在线观看 | 国产又粗又猛又黄 | 亚洲免费观看视频 | 亚洲免费av观看 | 久久久久久高潮国产精品视 | 亚洲春色综合另类校园电影 | 在线观看午夜av | 成人黄大片视频在线观看 | 精品国产一区二区三区久久影院 | 亚洲精品在线国产 | 亚洲成人国产精品 | 国产一区二区精品久久 | 免费高清国产 | 欧美亚洲成人免费 | 99热这里只有精品国产首页 | 在线免费观看不卡av | 美女一二三区 | 一级国产视频 | 91精品一区二区三区蜜臀 | 丁香六月五月婷婷 | 日韩精品一区二区三区免费观看视频 | 国产在线va| 国产一区国产二区在线观看 | 五月天综合色激情 | 不卡的一区二区三区 | 伊人六月 | 欧美调教网站 | 国产91粉嫩白浆在线观看 | 成人毛片a | 91福利视频在线 | 亚洲伊人婷婷 | 99久久精品日本一区二区免费 | 国产一区二区三区 在线 | 成人免费在线观看入口 | 6080yy午夜一二三区久久 | 久久久午夜影院 | a在线免费 | 亚洲国产精品视频在线观看 | 久久夜av | 亚州av网站 | 国产黄| 色婷婷www| 久久国产精品一国产精品 | 国产免费又粗又猛又爽 | 日本中文字幕系列 | 国产精品va最新国产精品视频 | 久久久久草 | 亚洲精品国产精品久久99热 | 亚洲免费精彩视频 | 久久国产视屏 | 天天操天天射天天插 | 国产美女视频网站 | 久久影视网 | 国模视频一区二区三区 | 久久久精品成人 | 狠狠干.com | 国产精品成人av电影 | 四虎国产 | 91在线超碰 | 夜夜躁日日躁狠狠久久av | 久久久久欧美精品 | 欧美日韩精品在线视频 | 欧美日本一二三 | 亚洲人人精品 | 精品视频久久久 | 在线亚洲精品 | 成人在线视频你懂的 | 亚洲精品视频偷拍 | 在线精品在线 | 久免费| 欧美午夜精品久久久久久浪潮 | 91精品一区二区三区蜜臀 | 国产成在线观看免费视频 | 精品国产一区二区三区四区vr | 欧美激情视频在线免费观看 | 国产精品综合久久久 | 黄色录像av| 国产香蕉视频在线播放 | 人人干人人模 | av在线激情| 亚洲成av人片在线观看 | 免费成人av| 天天av在线播放 | 精品视频亚洲 | 成人久久亚洲 | 亚洲黄色一级电影 | 91在线播 | 少妇精69xxtheporn | 人人草人 | 天天操夜夜操夜夜操 | 人人爽人人干 | 色中射 | 日韩| 国产精品一区二区三区视频免费 | 亚洲成人在线免费 | 国产精品黄色 | 日韩中文字幕a | 日韩午夜在线观看 | 久久少妇免费视频 | 91精彩视频 | 亚洲精品美女在线观看 | 91精选在线观看 | 精品国产三级 | 国产高清久久久 | 国产黄色成人 | 亚洲精品视频www | 日韩欧美高清 | 二区视频在线观看 | 五月天久久精品 | 欧美视频国产视频 | 国产精品久久久久久久久久东京 | 麻豆精品传媒视频 | 人人狠狠综合久久亚洲婷 | 国产高清不卡 | 在线激情小视频 | 久久香蕉电影网 | 国产精品白虎 | 国产小视频91 | 久久久黄视频 | 国产九色在线播放九色 | 国产一区视频在线 | 日韩精品中字 | 美女久久一区 | 草久视频在线观看 | 美女视频又黄又免费 | 99在线免费观看 | av成人在线电影 | 在线三级中文 | 免费a网站 | 精品伊人久久久 | 久99久在线 | 国产日女人 | 欧美乱淫视频 | 91麻豆精品国产91久久久久久 | 一区 在线观看 | 欧美精品久久久久久久久免 | 久久视频在线免费观看 | 在线观看视频你懂的 | 亚洲影院国产 | 午夜精品久久久久久久久久久久 | 日韩二区在线观看 | 亚洲一级电影视频 | 亚洲伦理中文字幕 | 超碰成人av | 菠萝菠萝蜜在线播放 | 国产一区二区视频在线播放 | 免费在线观看av电影 | 欧美巨乳网 | 91丨porny丨九色 | 综合视频在线 | 亚洲国产欧美在线看片xxoo | 超碰人人99| 国产精品 视频 | 久久久精选 | 日韩精品视频网站 | 麻豆影视网站 | 中文字幕在线观看免费 | 国产精品色在线 | 国产精品 欧美 日韩 | 四虎小视频 | 婷婷伊人综合亚洲综合网 | 毛片一区二区 | 中文一区二区三区在线观看 | 国产视频欧美视频 | 久久久久久国产精品免费 | 日韩av免费一区 | 精品视频在线视频 | 天天天天色射综合 | 久草视频首页 | 亚洲成人国产精品 | 久久99热这里只有精品国产 | 国产精品久久久久久久av电影 | 久久久久久国产精品亚洲78 | 国产成人在线播放 | 日韩免费成人 | 欧美天堂影院 | 国产精品久久久久av免费 | 97网在线观看 | 成人免费观看在线视频 | 狠狠色丁香久久综合网 | 黄色在线看网站 | 综合色站导航 | 视频三区| 国产一区二区高清 | 成人小视频在线免费观看 | 激情动态 | 激情视频免费观看 | 亚洲精品理论 | 国产黄色高清 | 四虎影视国产精品免费久久 | 亚洲免费一级电影 | www178ccom视频在线 | 国产中文字幕亚洲 | 高清免费av在线 | 国产日韩精品一区二区三区 | 免费麻豆网站 | 成人av高清在线 | 日韩在线一二三区 | 三级在线国产 | 午夜成人免费电影 | 在线免费av观看 | 亚洲一区尤物 | 成人精品一区二区三区电影免费 | 成人免费视频网址 | 2021av在线 | 黄在线免费看 | 亚洲精品视频在线播放 | 亚洲精品黄| 香蕉网址 | 在线观看香蕉视频 | 久久99久国产精品黄毛片入口 | 久久综合久久综合久久 | 色五月激情五月 | 久久综合电影 | 91成人蝌蚪 | 久久久精品国产一区二区 | 亚洲国产三级 | 色网站在线看 | 亚洲精品视频在 | 九九热1 | 国产资源网站 | 亚洲视频免费在线观看 | av一级片在线观看 | www.99在线观看 | 国产亚洲精品久久久久久久久久久久 | 国产精品免费在线播放 | 成人看片| 黄色视屏av | 一区二区三区手机在线观看 | 天天干,夜夜爽 | 久久国产一区二区三区 | 天天操天天操天天操天天操天天操天天操 | 在线视频a | 中文免费 | 国产精品久久久久久久久久久免费看 | 亚洲视频免费在线观看 | 免费观看黄色av | 99re在线视频观看 | 国产精品二区在线 | 91久久精| 天天爱天天操 | 成人黄色大片在线免费观看 | 香蕉视频啪啪 | 久久伦理 | 91女神的呻吟细腰翘臀美女 | 午夜影院日本 | 国产精品成人一区 | 17videosex性欧美 | 美女视频黄在线 | 久久免费国产视频 | 天天综合网 天天综合色 | 天堂av在线7 | 亚洲一区二区三区在线看 | 中文字幕精品视频 | 97电院网手机版 | 91精品国产三级a在线观看 | 天天干天天做天天爱 | 九热在线 | 日韩精品影视 | 丁香av在线 | 亚洲永久精品在线观看 | 欧美黑吊大战白妞欧美 | 午夜视频在线观看欧美 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | 国产精品免费在线 | 亚洲天堂香蕉 | 国产精品第三页 | 超薄丝袜一二三区 | 在线精品国产 | 成人免费观看视频大全 | 午夜免费福利片 | 日韩成人欧美 | 成人免费观看网站 | 欧美福利网站 | 奇米影视999| 亚洲国产精品推荐 | 亚洲精品在线国产 | 五月天婷亚洲天综合网精品偷 | 亚洲精品久久久久中文字幕m男 | 狠狠狠狠狠狠干 | 久久免费精彩视频 | 成人毛片在线观看视频 | 亚洲国产精品一区二区久久hs | 激情电影影院 | 国产成人精品一区一区一区 | 黄色在线免费观看网址 | 91手机视频在线 | 欧美另类xxxx | 黄色精品一区二区 | 国产精品久久99 | 国产小视频你懂的在线 | 日韩在线第一 | 超碰在线最新 | 国产一区欧美二区 | 久久精品亚洲综合专区 | 久久久久成| 五月天中文字幕 | 久久免费视频这里只有精品 | 久久久网 | av电影在线观看完整版一区二区 | 久久久久国产一区二区 | 91麻豆精品国产91久久久无限制版 | 欧美日韩免费在线视频 | 九九免费精品视频在线观看 | 国产永久免费 | 国产精品永久在线观看 | 国产高清成人在线 | 精品视频一区在线观看 | 日b视频国产 | 在线观看一二三区 | 国产一级淫片免费看 | 伊人狠狠操 | 成人免费观看大片 | 91精品国产麻豆国产自产影视 | 久久久久久久久爱 | 五月激情丁香婷婷 | 欧美日本一区 | 2019av在线视频| 国产高清免费视频 | 波多野结衣久久资源 | 国产精品系列在线播放 | 五月婷婷爱 | 色偷偷av男人天堂 | 日韩欧美v | 亚洲综合在线发布 | 亚洲视频www | 欧美不卡视频在线 | 国产96av | 国产99久久久精品视频 | 黄色小说免费观看 | av中文字幕网 | 91免费观看网站 | 毛片网在线观看 | 国产伦理久久 | 国产最新视频在线 | 亚洲精品在线观看视频 | av线上免费看| 天天射综合 | www黄免费 | 97国产大学生情侣酒店的特点 | 天天射天天色天天干 | www.黄色片.com | 久久五月网 | 亚洲综合在线五月 | 免费看av片网站 | 欧美超碰在线 | 亚洲精品在线观看中文字幕 | 99久久久国产精品 | 999精品在线 | 精品国产片 | 免费看色网站 | a在线一区 | 国产情侣一区 | 91爱爱电影 | 国内99视频 | 色成人亚洲网 | 91精品国自产在线观看欧美 | 免费高清在线观看电视网站 | 日韩一区二区三区免费电影 | 国产手机在线播放 | 精品国产一二三四区 | 色5月婷婷| 成人亚洲网 | 一级久久久 | 99在线精品视频 | wwwwwww色| 999久久a精品合区久久久 | 婷婷丁香色综合狠狠色 | 久久久九九 | 成人午夜精品 | 国产美女视频 | 中文字幕国内精品 | 国产日产精品一区二区三区四区的观看方式 | 麻豆国产精品永久免费视频 | av永久网址| 成人观看视频 | 亚洲另类视频 | 成人久久18免费网站 | 久久久久久久久久久福利 | av福利在线| 探花视频免费在线观看 | 国产97色在线 | 91av中文字幕 | 在线免费视频 你懂得 | 一区二区激情 | 99久久精品国产免费看不卡 | 在线中文字幕av观看 | 成人久久18免费网站 | 成人一级在线观看 | 国产精品久久久久av | 久久久久免费 | 97看片 | 成人一级片免费看 | 国产精品9999久久久久仙踪林 | 午夜电影 电影 | 日本久久免费视频 | 欧美日韩性视频 | 九九免费观看视频 | 天天av综合网 | 久草在线免费资源站 | 亚洲高清色综合 | 丁香资源影视免费观看 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 在线观看视频99 | 丁香综合五月 | 麻豆视频网址 | 欧美日韩一区二区三区不卡 | 久久精品中文字幕免费mv | 精品黄色在线观看 | 91电影福利 | 成人a级网站 | 亚洲国产精品成人精品 | 日日夜夜爱 | 色综合久久中文综合久久牛 | 欧美日韩精品免费观看视频 | 国产精品久久久久久影院 | 九九导航 | 人九九精品 | 国产xxxx性hd极品| 香蕉视频免费看 | 久久精品99久久久久久 | 成年人网站免费观看 | 国产黄色av影视 | 欧美巨大| 亚洲国产中文在线 | 精品亚洲免费 | 狠狠的干狠狠的操 | 久久有精品| www.久久色.com| 久久99久国产精品黄毛片入口 | 在线观看中文字幕2021 | 亚洲精品麻豆视频 | 欧美日韩精品免费观看 | 中文字幕中文字幕在线中文字幕三区 | 久久欧洲视频 | 亚洲一区视频免费观看 | 五月天激情视频 | 亚洲综合成人婷婷小说 | 成年人天堂com | 国产美女免费看 | 亚洲全部视频 | 久草在线视频在线 | 成人看片 | 91高清免费观看 | 黄色在线观看免费 | 日韩中文字幕免费在线观看 | 国产尤物在线观看 | 999国产 | 国产成人精品亚洲日本在线观看 | 美女视频黄是免费的 | 欧美日韩p片 | 激情中文在线 | 欧美极品一区二区三区 | 精品国产一区二区三区av性色 | 免费在线观看国产精品 | 国产69熟 | 国产91勾搭技师精品 | 国产精品1区2区3区在线观看 | 91色一区二区三区 | 在线国产99 | 日韩超碰| 五月婷香蕉久色在线看 | av不卡免费看 | 中文字幕日韩一区二区三区不卡 | 久久露脸国产精品 | 久久久久在线视频 |