久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

詳解Nginx如何代理UDP連接

瀏覽:12日期:2023-08-03 20:13:38
目錄UDP 連接實驗基礎配置reuseportproxy_xxx directives動態代理總結UDP 連接

眾所周知,UDP 并不像 TCP 那樣是基于連接的。但有些時候,我們需要往一個固定的地址發送多個 UDP 來完成一個 UDP 請求。為了保證服務端能夠知道這幾個 UDP 包構成同一個會話,我們需要在發送 UDP 包時綁定某個端口,這樣當網絡棧通過五元組(協議、客戶端IP、客戶端端口、服務端IP、服務端端口)進行區分時,那幾個 UDP 包能夠分到一起。通常我們會把這種現象稱之為 UDP 連接。

但這樣又有了一個新的問題。不同于 TCP 那樣有握手和揮手,UDP 連接僅僅意味著使用固定的客戶端端口。雖然作為服務端,由于事先就跟客戶端約定好了一套固定的協議,可以知道一個 UDP 連接應當在何處終止。但如果中間使用了代理服務器,那么代理是如何區分某幾個 UDP 包是屬于某個 UDP 連接呢?畢竟沒有握手和揮手作為分隔符,一個中間人是不清楚某個會話應當在何處放下句號的。

通過下面的實驗,我們會看到 Nginx 是如何處理這個問題的。

實驗

在接下來的幾個實驗中,我都會用一個固定的客戶端。這個客戶端會向 Nginx 監聽的地址建立 UDP “連接”,然后發送 100 個 UDP 包。

// save it as main.go, and run it like `go run main.go`package mainimport ( 'fmt' 'net' 'os')func main() { conn, err := net.Dial('udp', '127.0.0.1:1994') if err != nil {fmt.Printf('Dial err %v', err)os.Exit(-1) } defer conn.Close() msg := 'H' for i := 0; i < 100; i++ {if _, err = conn.Write([]byte(msg)); err != nil { fmt.Printf('Write err %v', err) os.Exit(-1)} }}基礎配置

下面是實驗中用到的 Nginx 基礎配置。后續實驗都會在這個基礎上做些改動。

這個配置中,Nginx 會有 4 個 worker 進程監聽 1994 端口,并代理到 1995 端口上。錯誤日志會發往標準錯誤,而訪問日志會發往標準輸出。

worker_processes 4;daemon off;error_log /dev/stderr warn;events { worker_connections 10240;}stream { log_format basic '[$time_local] ' 'received: $bytes_received ' '$session_time'; server {listen 1994 udp;access_log /dev/stdout basic;preread_by_lua_block { ngx.log(ngx.ERR, ngx.worker.id(), ' ', ngx.var.remote_port)}proxy_pass 127.0.0.1:1995;proxy_timeout 10s; } server {listen 1995 udp;return 'data'; }}

輸出如下:

2023/01/27 18:00:59 [error] 6996#6996: *2 stream [lua] preread_by_lua(nginx.conf:48):2: 1 51933 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:19942023/01/27 18:00:59 [error] 6995#6995: *4 stream [lua] preread_by_lua(nginx.conf:48):2: 0 51933 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:19942023/01/27 18:00:59 [error] 6997#6997: *1 stream [lua] preread_by_lua(nginx.conf:48):2: 2 51933 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:19942023/01/27 18:00:59 [error] 6998#6998: *3 stream [lua] preread_by_lua(nginx.conf:48):2: 3 51933 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:01:09 +0800] received: 28 10.010[27/Jan/2023:18:01:09 +0800] received: 27 10.010[27/Jan/2023:18:01:09 +0800] received: 23 10.010[27/Jan/2023:18:01:09 +0800] received: 22 10.010

可以看出,全部 100 個 UDP 包分散到了每個 worker 進程上。看來 Nginx 并沒有把來自同一個地址的 100 個包當作同一個會話,畢竟每個進程都會讀取 UDP 數據。

reuseport

要想讓 Nginx 代理 UDP 連接,需要在 listen 時指定 reuseport:

