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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Nginx >内容正文

Nginx

Nginx开发一个简单的HTTP过滤模块

發(fā)布時(shí)間:2024/1/23 Nginx 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nginx开发一个简单的HTTP过滤模块 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文將學(xué)些開發(fā)一個(gè)簡(jiǎn)單的HTTP過(guò)濾模塊,它能夠?qū)ontent-Type為text/plain的包體前加上前綴字符串prefix.

<一> 過(guò)濾模塊的調(diào)用順序

過(guò)濾模塊可以疊加,也就是說(shuō)一個(gè)請(qǐng)求會(huì)被所有的HTTP過(guò)濾模塊依次處理。

過(guò)濾模塊的調(diào)用時(shí)有順序的,它的順序在編譯的時(shí)候就決定了。控制編譯的腳本位于auto/modules中,當(dāng)你編譯完Nginx以后,可以再objs目錄下面看到一個(gè)ngx_modules.c的文件,打開這個(gè)文件,有類似的代碼:

ngx_module_t *ngx_modules[] = {...&ngx_http_write_filter_module,&ngx_http_header_filter_module,&ngx_http_chunked_filter_module,&ngx_http_range_header_filter_module,&ngx_http_gzip_filter_module,&ngx_http_postpone_filter_module,&ngx_http_ssi_filter_module,&ngx_http_charset_filter_module,&ngx_http_userid_filter_module,&ngx_http_headers_filter_module,&ngx_http_copy_filter_module,&ngx_http_range_body_filter_module,&ngx_http_not_modified_filter_module,NULL };

從write_filter到not_modified_filter,模塊的執(zhí)行順序是反向的。也就是說(shuō)最早執(zhí)行的是not_modified_filter,然后各個(gè)模塊以此執(zhí)行。所有第三方的模塊只能加入到copy_filter和headers_filter模塊之間執(zhí)行。

在編譯Nginx源碼時(shí),已經(jīng)定義了一個(gè)由所有HTTP過(guò)濾模塊組成的單鏈表,這個(gè)單鏈表是這樣的:

鏈表的每個(gè)元素都是一個(gè)C源代碼文件,這個(gè)C源代碼文件中有兩個(gè)指針,分別指向下一個(gè)過(guò)濾模塊(文件)的過(guò)濾頭部和包體的方法(可理解為鏈表中的next指針)

過(guò)濾模塊單鏈表示意圖:


這兩個(gè)指針的聲明如下:

/*過(guò)濾模塊處理HTTP頭部的函數(shù)指針類型定義,它攜帶一個(gè)參數(shù):請(qǐng)求*/ typedef ngx_int_t (*ngx_http_output_header_filter_pt)(ngx_http_request_t *r); /*過(guò)濾模塊處理HTTP包體的函數(shù)指針類型定義,它攜帶兩個(gè)參數(shù):請(qǐng)求、要發(fā)送的包體*/ typedef ngx_int_t (*ngx_http_output_body_filter_pt) (ngx_http_request_t *r, ngx_chain_t *chain);

在我們定義的第三方模塊中則有如下聲明:

static ngx_http_output_header_filter_pt ngx_http_next_header_filter; static ngx_http_output_body_filter_pt ngx_http_next_body_filter;

那么怎么將這個(gè)源文件(節(jié)點(diǎn)),插入到HTTP過(guò)濾模塊組成的單鏈表中去呢?Nginx采用頭插法的辦法,所有的新節(jié)點(diǎn)都插入在鏈表的開頭:

//插入到頭部處理方法鏈表的首部 ngx_http_next_header_filter=ngx_http_top_header_filter; ngx_http_top_header_filter=ngx_http_myfilter_header_filter; //插入到包體處理方法鏈表的首部 ngx_http_next_body_filter=ngx_http_top_body_filter; ngx_http_top_body_filter=ngx_http_myfilter_body_filter;

其中,兩個(gè)top指針聲明如下:

extern ngx_http_output_header_filter_pt ngx_http_next_header_filter; extern ngx_http_output_body_filter_pt ngx_http_next_body_filter;

由于是頭插法,這樣就解釋了,越早插入鏈表的過(guò)濾模塊,就會(huì)越晚執(zhí)行。

<二> 開發(fā)一個(gè)簡(jiǎn)單的過(guò)濾模塊

要開發(fā)一個(gè)簡(jiǎn)單的過(guò)濾模塊,它的功能是對(duì)Content-Type為text/plain的響應(yīng)添加一個(gè)前綴,類似于開發(fā)一個(gè)HTTP模塊,它應(yīng)該遵循如下步驟:

1.確定源代碼文件名稱,源代碼所在目錄創(chuàng)建config腳本文件,config文件的編寫方式跟HTTP模塊開發(fā)基本一致,不同的是需要將HTTP_MODULES改成HTTP_FILTER_MODULES. 2.定義過(guò)濾模塊。實(shí)例化ngx_module_t類型模塊結(jié)構(gòu),因?yàn)镠TTP過(guò)濾模塊也是HTTP模塊,所以其中的type成員也是NGX_HTTP_MODULE. 3.處理感興趣的配置項(xiàng),通過(guò)設(shè)置ngx_module_t中的ngx_command_t數(shù)組來(lái)處理感興趣的配置項(xiàng)。 4.實(shí)現(xiàn)初始化方法。初始化方法就是把本模塊中處理HTTP頭部的ngx_http_output_header_filter_pt方法和處理HTTP包體的ngx_http_output_body_filter_pt方法插入到過(guò)濾模塊鏈表的首部。 5.實(shí)現(xiàn)4.中提到兩個(gè)處理頭部和包體的方法。

接下來(lái)按照上述步驟依次來(lái)實(shí)現(xiàn):

2.1 確定源代碼文件目錄,編寫config文件

config文件如下:

ngx_addon_name=ngx_http_myfilter_module HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES ngx_http_myfilter_module" NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_myfilter_module.c"

2.2 定義過(guò)濾模塊,實(shí)例化ngx_module_t

/*定義過(guò)濾模塊,ngx_module_t結(jié)構(gòu)體實(shí)例化*/ ngx_module_t ngx_http_myfilter_module = {NGX_MODULE_V1, /*Macro*/&ngx_http_myfilter_module_ctx, /*module context*/ngx_http_myfilter_commands, /*module directives*/NGX_HTTP_MODULE, /*module type*/NULL, /*init master*/NULL, /*init module*/NULL, /*init process*/NULL, /*init thread*/NULL, /*exit thread*/NULL, /*exit process*/NULL, /*exit master*/NGX_MODULE_V1_PADDING /*Macro*/ };

2.3 處理感興趣的配置項(xiàng)