... server {listen 1994 udp reuseport;access_log /dev/stdout basic;

現在全部 UDP 包都會落在同一個進程上,并被算作同一個會話:

2023/01/27 18:02:39 [error] 7191#7191: *1 stream [lua] preread_by_lua(nginx.conf:48):2: 3 55453 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:02:49 +0800] received: 100 10.010

多個進程在監聽同一個地址時,如果設置了 reuseport 時,Linux 會根據五元組的 hash 來決定發往哪個進程。這樣一來,同一個 UDP 連接里面的所有包就會落到一個進程上。

順便一提,如果在 1995 端口的 server 上打印接受到的 UDP 連接的客戶端地址(即 Nginx 跟上游通信的地址),我們會發現同一個會話的地址是一樣的。也即是 Nginx 在代理到上游時,默認就會使用 UDP 連接來傳遞整個會話。

proxy_xxx directives

相信讀者也已經注意到,在錯誤日志中記錄的 UDP 訪問開始時間,和在訪問日志中記錄的結束時間,正好差了 10 秒。該時間段對應了配置里的 proxy_timeout 10s;。由于 UDP 連接中沒有揮手的說法,Nginx 默認根據每個會話的超時時間來決定會話何時終止。默認情況下,一個會話的持續時間是 10 分鐘,只是由于我缺乏耐心,所以特定配成了 10 秒。

除了超時時間,Nginx 還會依靠什么條件決定會話的終止呢?請往下看:

...proxy_timeout 10s;proxy_responses 1;

在新增了 proxy_responses 1 后,輸出變成了這樣:

2023/01/27 18:07:35 [error] 7552#7552: *1 stream [lua] preread_by_lua(nginx.conf:48):2: 2 36308 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:07:35 +0800] received: 62 0.0032023/01/27 18:07:35 [error] 7552#7552: *65 stream [lua] preread_by_lua(nginx.conf:48):2: 2 36308 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:07:35 +0800] received: 9 0.0002023/01/27 18:07:35 [error] 7552#7552: *76 stream [lua] preread_by_lua(nginx.conf:48):2: 2 36308 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:07:35 +0800] received: 7 0.0002023/01/27 18:07:35 [error] 7552#7552: *85 stream [lua] preread_by_lua(nginx.conf:48):2: 2 36308 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:07:35 +0800] received: 3 0.0002023/01/27 18:07:35 [error] 7552#7552: *90 stream [lua] preread_by_lua(nginx.conf:48):2: 2 36308 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:07:35 +0800] received: 19 0.000

我們看到 Nginx 不再被動等待時間超時,而是在收到上游發來的包之后就終止了會話。proxy_timeout 和 proxy_responses 兩者間是“或”的關系。

和 proxy_responses 相對的有一個 proxy_requests:

...proxy_timeout 10s;proxy_responses 1;proxy_requests 50;

在配置了 proxy_requests 50 后,我們會看到每個請求的大小都穩定在 50 個 UDP 包:

2023/01/27 18:08:55 [error] 7730#7730: *1 stream [lua] preread_by_lua(nginx.conf:48):2: 0 49881 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:19942023/01/27 18:08:55 [error] 7730#7730: *11 stream [lua] preread_by_lua(nginx.conf:48):2: 0 49881 while prereading client data, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:08:55 +0800] received: 50 0.002[27/Jan/2023:18:08:55 +0800] received: 50 0.001

注意讓會話終止所需的上游響應的 UDP 數是 proxy_requests * proxy_responses。在上面的例子中,如果我們把 proxy_responses 改成 2,那么要過 10 秒才會終止會話。因為這么做之后,對應每 50 個 UDP 包的請求,需要響應 100 個 UDP 包才會終止會話,而每個請求的 UDP 包只會得到一個 UDP 作為響應,所以只能等超時了。

動態代理

在大多數時候,UDP 請求的包數不是固定的,我們可能要根據開頭的某個長度字段來確定會話的包數,抑或通過某個包的包頭是否有 eof 標記來判斷什么時候終結當前會話。目前 Nginx 的幾個 proxy_* 指令都只支持固定值,不支持借助變量動態設置。

proxy_requests 和 proxy_responses 實際上只是設置了 UDP session 上的對應計數器。所以理論上我們可以修改 Nginx,暴露出 API 來動態調整當前 UDP session 的計數器的值,實現按上下文決定 UDP 請求邊界的功能。那是否存在不修改 Nginx 的解決方案呢?

換個思路,我們能不能通過 Lua 把客戶端數據都讀出來,然后在 Lua 層面上由 cosocket 發送給上游?通過 Lua 實現上游代理這個思路確實挺富有想象力,可惜它目前是行不通的。

使用如下代碼代替前面的 preread_by_lua_block:

content_by_lua_block { local sock = ngx.req.socket() while true dolocal data, err = sock:receive()if not data then if err and err ~= 'no more data' thenngx.log(ngx.ERR, err) end returnendngx.log(ngx.WARN, 'message received: ', data) end}proxy_timeout 10s;proxy_responses 1;proxy_requests 50;

我們會看到這樣的輸出:2023/01/27 18:17:56 [warn] 8645#8645: *1 stream [lua] content_by_lua(nginx.conf:59):12: message received: H, udp client: 127.0.0.1, server: 0.0.0.0:1994[27/Jan/2023:18:17:56 +0800] received: 1 0.000...

由于在 UDP 下面, ngx.req.socket:receive 目前只支持讀取第一個包,所以即使我們設置了 while true 循環,也得不到全部的客戶端請求。另外由于 content_by_lua 會覆蓋掉 proxy_* 指令,所以 Nginx 并沒有走代理邏輯,而是認為當前請求只有一個包。把 content_by_lua 改成 preread_by_lua 后,雖然 proxy_* 指令這下子生效了,但因為拿不到全部客戶端請求,依然無法完成 Lua 層面上的代理。

總結

假如 Nginx 代理的是 DNS 這種只有一個包的基于 UDP 的協議,那么使用 listen udp 就夠了。但如果需要代理包含多個包的基于 UDP 的協議,那么還需要加上 reuseport。另外,Nginx 目前還不支持動態設置每個 UDP 會話的大小,所以沒辦法準確區分不同的 UDP 會話。Nginx 代理 UDP 協議時能用到的功能,更多集中于像限流這種不需要關注單個 UDP 會話的。

以上就是詳解Nginx如何代理UDP連接的詳細內容,更多關于Nginx代理UDP連接的資料請關注好吧啦網其它相關文章!

標簽: Nginx
主站蜘蛛池模板: 精品毛片| 欧美性久久 | 精品在线视频观看 | 亚洲一区免费观看 | 一级视频在线免费观看 | 免费欧美视频 | h片免费| 日韩视频一区二区 | 欧美精品一区二区在线观看 | 日韩高清一区 | 国产视频2021 | 精品99在线| 特级淫片日本高清视频免费 | a黄视频 | 日韩视频在线免费观看 | 午夜电影网址 | 国产精品毛片一区二区在线看 | 日韩高清一区二区 | 国产成人精品一区二区三区四区 | 手机看片亚洲 | 亚洲第一成人在线视频 | a国产视频 | 成年人福利 | 欧美日韩在线免费观看 | 亚洲视频一区二区 | 亚洲 精品 综合 精品 自拍 | 国产乱码一区二区三区在线观看 | 亚洲在线一区二区 | 中文字幕亚洲欧美日韩在线不卡 | 精品中文字幕一区 | 91久久久久 | 国产91在线视频 | 99久久免费视频在线观看 | 欧美精产国品一二三区 | 午夜精品久久久久久久白皮肤 | 岛国a视频| 欧美日韩中文字幕在线 | 午夜电影av| 久久综合一区二区三区 | 国产91视频在线观看 | 日本在线小视频 | 激情久久av一区av二区av三区 | 国产成年免费视频 | 日本电影www | 91se在线| 香蕉av在线 | 久久视频一区二区 | 男人的天堂久久 | 日韩欧美高清视频 | 欧美激情一区二区三区蜜桃视频 | 中文字幕av高清 | 日本三级中文在线电影 | 欧美在线免费 | 热久久这里只有精品 | 精品国产一区二区三区久久影院 | 成人不卡在线 | 免费观看成人性生生活片 | 免费在线日韩 | 亚洲一区二区在线视频 | 伦理一区 | 成人av网站在线观看 | 国产一在线 | 毛片免费观看 | 中文字幕亚洲欧美日韩在线不卡 | 色先锋资源| 日本免费视频 | 超碰最新网址 | 91精品国产欧美一区二区 | 欧美一级片免费在线观看 | 日韩成人在线观看视频 | 91精品久久久久久久久 | 成人久久久 | 中文字幕在线观看av | 在线观看成人小视频 | 国产精品久久久久久久 | 久久精品这里只有精品 | 欧美午夜一区二区三区免费大片 | 在线观看日韩 | 国产高清美女一级a毛片久久 | 国产精品久久久久久久一区探花 | 99久久99久久久精品色圆 | 中文字幕本久久精品一区 | 日韩精品视频在线观看免费 | 超级乱淫片国语对白免费视频 | 久久久久久毛片免费观看 | 天天操夜夜爽 | 91久久久久| 人人看人人射 | 日韩中文字幕av | 日本视频中文字幕 | 亚洲精品一区二区三区中文字幕 | 四虎免费在线播放 | a级片在线观看 | 国产91网址 | 91视频.com | 中文字幕69av| 精品国产乱码久久久久久久 | 69久久99精品久久久久婷婷 | 亚洲精品九九 | 国产欧美一区二区精品忘忧草 | 欧美精品一区二区三区四区 | 国产小视频在线播放 | 亚洲网站在线观看 | 久久久久女人精品毛片九一韩国 | 欧美精品乱码久久久久久按摩 | 亚洲精品一区久久久久久 | 久久久资源 | av免费网站在线观看 | 一级毛片免费播放 | 亚洲国产欧美一区二区三区久久 | 日韩欧美在线播放视频 | 龙珠z普通话国语版在线观看 | 亚洲成人精品在线观看 | 日本不卡高字幕在线2019 | 国产欧美一区二区三区在线看 | 日日躁夜夜操 | 日韩欧美精品一区二区三区 | 毛片黄片 | 欧美一级二级视频 | 日日久| 天堂在线视频 | 亚洲性爰 | 国产欧美精品一区二区三区 | 毛片av在线播放 | 欧美成人免费 | 国产精品久久久久久婷婷天堂 | 四虎影音 | 中文字幕一区二区三区四区不卡 | 蜜桃视频成人m3u8 | 国产精品久久久久久久午夜片 | 久久久999成人 | 精品日韩一区二区 | 国产精品99 | 黄色网址av | 精品在线播放 | 午夜精品一区二区三区在线视频 | 在线99视频 | 亚洲高清视频一区二区三区 | 婷婷激情五月 | 亚洲a网| 国产成人午夜 | 精品国产乱码久久久久久闺蜜 | 欧洲精品一区 | 亚洲电影一区 | 黄色国产视频 | 岛国视频| 综合久久久久久久 | 国际精品久久 | 欧美激情在线狂野欧美精品 | 91亚洲国产成人久久精品网站 | 99久久99热这里只有精品 | 深夜成人小视频 | 久久久久91 | 超碰偷拍 | www.成人| 在线观看亚洲a | 日韩成人免费中文字幕 | 日本一区二区三区免费观看 | 精品日韩一区二区三区 | 色综合一区二区三区 | 一区视频 | 欧美一区二区三区在线 | 欧美 日韩 国产 成人 在线 | 国产精品一区亚洲二区日本三区 | 成人av免费在线 | 国产精品视频 | 日韩中文字幕免费在线 | 在线播放国产视频 | 精品免费国产一区二区三区 | 综合久久综合久久 | 国产日韩精品一区二区 | av大片在线观看 | 久久99国产精一区二区三区 | 蜜桃精品久久久久久久免费影院 | 欧美视频网站 | 91福利网址| 人一级毛片 | 91精品啪aⅴ在线观看国产 | 国产精品久久久久久妇女6080 | 特级av| 亚洲精品国偷拍自产在线观看 | 最近中文字幕免费观看 | 欧美激情一区二区三级高清视频 | 天天想天天干 | 日本成片视频 | 欧美一区二区三区精品 | 麻豆freexxxx性91精品 | 99久久99热这里只有精品 | 一区二区不卡视频 | 国产91免费在线 | 国产免费看 | 九九精品视频在线观看 | 99精品视频一区二区三区 | 91在线免费看| 日韩字幕一区 | 91精品午夜| 亚洲1区2区在线 | 午夜视频在线观看网站 | 国产精品中文字幕在线观看 | 亚洲国产网站 | 激情久久久 | 亚洲精品视频免费看 | 国产区在线 | 久色视频在线观看 | 亚洲二区在线 | 亚洲欧美日韩精品久久奇米色影视 | 欧美片网站免费 | 亚洲视频在线播放 | 国产一级在线观看 | 国产精品久久久久久久一区探花 | 日本亚洲精品成人欧美一区 | 国产三级在线免费观看 | 欧美一级片 | 天天草天天干 | segui88久久综合9999 | 狠狠综合久久av一区二区老牛 | 99色综合 | 精品视频一区二区三区四区 | 亚洲三级在线观看 | 国产精品美女av | 久久久一区二区三区 | 久久久久亚洲美女啪啪 | 一级毛片视频播放 | 亚洲在线免费观看 | 国产成人精品亚洲日本在线观看 | 国产精品免费一区二区 | 国产成人一区 | 一级片福利 | 欧洲一区在线 | yy6080久久伦理一区二区 | 欧美xxxx色视频在线观看免费 | 98久久久 | 亚洲永久免费视频 | 国产一区二区在线免费 | 一区福利视频 | 国产亚洲欧美在线 | 精品一二区 | 国产一区亚洲 | 自拍偷拍第一页 | 蜜臀影院 | 成人午夜精品一区二区三区 | 久久久久久久av | 羞羞视频网站在线免费观看 | 精品久久久久久一区二区 | 欧美精品一区二区三区四区在线 | 久久亚洲一区 | 999在线视频免费观看 | 亚洲精品国产第一综合99久久 | 欧美精品福利视频 | 爱干在线| 精品一区免费 | av电影中文字幕在线观看 | 我爱操| 国产精品成av人在线视午夜片 | 久久男人天堂 | 天天操夜夜操av | 成人免费淫片aa视频免费 | 国产精品免费一区二区三区四区 | 成人精品在线观看 | 狠狠搞狠狠干 | 免费看a | 欧美日韩精品一区二区三区 | 亚洲精品99| av影音资源 | 欧美激情在线免费观看 | 国产精彩视频 | 久久国产精品视频 | 久久精品国产免费 | 黄色大片在线 | 欧美一区二区三区黄 | 在线一级电影 | 久久久婷 | 日本欧美一区二区 | 天天天天天天操 | 欧美激情在线精品一区二区三区 | 日韩中文字幕一区 | 国产精品99精品久久免费 | 日本 欧美 三级 高清 视频 | 欧美一级淫片免费视频黄 | 在线中文字幕日韩 | 欧洲视频一区二区三区 | 亚洲精品一区中文字幕乱码 | 成人网久久 | 精品久久久久久久久久久久 | 日韩在线一区二区 | 一级篇 | 精品少妇一区二区三区 | 91在线免费看 | www日韩| 91精品国产综合久久精品 | 欧美天天| 日本亚洲国产一区二区三区 | 美女视频黄色 | 伊人网在线 | 手机久久看片 | 91视频网 | 天天看天天做 | 日韩欧美不卡 | 精品成人在线 | 日韩成人精品 | 九九精品视频在线 | 超碰激情| 成人免费在线电影 | 成人网久久 | 亚洲一区二区三区在线观看免费 | 日韩中文字幕一区二区 | 99pao成人国产永久免费视频 | 欧美一区永久视频免费观看 | 欧美一级片免费看 | 激情小视频网站 | 国产农村妇女精品 | 国产亚洲精品综合一区91555 | a中文字幕 | 亚洲视频在线一区 | 国产精彩视频 | 99久久99热这里只有精品 | 国产精品国产三级国产aⅴ入口 | 国产精品久久久久久亚洲调教 | 亚洲1区2区在线 | 狠狠操操 | 色婷婷综合久久久中文字幕 | 思九九爱九九 | 天天干天天看天天操 | 免费的国产视频 | 亚洲国产成人一区二区精品区 | av免费在线观看网站 | 免费观看一级黄色片 | 精品视频在线免费观看 | 成人在线三级 | 亚洲精品66| 日韩精品一区二区在线观看 | 国产精品资源在线 | 日本视频中文字幕 | 国产精品国产精品国产专区不片 | 日韩一级免费在线观看 | 亚洲视频在线观看 | 亚洲精品视频导航 | 6080夜射猫| 精品一区二区久久久久久久网站 | sis色中色 | 在线国v免费看 | 日本一区二区三区四区 | 国内精品视频一区二区三区 | 日韩欧美精品区 | 日韩在线二区 | 国产欧美精品一区二区 | 久久综合九色综合欧美狠狠 | 欧美精品久久一区 | 在线观看国产一区 | 欧美日韩一区二区视频在线观看 | 成人亚洲免费视频 | 美女又黄又免费 | 中文字幕一区在线观看视频 | 欧美日韩一区二区在线 | 亚洲午夜精品片久久www慈禧 | 亚洲欧美日韩精品 | 欧美在线视频网站 | 欧美午夜精品一区二区三区电影 | 国产精品婷婷午夜在线观看 | 亚洲一区二区中文字幕 | 欧美久久久久久久久久 | 欧美精品a∨在线观看不卡 欧美日韩中文字幕在线播放 | 国产伦精品一区二区 | 狠狠综合久久av一区二区小说 | 色综合久久天天综合网 | 亚洲精品欧美视频 | 日韩精品视频免费专区在线播放 | 91麻豆精品国产91久久久更新时间 | 国产精品久久久久精 | 999在线视频免费观看 | а_天堂中文最新版地址 | 97视频久久 | 国产亚洲精品美女久久久久久久久久 | 久久久91 | 成人免费一区二区三区视频软件 | 一级日批片 | 欧美一区二区在线视频 | 日韩成年视频 | 亚洲一区二区免费在线观看 | 成人在线视频网站 | 国产精品毛片一区二区三区 | 伊人精品影院 | 欧美精品在线看 | 一区二区三区在线 | www.一区 | 亚洲精品一区二区三区中文字幕 | 在线免费91| 久久精品91 | 欧美99热 | www.操操操 | 精品成人一区 | 日韩视频―中文字幕 | 99精品一区 | 欧美三级在线视频 | 精品亚洲自拍 | 日韩福利在线 | 亚洲国产成人av | 国产一区二区三区在线免费 | 精品免费av | 中文字幕亚洲欧美日韩在线不卡 | 亚洲男人的天堂在线播放 | 精品国产一区二区在线 | 欧美一区2区三区4区公司二百 | www在线看片 | 美女张开腿视频网站免费 | 久久久久久国产一级毛片高清版 | 九九爱爱视频 | 欧美在线a | 九九在线国产视频 | 亚洲黄色av网站 | 久久99国产精品久久99大师 | 亚洲成人在线视频网站 | 久久久人成影片一区二区三区 | 美女黄网 | 精品一区二区三区四区五区 | 艹逼逼视频 | 国产一区二区三区免费视频 | av在线日韩| 欧洲毛片 | 蜜桃久久av | 不卡视频一二三区 | 亚洲天天操 | 在线观看第一页 | 亚洲高清在线 | 国产精品久久久久久亚洲调教 | 日本一区二区三区免费观看 | 久久99精品国产自在现线 | 91一区二区在线 | 欧美一区久久 | 日韩成人免费视频 | 99re在线视频| 午夜影院 | 亚洲精品国产偷自在线观看 | 蜜桃官网 | 国产成人精品一区二区三区在线 | 久草在线| 午夜精品一区二区三区在线观看 | 国产精品久久久久久久久久东京 | 在线不卡视频 | 毛片网子 | 在线观看91| 欧美日韩三级在线 | av一区在线观看 | 亚洲一区二区三区四区五区午夜 | 精品国产一区二区三区日日嗨 | 亚洲久视频 | 噜噜噜天天躁狠狠躁夜夜精品 | 男人天堂中文字幕 | 成人一二三区 | 欧美日韩综合精品 | 成人精品久久久 | 精品一区二区免费视频 | 一级片在线观看免费 | 日韩精品视频在线观看免费 | 日韩精品一区二区三区免费观看视频 | 精品成人一区 | 国产亚洲精品久久久久久久久 | 精品无码久久久久久国产 | 成人一区二区三区 | 国产二区视频 | 一级毛片免费播放 | 亚洲+变态+欧美+另类+精品 | 99国产精品久久久久久久成人热 | av中文字幕在线播放 | 精品久久久久久久久久久久 | 欧美全黄 | 综合精品| 成人在线网 | 不卡在线 | 久久亚洲一区二区三区四区 | 婷五月综合 | 日韩三区 | 思热99re视热频这里只精品 | 日日夜夜精品免费视频 | 亚洲人成人一区二区在线观看 | 国产特一级黄色片 | 久久伊人av | 国产精品成人在线观看 | 久久白虎| 91精品国产欧美一区二区 | 色综合久久88色综合天天 | 欧美一区亚洲二区 | 91久久久久久久久久久久久 | 成人免费在线视频 | 夜夜av| 一区二区三区四区在线 | 华丽的挑战在线观看 | 欧美精品国产精品 | 免费黄色在线观看 | a√天堂资源在线 | 午夜看片 | 欧美综合国产精品久久丁香 | 日韩免费在线视频 | 欧美色综合 | 久久爱综合网 | 国产一区二区三区精品久久久 | 精品国产999 | 99久久久99久久国产片鸭王 | 亚洲精品一区二区三区蜜桃久 | 亚洲污视频 | 亚洲欧美激情另类 | 欧美大成色www永久网站婷 | 国产成人免费网站 | 久久99一区二区 | 免费一区二区 | 中文字幕av第一页 | 欧美一区二区三区在线 | 亚洲一区国产视频 | 国产精品国产成人国产三级 | 欧美福利一区二区 | 成人免费在线 | 午夜免费在线 | 亚洲一区二区日韩 | 香港三级日本三级a视频 | 中文字幕在线视频免费观看 | 国产精品久久久爽爽爽麻豆色哟哟 | 成人精品视频一区二区三区 | 亚洲国产精品成人 | 最近日韩中文字幕 | 午夜精品影院 | 99爱视频 | 亚洲视频一区在线 | 在线一区视频 | www.一区| 国产一二三四在线 | 999精品一区 | 一级片在线免费看 | 亚洲精品一区二三区不卡 | 欧美日韩精品一区二区在线播放 | 国产精品一区二区视频 | h片观看| 久久国产成人 | 欧美日本一区 | 国产精品99一区二区三区 | 亚洲精品一区中文字幕乱码 | 免费av片 | 北条麻妃一区二区免费播放 | 久久免费精品视频 | 亚洲一区二区免费看 | 一级黄色片欧美 | 国产视频精品在线 | 久久国产欧美一区二区三区精品 | 国产一区二区三区久久久 | 国产大片久久久 | 国产精品欧美一区二区三区不卡 | 91精品国产综合久久国产大片 | 欧美欧美欧美 | 国产高清在线精品一区二区三区 | 欧美一级黄色大片 | 羞羞在线视频 | 国产成人精品亚洲日本在线观看 | 亚洲精品一区二区另类图片 | 亚洲精品午夜视频 | 国产视频久久精品 | 一区二区久久 | 麻豆freexxxx性91精品 | 亚洲国产精品一区二区三区 | 在线国产视频 | 91精品国产乱码久久蜜臀 | 亚洲精品一区二区三区蜜桃久 | 国产视频久久久 | 欧美一区二区三区在线视频观看 | 亚洲日韩欧美一区二区在线 | 日韩在线观看第一页 | 黄网站免费在线 | 久久久精 | 欧美一级片在线 | 天堂影院一区二区 | 精品国产91 | 色视频网站在线观看一=区 日韩一二三区 | 国产乡下妇女做爰视频 | 欧美日韩在线观看视频 | 美女天堂网 | 日本高清视频网站www | 国产一区二区精品在线观看 | 91精品国产99久久久久久红楼 | 亚洲国产精品成人 | 日韩精品免费在线视频 | 欧美日韩国产在线播放 | 久久伊| h视频网站在线 | 久久久美女 | 国产精品成人av | 久久亚洲精品视频 | 国产有码| 自拍视频免费 | 欧美xxxx片 | 福利网在线 | 久久国产一区二区三区 | 在线观看成人网 | 亚洲一区精品在线 | 欧美一级片毛片免费观看视频 | 人和拘一级毛片 | 麻豆av一区 | 亚洲高清电影 | 精品亚洲成a人在线观看 | 亚洲黄色a级| 亚州成人 | 久久国产精品免费一区二区三区 | 99视频网站 | 欧美 日本 国产 | 五月婷婷导航 | 国产精品九九九 | 亚洲高清在线观看 | 影音先锋亚洲资源 | 国产一级免费 | 亚洲免费视频大全 | 色综久久 | av在线日韩 | 亚洲天天干 | 久热精品视频 | 国产精品夜色一区二区三区 | 亚洲成人毛片 | 国产1级片| 亚洲九九 |