/*處理感興趣的配置項(xiàng)*/ static ngx_command_t ngx_http_myfilter_commands[] = {{ngx_string("add_prefix"), //配置項(xiàng)名稱NGX_HTTP_MAIN_CONF| NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF | NGX_HTTP_LMT_CONF | NGX_CONF_FLAG, //配置項(xiàng)只能攜帶一個(gè)參數(shù)并且是on或者offngx_conf_set_flag_slot, //使用nginx自帶方法,參數(shù)on/offNGX_HTTP_LOC_CONF_OFFSET, //使用create_loc_conf方法產(chǎn)生的結(jié)構(gòu)體來(lái)存儲(chǔ)//解析出來(lái)的配置項(xiàng)參數(shù)offsetof(ngx_http_myfilter_conf_t, enable),//on/offNULL},ngx_null_command };? 其中定義結(jié)構(gòu)體ngx_http_myfilter_conf_t來(lái)保存配置項(xiàng)參數(shù)
typedef struct {ngx_flag_t enable; } ngx_http_myfilter_conf_t;

2.4 實(shí)現(xiàn)初始化方法

頭插入法將本過(guò)濾模塊插入到單鏈表的首部:

/*初始化方法*/ static ngx_int_t ngx_http_myfilter_init(ngx_conf_t *cf) {//插入到頭部處理方法鏈表的首部ngx_http_next_header_filter=ngx_http_top_header_filter;ngx_http_top_header_filter = ngx_http_myfilter_header_filter;//插入到包體處理方法鏈表的首部ngx_http_next_body_filter=ngx_http_top_body_filter;ngx_http_top_body_filter=ngx_http_myfilter_body_filter; }

2.5 實(shí)現(xiàn)頭部和包體過(guò)濾方法

? 2.5.1 函數(shù)聲明

/*頭部處理方法*/ static ngx_int_t ngx_http_myfilter_header_filter(ngx_http_request_t *r);/*包體處理方法*/ static ngx_int_t ngx_http_myfilter_body_filter(ngx_http_request_t *r, ngx_chain_t *in);

? 2.5.2 函數(shù)實(shí)現(xiàn)

? (1) 頭處理方法:最終處理效果頭部信息Content-Length的值加上prefix的長(zhǎng)度。

/*頭部處理方法*/ static ngx_int_t ngx_http_myfilter_header_filter(ngx_http_request_t *r) {ngx_http_myfilter_ctx_t *ctx;ngx_http_myfilter_conf_t *conf;//如果不是返回成功,這時(shí)是不需要理會(huì)是否加前綴的,直接交由下一個(gè)過(guò)濾模塊,處理響應(yīng)碼非200的情形if (r->headers_out.status != NGX_HTTP_OK) {return ngx_http_next_header_filter(r);}/*獲取HTTP上下文*/ctx = ngx_http_get_module_ctx(r, ngx_http_myfilter_module);if (ctx) {//該請(qǐng)求的上下文已經(jīng)存在,這說(shuō)明ngx_http_myfilter_header_filter已經(jīng)被調(diào)用過(guò)1次,直接交由下一個(gè)過(guò)濾模塊處理return ngx_http_next_header_filter(r);}//獲取存儲(chǔ)配置項(xiàng)參數(shù)的結(jié)構(gòu)體conf = ngx_http_get_module_loc_conf(r, ngx_http_myfilter_module);//如果enable成員為0,也就是配置文件中沒(méi)有配置add_prefix配置項(xiàng),或者add_prefix配置下情的參數(shù)值是off,這時(shí)直接交由下一個(gè)過(guò)濾模塊處理if(conf->enable == 0) {return ngx_http_next_header_filter(r);}//conf->enable==1//構(gòu)造http上下文結(jié)構(gòu)體ngx_http_myfilter_ctx_tctx = ngx_pcalloc(r->pool, sizeof(ngx_http_myfilter_ctx_t));if (NULL == ctx) {return NGX_ERROR;}ctx->add_prefix = 0;ngx_http_set_ctx(r, ctx, ngx_http_myfilter_module);//只處理Content-Type是"text/plain"類型的http響應(yīng)if (r->headers_out.content_type.len >= sizeof("text/plain") - 1&& ngx_strncasecmp(r->headers_out.content_type.data, (u_char *) "text/plain", sizeof("text/plain") - 1) == 0) {ctx->add_prefix = 1;if (r->headers_out.content_length_n > 0) {r->headers_out.content_length_n += filter_prefix.len;}}//交由下一個(gè)過(guò)濾模塊繼續(xù)處理return ngx_http_next_header_filter(r); }? (2) 響應(yīng)包體處理方法:最終處理效果在包體前面添加前綴。
/*包體處理方法*/ static ngx_int_t ngx_http_myfilter_body_filter(ngx_http_request_t *r, ngx_chain_t *in) {ngx_http_myfilter_ctx_t *ctx;ctx = ngx_http_get_module_ctx(r, ngx_http_myfilter_module);//如果獲取不到上下文,或者上下文結(jié)構(gòu)體中的add_prefix為0或者2時(shí),都不會(huì)添加前綴,這時(shí)直接交給下一個(gè)http過(guò)濾模塊處理if (ctx == NULL || ctx->add_prefix != 1) {return ngx_http_next_body_filter(r, in);}//將add_prefix設(shè)置為2,這樣即使ngx_http_myfilter_body_filter再次回調(diào)時(shí),也不會(huì)重復(fù)添加前綴ctx->add_prefix = 2;//從請(qǐng)求的內(nèi)存池中分配內(nèi)存,用于存儲(chǔ)字符串前綴ngx_buf_t *b = ngx_create_temp_buf(r->pool, filter_prefix.len);//將ngx_buf_t 中的指針正確地指向filter_prefix字符串b->start = b->pos = filter_prefix.data;b->last = b->pos + filter_prefix.len;//從請(qǐng)求的內(nèi)存池中生成Ngx_chain_t鏈表,將剛分配的ngx_buf_t設(shè)置到其buf成員中,并將它添加到原先待發(fā)送的http包體前面ngx_chain_t *cl = ngx_alloc_chain_link(r->pool);/*note: in表示原來(lái)待發(fā)送的包體*/cl->buf = b;cl->next = in;//調(diào)用下一個(gè)模塊的htpp包體處理方法,注意這時(shí)傳入的是新生成的cl鏈表return ngx_http_next_body_filter(r, cl); }

(三) 完整代碼與測(cè)試
? 至此,已經(jīng)完成大部分的工作,我們還需要為這個(gè)過(guò)濾模塊編寫模塊上下文,編寫創(chuàng)建和合并配置項(xiàng)參數(shù)結(jié)構(gòu)體的函數(shù)等。

? 3.1 完整代碼

/*ngx_http_myfilter_module.c*/#include <ngx_config.h> #include <ngx_core.h> #include <ngx_http.h>/*用static修飾只在本文件生效,因此允許所有的過(guò)濾模塊都有自己的這兩個(gè)指針*/ static ngx_http_output_header_filter_pt ngx_http_next_header_filter; static ngx_http_output_body_filter_pt ngx_http_next_body_filter;/*初始化方法,將過(guò)濾模塊插入到鏈表頭部*/ static ngx_int_t ngx_http_myfilter_init(ngx_conf_t *cf);/*頭部處理方法*/ static ngx_int_t ngx_http_myfilter_header_filter(ngx_http_request_t *r);/*包體處理方法*/ static ngx_int_t ngx_http_myfilter_body_filter(ngx_http_request_t *r, ngx_chain_t *in);typedef struct {ngx_flag_t enable; }ngx_http_myfilter_conf_t;/*請(qǐng)求上下文*/ typedef struct {ngx_int_t add_prefix; }ngx_http_myfilter_ctx_t;/*在包體中添加的前綴*/ static ngx_str_t filter_prefix=ngx_string("[my filter prefix]");/*處理感興趣的配置項(xiàng)*/ static ngx_command_t ngx_http_myfilter_commands[]= {{ngx_string("add_prefix"), //配置項(xiàng)名稱NGX_HTTP_MAIN_CONF | NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF | NGX_HTTP_LMT_CONF | NGX_CONF_FLAG,//配置項(xiàng)只能攜帶一個(gè)參數(shù)并且是on或者offngx_conf_set_flag_slot,//使用nginx自帶方法,參數(shù)on/offNGX_HTTP_LOC_CONF_OFFSET,//使用create_loc_conf方法產(chǎn)生的結(jié)構(gòu)體來(lái)存儲(chǔ)//解析出來(lái)的配置項(xiàng)參數(shù)offsetof(ngx_http_myfilter_conf_t, enable),//on/offNULL},ngx_null_command // };static void* ngx_http_myfilter_create_conf(ngx_conf_t *cf); static char* ngx_http_myfilter_merge_conf(ngx_conf_t *cf,void*parent,void*child);/*模塊上下文*/ static ngx_http_module_t ngx_http_myfilter_module_ctx= {NULL, /* preconfiguration方法 */ngx_http_myfilter_init, /* postconfiguration方法 */NULL, /*create_main_conf 方法 */NULL, /* init_main_conf方法 */NULL, /* create_srv_conf方法 */NULL, /* merge_srv_conf方法 */ngx_http_myfilter_create_conf, /* create_loc_conf方法 */ngx_http_myfilter_merge_conf /*merge_loc_conf方法*/ };/*定義過(guò)濾模塊,ngx_module_t結(jié)構(gòu)體實(shí)例化*/ ngx_module_t ngx_http_myfilter_module = {NGX_MODULE_V1, /*Macro*/&ngx_http_myfilter_module_ctx, /*module context*/ngx_http_myfilter_commands, /*module directives*/NGX_HTTP_MODULE, /* module type */NULL, /* init master */NULL, /* init module */NULL, /* init process */NULL, /* init thread */NULL, /* exit thread */NULL, /* exit process */NULL, /* exit master */NGX_MODULE_V1_PADDING /*Macro*/ };static void* ngx_http_myfilter_create_conf(ngx_conf_t *cf) {ngx_http_myfilter_conf_t *mycf;//創(chuàng)建存儲(chǔ)配置項(xiàng)的結(jié)構(gòu)體mycf = (ngx_http_myfilter_conf_t *)ngx_pcalloc(cf->pool, sizeof(ngx_http_myfilter_conf_t));if (mycf == NULL){return NULL;}//ngx_flat_t類型的變量,如果使用預(yù)設(shè)函數(shù)ngx_conf_set_flag_slot//解析配置項(xiàng)參數(shù),必須初始化為NGX_CONF_UNSETmycf->enable = NGX_CONF_UNSET;return mycf; }static char* ngx_http_myfilter_merge_conf(ngx_conf_t *cf,void*parent,void*child) {ngx_http_myfilter_conf_t *prev = (ngx_http_myfilter_conf_t *)parent;ngx_http_myfilter_conf_t *conf = (ngx_http_myfilter_conf_t *)child;//合并ngx_flat_t類型的配置項(xiàng)enablengx_conf_merge_value(conf->enable, prev->enable, 0);return NGX_CONF_OK;}/*初始化方法*/ static ngx_int_t ngx_http_myfilter_init(ngx_conf_t*cf) {//插入到頭部處理方法鏈表的首部ngx_http_next_header_filter=ngx_http_top_header_filter;ngx_http_top_header_filter=ngx_http_myfilter_header_filter;//插入到包體處理方法鏈表的首部ngx_http_next_body_filter = ngx_http_top_body_filter;ngx_http_top_body_filter = ngx_http_myfilter_body_filter;return NGX_OK; }/*頭部處理方法*/ static ngx_int_t ngx_http_myfilter_header_filter(ngx_http_request_t *r) {ngx_http_myfilter_ctx_t *ctx;ngx_http_myfilter_conf_t *conf;//如果不是返回成功,這時(shí)是不需要理會(huì)是否加前綴的,//直接交由下一個(gè)過(guò)濾模塊//處理響應(yīng)碼非200的情形if (r->headers_out.status != NGX_HTTP_OK){return ngx_http_next_header_filter(r);}/*獲取http上下文*/ctx = ngx_http_get_module_ctx(r, ngx_http_myfilter_module);if(ctx){//該請(qǐng)求的上下文已經(jīng)存在,這說(shuō)明// ngx_http_myfilter_header_filter已經(jīng)被調(diào)用過(guò)1次,//直接交由下一個(gè)過(guò)濾模塊處理return ngx_http_next_header_filter(r);}//獲取存儲(chǔ)配置項(xiàng)參數(shù)的結(jié)構(gòu)體conf = ngx_http_get_module_loc_conf(r, ngx_http_myfilter_module);//如果enable成員為0,也就是配置文件中沒(méi)有配置add_prefix配置項(xiàng),//或者add_prefix配置項(xiàng)的參數(shù)值是off,這時(shí)直接交由下一個(gè)過(guò)濾模塊處理if (conf->enable == 0){return ngx_http_next_header_filter(r);}//conf->enable==1//構(gòu)造http上下文結(jié)構(gòu)體ngx_http_myfilter_ctx_tctx = ngx_pcalloc(r->pool, sizeof(ngx_http_myfilter_ctx_t));if(NULL==ctx){return NGX_ERROR;}ctx->add_prefix=0;ngx_http_set_ctx(r,ctx,ngx_http_myfilter_module);//只處理Content-Type是"text/plain"類型的http響應(yīng)if (r->headers_out.content_type.len >= sizeof("text/plain") - 1&& ngx_strncasecmp(r->headers_out.content_type.data, (u_char *) "text/plain", sizeof("text/plain") - 1) == 0){ctx->add_prefix=1;if(r->headers_out.content_length_n > 0){r->headers_out.content_length_n+=filter_prefix.len;}}//交由下一個(gè)過(guò)濾模塊繼續(xù)處理return ngx_http_next_header_filter(r); }/*包體處理方法*/ static ngx_int_t ngx_http_myfilter_body_filter(ngx_http_request_t *r, ngx_chain_t *in) {ngx_http_myfilter_ctx_t *ctx;ctx = ngx_http_get_module_ctx(r, ngx_http_myfilter_module);//如果獲取不到上下文,或者上下文結(jié)構(gòu)體中的add_prefix為0或者2時(shí),//都不會(huì)添加前綴,這時(shí)直接交給下一個(gè)http過(guò)濾模塊處理if (ctx == NULL || ctx->add_prefix != 1){return ngx_http_next_body_filter(r, in);}//將add_prefix設(shè)置為2,這樣即使ngx_http_myfilter_body_filter//再次回調(diào)時(shí),也不會(huì)重復(fù)添加前綴ctx->add_prefix = 2;//從請(qǐng)求的內(nèi)存池中分配內(nèi)存,用于存儲(chǔ)字符串前綴ngx_buf_t* b = ngx_create_temp_buf(r->pool, filter_prefix.len);//將ngx_buf_t中的指針正確地指向filter_prefix字符串b->start = b->pos = filter_prefix.data;b->last = b->pos + filter_prefix.len;//從請(qǐng)求的內(nèi)存池中生成ngx_chain_t鏈表,將剛分配的ngx_buf_t設(shè)置到//其buf成員中,并將它添加到原先待發(fā)送的http包體前面ngx_chain_t *cl = ngx_alloc_chain_link(r->pool);/*note: in表示原來(lái)待發(fā)送的包體*/cl->buf = b;cl->next = in;//調(diào)用下一個(gè)模塊的http包體處理方法,注意這時(shí)傳入的是新生成的cl鏈表return ngx_http_next_body_filter(r, cl); }

? 3.2 測(cè)試

? 我們的過(guò)濾模塊只對(duì)Content-Type為text/plain的響應(yīng)有效,查看Nginx的默認(rèn)配置中的mime.types文件,發(fā)現(xiàn)

types{ #...text/plain txt; #... }

? 也即當(dāng)請(qǐng)求資源位txt時(shí)才會(huì)調(diào)用我們過(guò)濾模塊,如果想要強(qiáng)制將響應(yīng)的Content-Type設(shè)置為text/plain呢?

? 只需要修改nginx.conf文件如下即可:

#user root; worker_processes 1;error_log logs/error.log debug;events {worker_connections 1024; }http { # 注釋掉http塊下的配置 # include mime.types; # default_type application/octet-stream;keepalive_timeout 65;server {listen 1024;location / {#在location塊下將默認(rèn)類型設(shè)置為text/plaindefault_type text/plain;root html;add_prefix on;index index.htm index.html;}} }

? 將自定義的顧慮模塊編譯進(jìn)Nginx:

./configure --add-module=/home/zhangxiao/nginx/nginx-1.0.15/src/myHttpFilterModule/ make;sudo make install

? 重啟nginx,用curl工具進(jìn)行測(cè)試:

curl -v localhost:1024

? 可以看到返回的包體添加了前綴:

??

參考鏈接:

https://blog.csdn.net/zhangxiao93/article/details/53691642#%E4%B8%80%E8%BF%87%E6%BB%A4%E6%A8%A1%E5%9D%97%E7%9A%84%E8%B0%83%E7%94%A8%E9%A1%BA%E5%BA%8F

總結(jié)

以上是生活随笔為你收集整理的Nginx开发一个简单的HTTP过滤模块的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

天天av在线播放 | 丁香激情婷婷 | 国产视频2 | 福利视频网址 | 精品国产乱码久久久久久1区二区 | 久久久久久久久免费 | 国产91免费观看 | 亚洲国产经典视频 | 中文字幕韩在线第一页 | 日韩黄色av网站 | 日日操日日插 | 国产玖玖在线 | av在线直接看| 在线观看国产区 | 国产亚洲成av人片在线观看桃 | av在线播放快速免费阴 | 97精品国产91久久久久久久 | 精品一区二区免费视频 | 久久精品国产精品亚洲 | 黄色毛片在线 | 中文字幕人成乱码在线观看 | 免费看黄的 | 在线视频欧美日韩 | 欧美精品久久久久性色 | 国内精品久久久久 | 国产精品久久二区 | 日韩久久精品一区二区三区下载 | 日韩免费一级a毛片在线播放一级 | 看v片| 亚洲成人欧美 | 久久综合欧美精品亚洲一区 | 成年人免费在线观看 | 在线视频 91 | 久久久久久蜜桃一区二区 | 婷婷网址| 国产麻豆电影在线观看 | 久久久久国产a免费观看rela | 美女视频黄免费的 | 91av影视 | 免费观看的av网站 | 国内精品久久久久久久久久清纯 | 激情综合啪啪 | 天天插天天干天天操 | 国产精品久久久久久超碰 | 久久福利在线 | 六月丁香婷婷网 | 日韩欧美综合精品 | 69国产在线观看 | 天天操天天摸天天爽 | www免费看片com | 九九热精品视频在线播放 | 国产精品正在播放 | 欧美成人h版 | 日韩精品播放 | 亚洲电影一区二区 | 国内久久久久久 | 久久女同性恋中文字幕 | 亚洲欧美综合精品久久成人 | 久久精品国产一区 | 欧美日韩精品国产 | 日韩在线观看高清 | 婷婷视频在线播放 | 毛片a级片| 日韩三级中文字幕 | 欧美日韩免费观看一区二区三区 | 天天曰 | 免费成人结看片 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 日韩精品久久久 | 精品国内自产拍在线观看视频 | 狠狠狠狠狠狠狠干 | 在线观看一区 | 九七视频在线观看 | 一区在线观看 | 99久久一区 | 国产精品久久久久久久久久久不卡 | 色综合久久久久久久 | 在线日韩av | 免费在线观看的av网站 | 免费h视频| av在线免费观看网站 | av在线电影免费观看 | 国内精品久久久久久久影视麻豆 | 亚洲精品视频偷拍 | 欧美日韩中文字幕综合视频 | 免费在线国产视频 | 欧洲精品码一区二区三区免费看 | 国产打女人屁股调教97 | 9在线观看免费 | 91av资源网 | 91精品视频播放 | www狠狠操 | 91探花国产综合在线精品 | 中文字幕丝袜制服 | 国产又粗又硬又长又爽的视频 | 麻豆免费观看视频 | 日韩两性视频 | 国产精品国产三级国产 | 久久天堂网站 | h视频在线看 | 久久夜视频 | 日韩手机在线 | 五月婷婷免费 | 一级免费看 | 在线免费av观看 | 亚洲精品www久久久久久 | 日韩免费中文字幕 | 99热最新精品 | www.黄色 | 插久久| 天天操天天操一操 | 丁香六月婷婷开心婷婷网 | 911精品美国片911久久久 | 国产69精品久久app免费版 | 999国内精品永久免费视频 | 色瓜 | 视频在线99re | 久久亚洲欧美 | 国产精品一区专区欧美日韩 | 丝袜美女视频网站 | 日韩欧美xxx | 婷婷在线观看视频 | 又色又爽又黄高潮的免费视频 | 91大神精品视频 | av中文字幕在线观看网站 | 欧美坐爱视频 | 成人a免费看| 国产三级av在线 | 欧美日韩另类视频 | 天天视频色版 | 天天干天天看 | 国产小视频在线 | 国产999精品| 五月天综合网 | 特级西西人体444是什么意思 | 久久影视一区 | 国产成人精品综合久久久久99 | 中文字幕亚洲国产 | 免费在线观看日韩欧美 | 国产色视频一区 | 日韩免费视频在线观看 | 国产亚洲精品av | 天天射天天射天天射 | 国产精品九色 | 国产亚洲精品精品精品 | 91av视频在线观看免费 | 五月婷久| 色噜噜日韩精品欧美一区二区 | 日韩黄色在线电影 | 久久不卡电影 | 97人人添人澡人人爽超碰动图 | sesese图片| 成人av免费网站 | 国产一区二区在线精品 | 欧美黄在线 | 午夜123| 2017狠狠干 | 国产午夜精品一区二区三区 | 国产黄网站在线观看 | 国产精品igao视频网网址 | 日韩久久一区二区 | 久久国产高清 | 欧美日韩在线视频观看 | 免费高清av在线看 | 91麻豆精品久久久久久 | 久艹在线观看视频 | 97在线观看免费观看高清 | 国产视频黄 | 欧美无极色 | 黄色小说视频网站 | 国产精品入口久久 | 蜜桃av观看 | 国产成人av | 亚洲精品国久久99热 | 久久毛片网站 | 波多野结衣小视频 | 亚洲精品视频一 | 亚洲午夜精品一区二区三区电影院 | 国产欧美久久久精品影院 | 五月天激情在线 | av在线播放中文字幕 | 91成版人在线观看入口 | 五月婷综合 | 日韩av成人| 成人h视频在线播放 | 在线观看av网站 | 99精品视频精品精品视频 | 96视频免费在线观看 | 久久欧洲视频 | 亚洲一区二区三区在线看 | 国产精品一区免费观看 | 欧美极品一区二区三区 | 亚洲 综合 精品 | 在线黄网站| 亚洲激情一区二区三区 | 国产高清久久久久 | 日本大尺码专区mv | 久久久免费精品 | 91精品婷婷国产综合久久蝌蚪 | 日韩一级片观看 | 中文资源在线播放 | 国产精品乱码久久久 | 国产xxxx | 99精品免费久久久久久久久日本 | 亚洲精品国产日韩 | 一区二区三区在线免费观看视频 | 国产精品理论片 | 草久视频在线 | 亚洲一区久久久 | 免费福利在线视频 | www.久久com| 天天操天天射天天爽 | 最新国产中文字幕 | 久久精品这里都是精品 | 欧美视频18 | 国产精品久久久久久久免费大片 | 五月婷婷一区 | 久久久国产精品久久久 | 亚州免费视频 | 免费视频一区二区 | 午夜私人影院 | 美女黄色网在线播放 | 日韩动漫免费观看高清完整版在线观看 | 免费视频一级片 | 国产精品福利久久久 | 婷婷六月丁香激情 | 亚洲精品国产精品国自 | 亚洲欧洲精品视频 | 色综合久久综合中文综合网 | 天天干天天射天天插 | 成年人在线免费看视频 | 久久免费福利视频 | 久久精品视频5 | 亚洲黄色a| 五月宗合网 | 久草在线电影网 | 久产久精国产品 | 九九欧美| 婷婷丁香激情五月 | 精品一区精品二区 | 狠狠88综合久久久久综合网 | 中文字幕日韩电影 | 国产高清区 | 国产亚洲片 | 成人在线免费看视频 | 91九色性视频 | 91看片淫黄大片一级在线观看 | 最新在线你懂的 | 92中文资源在线 | 美女免费av | 狠狠色综合网站久久久久久久 | 久久艹国产视频 | 久久欧美视频 | 日韩欧美xxx | 手机av电影在线 | 国产在线最新 | 激情狠狠干 | 在线观看完整版免费 | 久久国产精品一区二区三区四区 | 成人在线免费观看网站 | 国产日韩欧美在线观看 | 最新成人av | 日韩在线免费视频观看 | 精品美女在线视频 | 在线成人观看 | 欧美aaa一级 | 国产精品激情偷乱一区二区∴ | 波多野结衣综合网 | 96国产精品视频 | www.一区二区三区 | 天天爱天天插 | 久久tv | 国产中文字幕第一页 | 99久久久久久久久 | 成人欧美一区二区三区黑人麻豆 | 黄av在线 | 天天干夜夜想 | 免费毛片一区二区三区久久久 | 麻豆影视在线免费观看 | 一区二三国产 | 999成人国产 | 黄色在线免费观看网址 | 成人黄色av免费在线观看 | 99在线免费视频观看 | 欧美日韩亚洲在线观看 | 日韩免费福利 | 久久神马影院 | 亚洲精品视 | 中文字幕在线免费观看视频 | 日本高清dvd | 欧美日本国产在线观看 | 久久久久亚洲最大xxxx | 久热这里有精品 | 成人黄色大片网站 | 国产资源精品在线观看 | 玖玖精品在线 | 午夜精品一区二区三区在线 | 伊人五月天 | 欧美日韩xx| 激情片av | 黄色成人91 | 日韩欧美高清 | 国产精品久久久久三级 | 九九综合九九综合 | 黄色av一区二区 | 国产美女精品 | 在线观看韩国av | 麻豆影视网 | 奇米影视在线99精品 | 日本公乱妇视频 | 国产精品99久久久久久有的能看 | 国产精品久久久区三区天天噜 | 在线视频观看亚洲 | 色婷婷狠狠18 | 久色网 | 黄色软件在线看 | 国产精品久久精品国产 | 日本精品久久久久中文字幕5 | 中文字幕在线字幕中文 | 国产亚洲精品久久久久久无几年桃 | 亚洲日韩欧美一区二区在线 | 国产尤物在线视频 | 午夜精品久久久久久久久久 | 久草在线视频免费资源观看 | 天天在线操| 五月综合激情 | 婷婷丁香在线观看 | 波多野结衣理论片 | 欧美精品在线一区 | 国内揄拍国产精品 | 久久久久久草 | 国产亚洲精品久久久久动 | 国产精品久久久久一区二区国产 | 国产精品九九九九九九 | 天天插天天 | 伊人天天操| 91丨九色丨国产丨porny精品 | 久草视频国产 | 亚洲国产剧情av | 香蕉精品视频在线观看 | 99久久婷婷国产综合精品 | 51久久成人国产精品麻豆 | 久久成人精品视频 | 欧美日韩破处 | 日韩经典一区二区三区 | 国产啊v在线观看 | 欧美成年黄网站色视频 | 日韩欧美在线视频一区二区三区 | 在线观看免费国产小视频 | 亚洲天天在线日亚洲洲精 | 精品专区 | 国内精品美女在线观看 | 青青河边草免费 | av五月婷婷 | 99999精品视频| avove黑丝| 国产精品美女久久久久久 | 96视频在线 | 日韩www在线| 国产精品完整版 | 午夜免费在线观看 | 亚洲精品动漫久久久久 | 欧美日韩裸体免费视频 | 日韩理论片 | 狠狠操精品 | 男女靠逼app| 国产成人99av超碰超爽 | 久久伊人操 | 久草a视频| 九九国产精品视频 | 丁香五婷 | 天天干天天干天天射 | 午夜精品久久一牛影视 | 日韩理论影院 | 国产午夜精品免费一区二区三区视频 | 在线亚洲播放 | 国产成人免费在线观看 | 婷婷中文字幕综合 | 久久人人爽人人 | 在线视频免费观看 | 国产成人一二三 | 国产精国产精品 | av免费观看网址 | 在线色亚洲 | www五月天com| 黄网站色视频免费观看 | 成人动漫一区二区三区 | a色视频| 最新av在线网址 | 啪啪动态视频 | 成年人天堂com | 狠狠色丁香婷婷综合视频 | 国产一区二区三区在线免费观看 | 天堂av在线免费观看 | 成人羞羞免费 | av色一区 | 亚洲免费高清视频 | 国产精品18久久久久久久 | 一区二区三区中文字幕在线 | www日韩欧美 | 国产精品精 | 日韩av男人的天堂 | 久久久久北条麻妃免费看 | 国产一级二级av | 免费在线观看一区 | 99精品欧美一区二区三区 | 99久久婷婷国产精品综合 | 久久在线免费 | 国产精品久久久久久久久久ktv | 久久九九网站 | 日韩av中文在线观看 | 亚洲伊人天堂 | 亚洲精品a区 | 欧美三级在线播放 | 亚洲精品视频 | 日日天天干 | 免费看色的网站 | 国产手机在线精品 | 一级黄色大片 | 中文字幕在线播放日韩 | 看v片 | 午夜美女影院 | 天天干天天射天天爽 | 日韩av在线一区二区 | 久久爱影视i | www.大网伊人| 深夜激情影院 | 在线视频精品 | 久久久精品福利视频 | 欧美久久久影院 | 免费久久久久久久 | av中文字幕亚洲 | 国产麻豆果冻传媒在线观看 | 98久久 | 中文字幕电影在线 | 婷婷综合久久 | 9在线观看免费高清完整版在线观看明 | 欧美一区二区三区在线 | 亚洲涩涩涩 | 欧美一区成人 | 中文字幕在线免费播放 | 狠狠躁夜夜a产精品视频 | 97超碰人人爱 | 视频在线观看日韩 | 国产精品 日韩精品 | 一区二区三区 亚洲 | 久操操| 色姑娘综合天天 | 国产vs久久| 免费在线黄网 | 亚洲国产中文在线观看 | 97精品欧美91久久久久久 | 久久视频二区 | 四虎国产| 丁香婷婷社区 | 久久精品99久久 | 狠狠色丁香九九婷婷综合五月 | 日本色小说视频 | 中文字幕的 | 色噜噜在线观看视频 | 成年人三级网站 | 麻豆传媒视频观看 | 天天干天天爽 | 欧美精品乱码久久久久久按摩 | 久久精品久久精品久久 | 黄色aaaaa| 久久午夜精品 | 久久免费激情视频 | www色婷婷com | 欧洲精品久久久久毛片完整版 | 亚洲天堂色婷婷 | 国产精品一区在线 | 久久夜夜爽 | 久久大片网站 | 国产成人精品综合 | 日韩在线电影一区二区 | 国产丝袜在线 | 亚洲精品国产精品国自产 | 日韩精品欧美精品 | 亚洲国产婷婷 | 久久99国产精品自在自在app | 在线精品视频在线观看高清 | 人人干天天射 | 欧美黑吊大战白妞欧美 | av免费在线观| 91麻豆精品国产91久久久久久久久 | 91人人爱| 日韩中文字幕a | 国产精品久久久久久久7电影 | 精品国产区在线 | 在线免费观看的av网站 | 五月开心婷婷网 | 中文字幕在线国产精品 | 粉嫩av一区二区三区四区 | 国产情侣一区 | 亚洲精品人人 | 中文字幕乱视频 | 一区二区亚洲精品 | 69av国产| 欧美一区在线观看视频 | 久久超| 91大片网站 | 69亚洲视频 | 欧美一级在线看 | 国产成人在线免费观看 | 极品久久久久久久 | av一区二区在线观看中文字幕 | 青青五月天 | 国产精品 日韩精品 | 久久人人爽人人片av | 欧美性色综合 | 亚洲国产精品成人va在线观看 | 成人黄色大片在线免费观看 | 91视频在线免费看 | 丁香六月天婷婷 | 99久久精品国产亚洲 | 热久久影视 | 久久久久欠精品国产毛片国产毛生 | 天天曰天天曰 | 三级黄色在线 | 中文字幕乱在线伦视频中文字幕乱码在线 | 欧美人交a欧美精品 | 五月婷婷一级片 | 久久伦理电影 | 欧美地下肉体性派对 | 欧美精品久久久久久久久老牛影院 | 国产v欧美 | 久久国产精品区 | 成人精品视频久久久久 | 日韩精品免费在线观看 | 日韩视频一区二区三区在线播放免费观看 | 午夜私人影院久久久久 | 人人草人人草 | 九九99靖品 | 国际精品久久 | 久久这里只有精品视频99 | www.xxxx变态.com| 久久99九九99精品 | 天天综合导航 | 国产99久久九九精品免费 | 91在线porny国产在线看 | 日韩午夜小视频 | 久久久免费精品视频 | 国产精品久久久久久久电影 | 深爱激情综合 | 中文字幕在线精品 | 国产精品地址 | 黄色三级在线看 | 99电影 | 日韩精品一区二区免费 | 国产视频亚洲视频 | 99视频一区二区 | 欧美日韩国产精品爽爽 | 中文字幕影片免费在线观看 | 99爱视频 | 美女久久久 | 日韩精品一区二区在线视频 | 国产黄色片一级 | 亚洲春色综合另类校园电影 | 久久久久亚洲精品中文字幕 | av在线小说 | 国产一区二区在线精品 | 热精品 | 亚洲国产wwwccc36天堂 | 精品久久久久久综合日本 | 久久看毛片 | 日韩精品第一区 | 草久久久久久 | 9999毛片| 久久理论片 | 欧美电影在线观看 | 国模一区二区三区四区 | 国产精品欧美久久 | 国产精品久久久久久久久久久久午 | 在线观看韩国av | 国产精品久久久久久久久免费 | 亚洲a免费 | 在线视频中文字幕一区 | 91精品一区二区在线观看 | 中文字幕在线观看av | 免费亚洲精品视频 | 综合久久2023 | 国产第一页在线观看 | 久久桃花网 | 日日干精品 | 国产精品视频久久 | 六月丁香激情综合色啪小说 | 日本久久中文字幕 | 日韩最新在线视频 | 97精品电影院 | 久久久久久久久国产 | 激情深爱.com| www.久久爱.cn | 国产精品99免视看9 国产精品毛片一区视频 | 国产香蕉视频 | 国产黄网站在线观看 | 亚洲国产丝袜在线观看 | 日韩激情片在线观看 | 少妇bbr搡bbb搡bbb | 久久久久久久99精品免费观看 | 国产在线观看免 | 五月婷婷在线视频 | 91精品久久久久久综合乱菊 | 高潮久久久久久久久 | 五月天婷婷免费视频 | 麻豆系列在线观看 | 国产精品字幕 | 91桃色免费观看 | 亚洲一区黄色 | 久久中文精品视频 | 久久综合欧美 | 亚洲精品国偷拍自产在线观看蜜桃 | 在线观看韩日电影免费 | 97精品久久人人爽人人爽 | 久久精品a | 黄网站色欧美视频 | 国产精品成人aaaaa网站 | 亚洲成人免费在线观看 | 国产精品淫片 | 久久精品影视 | 日韩久久精品一区二区 | 欧美另类人妖 | 毛片视频网址 | 在线亚洲精品 | 韩国精品福利一区二区三区 | 精品一区精品二区高清 | 亚洲专区欧美 | 人人爽人人爽人人片 | 国产区精品视频 | 久久成人国产精品一区二区 | 欧美另类xxxxx | 91经典在线| 99精品国产一区二区三区麻豆 | 黄色毛片大全 | 97av超碰 | free,性欧美 九九交易行官网 | 国产在线看 | 婷婷丁香av | 久久久久久久久艹 | 久久爱资源网 | 日日夜夜中文字幕 | 国产一区视频在线观看免费 | 久久国产女人 | 日韩色在线 | 亚洲欧美综合精品久久成人 | 黄色在线成人 | 中文字幕九九 | 国产精品成人一区二区三区吃奶 | 成人黄色毛片视频 | www.五月天激情 | 亚洲综合小说 | 亚洲成年人在线播放 | 日韩精选在线 | 午夜精品导航 | 日韩成人免费观看 | 97精品在线视频 | 国产成人一区二区三区久久精品 | 久久91网 | 午夜av激情 | 一级欧美一级日韩 | av网站在线观看免费 | 国产一级二级在线 | 日韩av中文字幕在线免费观看 | 久久国产视屏 | 久爱精品在线 | 久久不卡视频 | 日韩网站免费观看 | 天天色天天操综合网 | 亚洲日本一区二区在线 | 亚洲国产成人久久 | 婷婷丁香av | 不卡的一区二区三区 | 亚洲精品乱码久久久久v最新版 | 欧美色黄| 国产尤物在线观看 | 午夜久久影视 | 亚洲亚洲精品在线观看 | 国产香蕉97碰碰碰视频在线观看 | www.久热 | 国产精品永久免费观看 | 中文字幕av免费在线观看 | 亚洲精品国内 | 97电影在线观看 | 亚洲丝袜中文 | 日韩高清在线一区二区 | 高清中文字幕 | 国内外成人在线 | 99视频一区二区 | 日本久久久精品视频 | 国产精品久久久久永久免费看 | 精品毛片一区二区免费看 | 国产无遮挡又黄又爽在线观看 | 国产在线精品一区二区 | 久久精品免费 | 成人全视频免费观看在线看 | 午夜久久久久久久久久久 | 不卡的av在线播放 | 92国产精品久久久久首页 | 久色婷婷 | 国产精品久久久久久久久久东京 | 不卡视频国产 | 国产成人综合精品 | 日夜夜精品视频 | 国产视频中文字幕在线观看 | 精品高清视频 | 亚洲观看黄色网 | 中文字幕在线观看一区二区三区 | 一级性av| 日韩中文字幕免费电影 | 综合中文字幕 | av在线一级 | 婷婷在线五月 | 日韩亚洲精品电影 | 激情婷婷六月 | 五月婷婷一区二区三区 | 91精品国产九九九久久久亚洲 | 欧美亚洲成人免费 | 国产精品乱码在线 | 永久免费毛片 | 国产精品久久久久久久免费大片 | 精品久久片 | 成人午夜电影免费在线观看 | 国产黄网站在线观看 | 99色资源| 久久精品国产亚洲a | ,久久福利影视 | 99视频国产在线 | 精品久久福利 | 在线看国产精品 | 91精品国产高清自在线观看 | 国产高清 不卡 | 天天五月天色 | 黄色高清视频在线观看 | 中文免费在线观看 | 久久精品麻豆 | 免费h视频| 成人av电影在线播放 | 五月综合激情网 | 在线高清| 狠狠狠狠狠狠干 | 亚洲成人免费在线 | 婷婷激情av | 免费久久精品视频 | 99精品视频在线播放观看 | 91爱爱网址 | 婷婷丁香九月 | 国内免费久久久久久久久久久 | 伊人五月天婷婷 | 久久久久国产成人精品亚洲午夜 | 久久久伦理 | 精品视频免费久久久看 | 日日夜夜网站 | 人人干在线观看 | 东方av免费在线观看 | a视频在线观看 | 亚洲高清资源 | 久久免费高清 | 精品美女久久久久久免费 | 成人欧美在线 | 精品国产电影一区二区 | 欧美激情精品一区 | 日本丶国产丶欧美色综合 | 精品影院 | 婷婷在线免费 | 色视频网站在线观看一=区 a视频免费在线观看 | 日韩aa视频| 草久久久久久久 | 波多野结衣在线观看一区二区三区 | 国产福利一区二区三区视频 | 免费在线激情视频 | 久久久久久免费 | 黄色网大全 | 久久兔费看a级 | 国产精品美女视频网站 | 天天操天天干天天插 | www国产亚洲| 男女啪啪免费网站 | 99久久网站| 国产一区视频免费在线观看 | 在线一区av | 狠狠色伊人亚洲综合网站色 | 国产精品欧美日韩在线观看 | a级成人毛片 | 亚洲国产精品传媒在线观看 | 人人爽人人香蕉 | 久久久精品网 | 7777精品伊人久久久大香线蕉 | 天天做夜夜做 | 五月婷婷狠狠 | 中文字幕资源在线 | 999视频在线观看 | 国产999精品久久久久久 | 天天天在线综合网 | 色婷婷88av视频一二三区 | 一级片黄色片网站 | 日本系列中文字幕 | 亚洲天堂网站视频 | 婷婷色中文字幕 | 久久国产精品区 | 黄色精品国产 | 色黄www小说 | 亚洲精品www久久久 www国产精品com | 日韩mv欧美mv国产精品 | 中文字幕在线播放日韩 | 免费日韩一区二区三区 | 99视频在线免费看 | 日批视频国产 | 国产精品成人免费 | 天天干,天天射,天天操,天天摸 | 国产高清视频在线播放 | 天天伊人狠狠 | 日日日日| 国产一区欧美在线 | 婷婷久月 | 精品在线免费观看 | 在线观看日韩av | 国内三级在线观看 | 激情五月婷婷激情 | 日韩av不卡在线观看 | 精品久久久久免费极品大片 | 最新国产在线 | www.久久久久 | 日韩网站在线免费观看 | 91精品免费在线 | 日日夜夜天天 | 久久久精品在线观看 | 国产夫妻av在线 | 精品在线观看一区二区 | 一级黄色电影网站 | 中文字幕免 | 97理论片 | 国产二区视频在线观看 | 在线视频 影院 | 国产视频在线观看一区 | 精品视频中文字幕 | 伊人首页| 最近中文国产在线视频 | 亚洲国产成人高清精品 | 在线观看的av网站 | 亚洲成人av在线播放 | 日女人免费视频 | 欧美性做爰猛烈叫床潮 | 天天射天天射天天 | 狠狠久久 | 成人9ⅰ免费影视网站 | 亚洲一区二区三区精品在线观看 | 99视频在线免费播放 | 日韩免费电影在线观看 | 欧美经典久久 | 国产成人精品女人久久久 | 国产精品自拍在线 | 欧美成人xxxx | 视频一区二区国产 | 亚洲免费av在线 | 麻豆影视在线免费观看 | www.五月天色 | 一区二区国产精品 | 国产91在线 | 美洲 | 亚洲精品国偷自产在线99热 | 欧美日韩一区二区在线观看 | 午夜视频在线观看欧美 | 麻豆视频一区 | www.香蕉 | www·22com天天操 | 亚洲理论在线观看 | 在线a亚洲视频播放在线观看 | 欧美极品一区二区三区 | 国产欧美综合在线观看 | 九九视频免费观看视频精品 | 免费看的黄色 | 亚洲性xxxx| 91亚州 | 亚洲专区在线播放 | 日韩欧美电影在线 | 亚洲精品小区久久久久久 | 欧美特一级| www.五月天激情 | 欧美精品免费视频 | 国产高清小视频 | 7799av| 久久一区二区三区国产精品 | 又黄又刺激又爽的视频 | 国产精品久久久一区二区 | 国产精品久久久久久久久免费 | 五月婷久 | 天天操天天干天天爱 | 伊人天天狠天天添日日拍 | 丁香色婷婷 | 婷婷国产一区二区三区 | 亚洲欧洲一区二区在线观看 | 亚洲免费在线播放视频 | 欧美日韩国产在线 | 久久精品国亚洲 | 国产美女网| 中文久草 | 久久久.com| 国产精品免费人成网站 | 欧美日韩三级在线观看 | 黄a网 | 久久只精品99品免费久23小说 | 91av大全| 日本一区二区不卡高清 | 91成人在线视频观看 | 亚州精品在线视频 | 亚洲精品国产高清 | 日韩av在线资源 | 久草视频视频在线播放 | 亚洲视频第一页 | 国产91精品高清一区二区三区 | 蜜臀久久99精品久久久久久网站 | 激情 一区二区 | 久久综合色天天久久综合图片 | 日韩精品一区二区三区免费视频观看 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 一区二区三区高清不卡 | 精品999在线观看 | 亚洲国产精品传媒在线观看 | 99热手机在线观看 | 五月丁色 | 九九久久影视 | 久久综合之合合综合久久 | 超碰在线日韩 | 手机av永久免费 | 五月婷婷伊人网 | 五月天婷婷免费视频 | 天天色草 | 久久久精品国产一区二区三区 | 欧美精品999 | 五月婷婷在线观看 | 日韩电影中文字幕在线观看 | 日韩欧美综合视频 | 六月婷婷久香在线视频 | 欧美一级激情 | 欧美日韩二区三区 | 欧洲高潮三级做爰 | 丁香婷婷激情国产高清秒播 | 久久久婷 | 国产精品视频在线观看 | 久久视频在线观看免费 | 久久久久久国产精品免费 | 日韩电影在线看 | 亚洲色五月 | 精品国产乱码 | 五月av在线| 黄色视屏av | 天天天天综合 | 看污网站 | 日韩久久激情 | 久久国产二区 | 香蕉看片| 毛片a级片| 特级毛片网站 | 在线日本看片免费人成视久网 | 国内精品久久久久国产 | 国内精品久久久久影院一蜜桃 | 国产精品久久婷婷六月丁香 | 久久久91精品国产一区二区三区 | av在线激情 | 国产成人在线综合 | 国产成人61精品免费看片 | 免费观看全黄做爰大片国产 | 国产精品手机播放 | 99色在线视频 | 欧美91在线| 91av精品 | 精品96久久久久久中文字幕无 | 日韩精品中文字幕在线播放 | 黄色免费av | 手机成人av | 99视频免费播放 | 一区二区三区日韩在线观看 | 992tv在线观看 | 久久免费视频6 | 五月婷婷婷婷婷 | 9ⅰ精品久久久久久久久中文字幕 | 国产成人精品在线观看 | 国产精品精品久久久久久 | 久久字幕网 | 亚洲国产网站 | 亚洲精品看片 | 亚洲精品国产精品国自产观看 | 99爱视频在线观看 | 国产成人一二片 | 天天色草 | 亚洲激情校园春色 | 天天做日日做天天爽视频免费 | 亚洲乱码在线观看 | 中文区中文字幕免费看 | 精品久久久久久久久久久久久久久久 | 黄色成年网站 | 在线91精品 | 97色在线 | 欧美日一级片 | 狠狠干夜夜操 | 亚洲高清视频在线观看 | 91精品啪啪 | 国产精品wwwwww | 日日激情 |