国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

手工模擬實(shí)現(xiàn) Docker 容器網(wǎng)絡(luò)!

共 7708字,需瀏覽 16分鐘

 ·

2022-02-17 02:35

轉(zhuǎn)載自:開放內(nèi)功修煉

大家好,我是飛哥!

如今服務(wù)器虛擬化技術(shù)已經(jīng)發(fā)展到了深水區(qū)?,F(xiàn)在業(yè)界已經(jīng)有很多公司都遷移到容器上了。我們的開發(fā)寫出來的代碼大概率是要運(yùn)行在容器上的。因此深刻理解容器網(wǎng)絡(luò)的工作原理非常的重要。只有這樣將來遇到問題的時候才知道該如何下手處理。

網(wǎng)絡(luò)虛擬化,其實(shí)用一句話來概括就是用軟件來模擬實(shí)現(xiàn)真實(shí)的物理網(wǎng)絡(luò)連接。比如 Docker 就是用純軟件的方式在宿主機(jī)上模擬出來的獨(dú)立網(wǎng)絡(luò)環(huán)境。我們今天來徒手打造一個虛擬網(wǎng)絡(luò),實(shí)現(xiàn)在這個網(wǎng)絡(luò)里訪問外網(wǎng)資源,同時監(jiān)聽端口提供對外服務(wù)的功能。


看完這一篇后,相信你對 Docker 虛擬網(wǎng)絡(luò)能有進(jìn)一步的理解。好了,我們開始!

一、基礎(chǔ)知識回顧

1.1 veth、bridge 與 namespace

Linux 下的?veth?是一對兒虛擬網(wǎng)卡設(shè)備,和我們常見的 lo 很類似。在這兒設(shè)備里,從一端發(fā)送數(shù)據(jù)后,內(nèi)核會尋找該設(shè)備的另一半,所以在另外一端就能收到。不過 veth 只能解決一對一通信的問題。詳情參見輕松理解 Docker 網(wǎng)絡(luò)虛擬化基礎(chǔ)之 veth 設(shè)備!

如果有很多對兒 veth 需要互相通信的話,就需要引入?bridge?這個虛擬交換機(jī)。各個 veth 對兒可以把一頭連接在 bridge 的接口上,bridge 可以和交換機(jī)一樣在端口之間轉(zhuǎn)發(fā)數(shù)據(jù),使得各個端口上的 veth 都可以互相通信。參見

Namespace?解決的是隔離性的問題。每個虛擬網(wǎng)卡設(shè)備、進(jìn)程、socket、路由表等等網(wǎng)絡(luò)棧相關(guān)的對象默認(rèn)都是歸屬在 init_net 這個缺省的 namespace 中的。不過我們希望不同的虛擬化環(huán)境之間是隔離的,用 Docker 來舉例,那就是不能讓 A 容器用到 B 容器的設(shè)備、路由表、socket 等資源,甚至連看一眼都不可以。只有這樣才能保證不同的容器之間復(fù)用資源的同時,還不會影響其它容器的正常運(yùn)行。參見

通過 veth、namespace 和 bridge 我們在一臺 Linux 上就能虛擬多個網(wǎng)絡(luò)環(huán)境出來。而且它們之間、和宿主機(jī)之間都可以互相通信。

關(guān)于這三個技術(shù)的詳情,可以參考下面這三篇文章:

但是這三篇文章過后,我們還剩下一個問題沒有解決,那就是虛擬出來的網(wǎng)絡(luò)環(huán)境和外部網(wǎng)絡(luò)的通信。還拿 Docker 容器來舉例,你啟動的容器里的服務(wù)肯定是需要訪問外部的數(shù)據(jù)庫的。還有就是可能需要暴露比如 80 端口對外提供服務(wù)。例如在 Docker 中我們通過下面的命令將容器的 80 端口上的 web 服務(wù)要能被外網(wǎng)訪問的到。

我們今天的文章主要就是解決這兩個問題的,一是從虛擬網(wǎng)絡(luò)中訪問外網(wǎng),二是在虛擬網(wǎng)絡(luò)中提供服務(wù)供外網(wǎng)使用。解決它們需要用到路由和?nat?技術(shù)。

1.2 路由選擇

Linux 是在發(fā)送數(shù)據(jù)包的時候,會涉及到路由過程。這個發(fā)送數(shù)據(jù)包既包括本機(jī)發(fā)送數(shù)據(jù)包,也包括途徑當(dāng)前機(jī)器的數(shù)據(jù)包的轉(zhuǎn)發(fā)。

先來看本機(jī)發(fā)送數(shù)據(jù)包。其中本機(jī)發(fā)送在25 張圖,一萬字,拆解 Linux 網(wǎng)絡(luò)包發(fā)送過程這一篇我們討論過。

所謂路由其實(shí)很簡單,就是該選擇哪張網(wǎng)卡(虛擬網(wǎng)卡設(shè)備也算)將數(shù)據(jù)寫進(jìn)去。到底該選擇哪張網(wǎng)卡呢,規(guī)則都是在路由表中指定的。Linux 中可以有多張路由表,最重要和常用的是 local 和 main。

local 路由表中統(tǒng)一記錄本地,確切的說是本網(wǎng)絡(luò)命名空間中的網(wǎng)卡設(shè)備 IP 的路由規(guī)則。

#ip?route?list?table?local
local?10.143.x.y?dev?eth0?proto?kernel?scope?host?src?10.143.x.y
local?127.0.0.1?dev?lo?proto?kernel?scope?host?src?127.0.0.1

其它的路由規(guī)則,一般都是在 main 路由表中記錄著的??梢杂?ip route list table local?查看,也可以用更簡短的?route -n

再看途徑當(dāng)前機(jī)器的數(shù)據(jù)包的轉(zhuǎn)發(fā)。除了本機(jī)發(fā)送以外,轉(zhuǎn)發(fā)也會涉及路由過程。如果 Linux 收到數(shù)據(jù)包以后發(fā)現(xiàn)目的地址并不是本地的地址的話,就可以選擇把這個數(shù)據(jù)包從自己的某個網(wǎng)卡設(shè)備上轉(zhuǎn)發(fā)出去。這個時候和本機(jī)發(fā)送一樣,也需要讀取路由表。根據(jù)路由表的配置來選擇從哪個設(shè)備將包轉(zhuǎn)走。

不過值得注意的是,Linux 上轉(zhuǎn)發(fā)功能默認(rèn)是關(guān)閉的。也就是發(fā)現(xiàn)目的地址不是本機(jī) IP 地址默認(rèn)是將包直接丟棄。需要做一些簡單的配置,然后 Linux 才可以干像路由器一樣的活兒,實(shí)現(xiàn)數(shù)據(jù)包的轉(zhuǎn)發(fā)。

1.3 iptables 與 NAT

Linux 內(nèi)核網(wǎng)絡(luò)棧在運(yùn)行上基本上是一個純內(nèi)核態(tài)的東西,但為了迎合各種各樣用戶層不同的需求,內(nèi)核開放了一些口子出來供用戶層來干預(yù)。其中 iptables 就是一個非常常用的干預(yù)內(nèi)核行為的工具,它在內(nèi)核里埋下了五個鉤子入口,這就是俗稱的五鏈。

Linux 在接收數(shù)據(jù)的時候,在 IP 層進(jìn)入 ip_rcv 中處理。再執(zhí)行路由判斷,發(fā)現(xiàn)是本機(jī)的話就進(jìn)入 ip_local_deliver 進(jìn)行本機(jī)接收,最后送往 TCP 協(xié)議層。在這個過程中,埋了兩個 HOOK,第一個是 PRE_ROUTING。這段代碼會執(zhí)行到 iptables 中 pre_routing 里的各種表。發(fā)現(xiàn)是本地接收后接著又會執(zhí)行到 LOCAL_IN,這會執(zhí)行到 iptables 中配置的 input 規(guī)則。

在發(fā)送數(shù)據(jù)的時候,查找路由表找到出口設(shè)備后,依次通過 __ip_local_out、 ip_output 等函數(shù)將包送到設(shè)備層。在這兩個函數(shù)中分別過了 OUTPUT 和 POSTROUTING 開的各種規(guī)則。

如果是轉(zhuǎn)發(fā)過程,Linux 收到數(shù)據(jù)包發(fā)現(xiàn)不是本機(jī)的包可以通過查找自己的路由表找到合適的設(shè)備把它轉(zhuǎn)發(fā)出去。那就先是在 ip_rcv 中將包送到 ip_forward 函數(shù)中處理,最后在 ip_output 函數(shù)中將包轉(zhuǎn)發(fā)出去。在這個過程中分別過了 PREROUTING、FORWARD 和 POSTROUTING 三個規(guī)則。

綜上所述,iptables 里的五個鏈在內(nèi)核網(wǎng)絡(luò)模塊中的位置就可以歸納成如下這幅圖。

數(shù)據(jù)接收過程走的是 1 和 2,發(fā)送過程走的是 4 、5,轉(zhuǎn)發(fā)過程是 1、3、5。有了這張圖,我們能更清楚地理解 iptable 和內(nèi)核的關(guān)系。

在 iptables 中,根據(jù)實(shí)現(xiàn)的功能的不同,又分成了四張表。分別是 raw、mangle、nat 和 filter。其中 nat 表實(shí)現(xiàn)我們常說的 NAT(Network AddressTranslation) 功能。其中 nat 又分成 SNAT(Source NAT)和 DNAT(Destination NAT)兩種。

SNAT 解決的是內(nèi)網(wǎng)地址訪問外部網(wǎng)絡(luò)的問題。它是通過在 POSTROUTING 里修改來源 IP 來實(shí)現(xiàn)的。

DNAT 解決的是內(nèi)網(wǎng)的服務(wù)要能夠被外部訪問到的問題。它在通過 PREROUTING 修改目標(biāo) IP 實(shí)現(xiàn)的。

二、 實(shí)現(xiàn)虛擬網(wǎng)絡(luò)外網(wǎng)通信

基于以上的基礎(chǔ)知識,我們用純手工的方式搭建一個可以和 Docker 類似的虛擬網(wǎng)絡(luò)。而且要實(shí)現(xiàn)和外網(wǎng)通信的功能。

1. 實(shí)驗(yàn)環(huán)境準(zhǔn)備

我們先來創(chuàng)建一個虛擬的網(wǎng)絡(luò)環(huán)境出來,其命名空間為 net1。宿主機(jī)的 IP 是 10.162 的網(wǎng)段,可以訪問外部機(jī)器。虛擬網(wǎng)絡(luò)為其分配 192.168.0 的網(wǎng)段,這個網(wǎng)段是私有的,外部機(jī)器無法識別。

這個虛擬網(wǎng)絡(luò)的搭建過程如下。先創(chuàng)建一個 netns 出來,命名為 net1。

#?ip?netns?add?net1

創(chuàng)建一個 veth 對兒(veth1 - veth1_p),把其中的一頭 veth1 放在 net1 中,給它配置上 IP,并把它啟動起來。

#?ip?link?add?veth1?type?veth?peer?name?veth1_p
#?ip?link?set?veth1?netns?net1
#?ip?netns?exec?net1?ip?addr?add?192.168.0.2/24?dev?veth1??#?IP
#?ip?netns?exec?net1?ip?link?set?veth1?up

創(chuàng)建一個 bridge,給它也設(shè)置上 ip。接下來把 veth 的另外一端 veth1_p 插到 bridge 上面。最后把網(wǎng)橋和 veth1_p 都啟動起來。

#?brctl?addbr?br0
#?ip?addr?add?192.168.0.1/24?dev?br0
#?ip?link?set?dev?veth1_p?master?br0
#?ip?link?set?veth1_p?up
#?ip?link?set?br0?up

這樣我們就在 Linux 上創(chuàng)建出了一個虛擬的網(wǎng)絡(luò)。創(chuàng)建過程和?聊聊 Linux 上軟件實(shí)現(xiàn)的“交換機(jī)” - Bridge!?中一樣,只不過今天為了省事,只創(chuàng)建了一個網(wǎng)絡(luò)出來,上一篇中創(chuàng)建出來了兩個。

2. 請求外網(wǎng)資源

現(xiàn)在假設(shè)我們上面的 net1 這個網(wǎng)絡(luò)環(huán)境中想訪問外網(wǎng)。這里的外網(wǎng)是指的虛擬網(wǎng)絡(luò)宿主機(jī)外部的網(wǎng)絡(luò)。

我們假設(shè)它要訪問的另外一臺機(jī)器 IP 是 10.153.*.*?,這個 10.153.*.*?后面兩段由于是我的內(nèi)部網(wǎng)絡(luò),所以隱藏起來了。你在實(shí)驗(yàn)的過程中,用自己的 IP 代替即可。

我們直接來訪問一下試試

#?ip?netns?exec?net1?ping?10.153.*.*
connect:?Network?is?unreachable

提示網(wǎng)絡(luò)不通,這是怎么回事?用這段報錯關(guān)鍵字在內(nèi)核源碼里搜索一下:

//file:?arch/parisc/include/uapi/asm/errno.h
#define?ENETUNREACH?229?/*?Network?is?unreachable?*/

//file:?net/ipv4/ping.c
static?int?ping_sendmsg(struct?kiocb?*iocb,?struct?sock?*sk,?struct?msghdr?*msg,
???size_t?len)

{
?...
?rt?=?ip_route_output_flow(net,?&fl4,?sk);
?if?(IS_ERR(rt))?{
??err?=?PTR_ERR(rt);
??rt?=?NULL;
??if?(err?==?-ENETUNREACH)
???IP_INC_STATS_BH(net,?IPSTATS_MIB_OUTNOROUTES);
??goto?out;
?}
?...
out:?
?return?err;?
}

在 ip_route_output_flow 這里的返回值判斷如果是 ENETUNREACH 就退出了。這個宏定義注釋上來看報錯的信息就是 “Network is unreachable”。

這個 ip_route_output_flow 主要是執(zhí)行路由選路。所以我們推斷可能是路由出問題了,看一下這個命名空間的路由表。

#?ip?netns?exec?net1?route?-n
Kernel?IP?routing?table
Destination?????Gateway?????????Genmask?????????Flags?Metric?Ref????Use?Iface
192.168.0.0?????0.0.0.0?????????255.255.255.0???U?????0??????0????????0?veth1

怪不得,原來 net1 這個 namespace 下默認(rèn)只有 192.168.0.* 這個網(wǎng)段的路由規(guī)則。我們 ping 的 IP 是 10.153.*.*?,根據(jù)這個路由表里找不到出口。自然就發(fā)送失敗了。

我們來給 net 添加上默認(rèn)路由規(guī)則,只要匹配不到其它規(guī)則就默認(rèn)送到 veth1 上,同時指定下一條是它所連接的 bridge(192.168.0.1)。

#?ip?netns?exec?net1?route?add?default?gw?192.168.0.1?veth1?

再 ping 一下試試。

#?ip?netns?exec?net1?ping?10.153.*.*?-c?2
PING?10.153.*.*?(10.153.*.*)?56(84)?bytes?of?data.

---?10.153.*.*?ping?statistics?---
2?packets?transmitted,?0?received,?100%?packet?loss,?time?999ms

額好吧,仍然不通。上面路由幫我們把數(shù)據(jù)包從 veth 正確送到了 bridge 這個網(wǎng)橋上。接下來網(wǎng)橋還需要 bridge 轉(zhuǎn)發(fā)到 eth0 網(wǎng)卡上。所以我們得打開下面這兩個轉(zhuǎn)發(fā)相關(guān)的配置

#?sysctl?net.ipv4.conf.all.forwarding=1
#?iptables?-P?FORWARD?ACCEPT

不過這個時候,還存在一個問題。那就是外部的機(jī)器并不認(rèn)識 192.168.0.* 這個網(wǎng)段的 ip。它們之間都是通過 10.153.*.*?來進(jìn)行通信的。設(shè)想下我們工作中的電腦上沒有外網(wǎng) IP 的時候是如何正常上網(wǎng)的呢?外部的網(wǎng)絡(luò)只認(rèn)識外網(wǎng) IP。沒錯,那就是我們上面說的 NAT 技術(shù)。

我們這次的需求是實(shí)現(xiàn)內(nèi)部虛擬網(wǎng)絡(luò)訪問外網(wǎng),所以需要使用的是 SNAT。它將 namespace 請求中的 IP(192.168.0.2)換成外部網(wǎng)絡(luò)認(rèn)識的 10.153.*.*,進(jìn)而達(dá)到正常訪問外部網(wǎng)絡(luò)的效果。

#?iptables?-t?nat?-A?POSTROUTING?-s?192.168.0.0/24?!?-o?br0?-j?MASQUERADE

來再 ping 一下試試,歐耶,通了!

#?ip?netns?exec?net1?ping?10.153.*.*
PING?10.153.*.*?(10.153.*.*)?56(84)?bytes?of?data.
64?bytes?from?10.153.*.*:?icmp_seq=1?ttl=57?time=1.70?ms
64?bytes?from?10.153.*.*:?icmp_seq=2?ttl=57?time=1.68?ms

這時候我們可以開啟 tcpdump 抓包查看一下,在 bridge 上抓到的包我們能看到還是原始的源 IP 和 目的 IP。

再到 eth0 上查看的話,源 IP 已經(jīng)被替換成可和外網(wǎng)通信的 eth0 上的 IP 了。

至此,容器就可以通過宿主機(jī)的網(wǎng)卡來訪問外部網(wǎng)絡(luò)上的資源了。我們來總結(jié)一下這個發(fā)送過程

3. 開放容器端口

我們再考慮另外一個需求,那就是把在這個命名空間內(nèi)的服務(wù)提供給外部網(wǎng)絡(luò)來使用。

和上面的問題一樣,我們的虛擬網(wǎng)絡(luò)環(huán)境中 192.168.0.2 這個 IP 外界是不認(rèn)識它的。只有這個宿主機(jī)知道它是誰。所以我們同樣還需要 NAT 功能。

這次我們是要實(shí)現(xiàn)外部網(wǎng)絡(luò)訪問內(nèi)部地址,所以需要的是 DNAT 配置。DNAT 和 SNAT 配置中有一個不一樣的地方就是需要明確指定容器中的端口在宿主機(jī)上是對應(yīng)哪個。比如在 docker 的使用中,是通過 -p 來指定端口的對應(yīng)關(guān)系。

#?docker?run?-p?8000:80?...

我們通過如下這個命令來配置 DNAT 規(guī)則

#?iptables?-t?nat?-A?PREROUTING??!?-i?br0?-p?tcp?-m?tcp?--dport?8088?-j?DNAT?--to-destination?192.168.0.2:80

這里表示的是宿主機(jī)在路由之前判斷一下如果流量不是來自 br0,并且是訪問 tcp 的 8088 的話,那就轉(zhuǎn)發(fā)到 192.168.0.2:80 。

在 net1 環(huán)境中啟動一個 Server

#?ip?netns?exec?net1?nc?-lp?80

外部選一個ip,比如 10.143.*.*, telnet 連一下 10.162.*.* 8088 試試,通了!

#?telnet?10.162.*.*?8088
Trying?10.162.*.*...
Connected?to?10.162.*.*.
Escape?character?is?'^]'.

開啟抓包,?# tcpdump -i eth0 host 10.143.*.*??梢娫谡埱蟮臅r候,目的是宿主機(jī)的 IP 的端口。

但數(shù)據(jù)包到宿主機(jī)協(xié)議棧以后命中了我們配置的 DNAT 規(guī)則,宿主機(jī)把它轉(zhuǎn)發(fā)到了 br0 上。在 bridge 上由于沒有那么多的網(wǎng)絡(luò)流量包,所以不用過濾直接抓包就行,# tcpdump -i br0。

在 br0 上抓到的目的 IP 和端口是已經(jīng)替換過的了。

bridge 當(dāng)然知道 192.168.0.2 是 veth 1。于是,在 veth1 上監(jiān)聽 80 的服務(wù)就能收到來自外界的請求了!我們來總結(jié)一下這個接收過程

三、總結(jié)

現(xiàn)在業(yè)界已經(jīng)有很多公司都遷移到容器上了。我們的開發(fā)寫出來的代碼大概率是要運(yùn)行在容器上的。因此深刻理解容器網(wǎng)絡(luò)的工作原理非常的重要。這有這樣將來遇到問題的時候才知道該如何下手處理。

本文開頭我們先是簡單介紹了 veth、bridge、namespace、路由、iptables 等基礎(chǔ)知識。Veth 實(shí)現(xiàn)連接,bridge 實(shí)現(xiàn)轉(zhuǎn)發(fā),namespace 實(shí)現(xiàn)隔離,路由表控制發(fā)送時的設(shè)備選擇,iptables 實(shí)現(xiàn) nat 等功能。

接著基于以上基礎(chǔ)知識,我們采用純手工的方式搭建了一個虛擬網(wǎng)絡(luò)環(huán)境。

這個虛擬網(wǎng)絡(luò)可以訪問外網(wǎng)資源,也可以提供端口服務(wù)供外網(wǎng)來調(diào)用。這就是 Docker 容器網(wǎng)絡(luò)工作的基本原理。

整個實(shí)驗(yàn)我打包寫成一個 Makefile,放到了這里:https://github.com/yanfeizhang/coder-kung-fu/tree/main/tests/network/test07

最后,我們再擴(kuò)展一下。今天我們討論的問題是 Docker 網(wǎng)絡(luò)通信的問題。Docker 容器通過端口映射的方式提供對外服務(wù)。外部機(jī)器訪問容器服務(wù)的時候,仍然需要通過容器的宿主機(jī) IP 來訪問。

在 Kubernets 中,對跨主網(wǎng)絡(luò)通信有更高的要求,要不同宿主機(jī)之間的容器可以直接互聯(lián)互通。所以 Kubernets 的網(wǎng)絡(luò)模型也更為復(fù)雜。

瀏覽 58
點(diǎn)贊
評論
收藏
分享

手機(jī)掃一掃分享

分享
舉報
評論
圖片
表情
推薦
點(diǎn)贊
評論
收藏
分享

手機(jī)掃一掃分享

分享
舉報

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 久久网一区| 超碰人人网| 婷婷在线影院| 欧美美女视频网站| 五月丁香综合网| 亚洲一级AV| 爱爱免费看片| 日韩无码精品一区| 亚洲国产av电影| 无码精品一区二区三区在线| 搡BBBB搡BBB搡我瞎了| 日韩亚洲视频| 色色色热| 亚洲无码在线精品| 国产黄色片网站| 黄色视频免费在线观看| 中文字幕一区二区三区精华液| 国产三级在线观看视频| 亚洲免费a| 日韩AV网站在线观看| 最近中文字幕在线视频| 丁香五月网| 成人特级毛片全部免费播放| 中文在线a∨在线| 91人妻日韩人妻无码| 女人18片毛片60分钟翻译| 欧美不卡在线播放| 鸡巴网站| 97人人爽人人爽人人人| 尤物精品| 在线观看免费黄色| 午夜第一页| 操逼视频91| 无码国产传媒精品一区| 久久香蕉网| 黄色亚洲| 先锋影音AV资源网| 久久免费黄色| 色999日韩| 麻豆视频一区二区三区| 秋霞理伦| 国产又粗又猛又黄又爽无遮挡| 欧美AAAAAA视频| 99在线免费观看视频| 99免费在线观看| 成人无码一区二区三区| 日韩AV一二三| 成人午夜福利高清视频| jlzzzjlzzz国产免费观看| 大香蕉大香蕉免费网| 成人午夜A片免费看| 日韩人妻无码一区二区三区中文| 插进去综合网| 国产成人AⅤ| A视频在线观看| 中文字幕不卡视频| va在线| 国产成人自拍视频在线观看| 岛国电影av| 啪啪啪AV| 精品久久三级片| 久久久电影| 亚洲精品无码在线观看| 无码内射视频| 久久久久久久久久久高清毛片一级| 日本一级黄色电影| 一区二区三区四区免费观看| 人妻人人澡| 亚洲理论视频| 婷婷在线电影| 狠狠躁日日躁夜夜躁A片小说免费| 亚洲人妻有码| 新BBWBBWBBWBBW| 动漫人物插画动漫人物的视频软件 | 日韩无码黄色电影| 黄色九九| 99re2| 夜夜骚| 手机在线小视频| 国产操B视频| 嫩BBB嫩BBB嫩BBB| 中文字幕亞洲高清手機版第617| 亚洲人在线| 日韩成人黄色电影| 欧美精品日韩在线观看| 国产视频福利在线| 91视频www| 超碰在线视| 亚洲1区| 日韩大鸡巴| 国产午夜精品一区二区三区牛牛| 97超碰碰碰| 亚洲精品成人AV| 日韩毛片一区二区| 天天A片| 亚洲欧美日韩在线| 91丨PORN首页| 国产丝袜久久| 亚洲午夜久久| 躁BBB躁BBB躁BBBBBB日视频| 国产黄色一级电影| 精品久久久久久亚洲| 亚洲无码久久网| 人成视频免费观看| 性猛交AAAA片免费观看直播| 另类综合激情| 99天堂网| 91无码人妻精品一区二区三区四| 欧美一级片免费观看| 伊人久久大香蕉国产| 亚洲日本中文字幕在线| 无码三级午夜久久人妻| 天天日天天操天天爽| 无码在线专区| 欧美成人电影在线观看| 晚上碰视频| 黄色毛片在线| 国产在线高清| 久久久久久久久久成人永久免费视频 | 538在线视频| 波多野结衣视频网站| 亚洲高清视频在线观看| 91精品国产成人观看| 激情一区| 阿拉伯三级片| 欧美自拍一区| 特级黄色A片| 日韩黄色激情| 国产精品国产三级国产AⅤ中文| 色欲av网站| 欧美精品乱码99久久蜜桃| 成人不卡视频| 蜜臀久久99精品久久久久酒店更新时间 | 成人一区二区三区| caobi999| 99热在线中文字幕| 免费观看黄色在线视频| 激情小说在线观看| 色图15p| 中文字幕高清| 极品毛片| 91内射视频| 三级片无码视频| av不卡在线| 豆花成人社区,视频| 水蜜桃视频在线观看| 成人视频网| 一道本一区二区三区免费视频| 三级无码av| 777国产盗摄偷窥精品0000| 欧美日韩国产在线| 天天干天天日天天干天天日| 久艹大香蕉| 欧美精品福利| 在线观看日韩AV| 婷婷色在线视频| 免费毛片+一区二区三区| 97久久精品国产熟妇高清网| 久久久一区二区| 天天躁狠狠躁夜躁2024| 成人视频观看| a天堂在线| 婷婷色六月| 国产黄色视频网站在线观看| 国产激情啪啪| 97碰碰碰| 人妻在线观看| 久久嫩草精品久久久久精| av大片在线观看| 91麻豆国产视频| 蜜桃人妻无码AV天堂三区| 亚洲无码人妻视频| 无码秘人妻一区二区三-百度| 一级欧美视频| 一级免费视频| 97人妻精品黄网站| 亚洲视频在线观看播放| www激情| 超碰77| 看一级黄色片| 91成人福利| av高清无码| 中文字幕高清在线中文字幕中文字幕| 日韩啪啪片| 97精品超碰一区二区三区| 亚洲免费看黄| 亚洲日韩免费视频| 青青草激情视频| 色天堂影院| 精品久久久久久AV2025| 有免费的欧美操逼视频吗| 99久久丫e6| 超碰在线人人| 欧美淫乱视频| 日产久久视频| 天天日很很操| 国产91嫩草乱婬A片2蜜臀| 天天色粽合合合合合合合| 亚洲在线网站| 中文字幕在线精品| 91AV在线播放| 亚洲va欧美va天堂v国产综合| 一级内射片在线网站观看| 免费内射| 亚洲va视频| 先锋资源av| 高清欧美日韩第一摸| 欧美熟女一区| 久久久久久伊人| 久久综合五月天| 伊人久久大香线蕉av一区| 无码精品一区| 三级理论片| 蜜臀久久99久久久久久宅男| 国产噜噜噜噜久久久久久久久| 69AV无码| 久久人妻熟女中文字幕av蜜芽| 青榴视频免费观看| 91大神精品| 黑人巨大翔田千里AⅤ| 91色在线| 成人777| 西西444大胆无码视频| 少妇厨房愉情理伦BD在线观| www.日本黄色视频| 亚洲秘无码一区二区三区,| 人人爱人人操| 激情五月天av| 艹逼视频在线观看| 色呦呦中文字幕| 婷婷导航| 欧美成综合| 国产三级网址| 四虎成人视频| 国产欧美一区二区三区视频| 亚洲天堂在线免费观看视频| 国产丝袜在线| 色婷婷狠狠| 辽宁模特张雪馨视频最新| jizz18日本| 国产欧美黄片| 91精品国自产在线观看| 亚洲秘AV无码一区二区qq群| 躁BBB躁BBB躁BBBBBB日视频 | v在线| 久久久一区二区| 日韩一区二区三区在线视频| 尿在小sao货里面好不好| 日本高清黄色视频| 欧美三级在线| 日韩在线免费看| 日韩欧美操| 国产无码高清视频| 亚洲国产精品欧美久久| 亚洲免费看黄| 无码人妻精品一区二区三| 国产激情在线观看| 97播播| 91福利在线视频| 伊人网成人| 免费AV播放| 亚洲插菊花综合网| 东京热视频一区| 欧美A级视频在线观看| 成人小说亚洲一区二区三区| 情侣av| 国产xxxxx| 337P大胆粉嫩银噜噜噜| 黄网免费| 午夜天堂精品久久久久| 青青激情视频| 亚洲人妻在线播放| 免费看欧美成人A片无码| 美女裸体视频网站| 在线免费看黄视频| 欧美熟妇精品一级A片视色| 激情AAA| 欧美国产高清| 操逼网站免费观看| 国产女人精品视频| 成人免费网站在线| 国产精品国产成人国产三级| 欧美成人一区二区三区片| 色色激情五月天| 狠狠干狠狠撸| 婷婷激情五月天丁香| 日本AA片视频| 99久久精品国产一区色| 美国高清无码| 北京熟妇搡BBBB搡BBBB| 久久精品免费观看| 国产欧美一区二区三区特黄手机版| 欧美精品在线观看视频| 亚洲日韩中文字幕| 超碰8| 毛片h| 天堂网视频| 国产免费一区二区三区免费视频| 一区二区三区四区成人| 影音先锋av资源在线| 午夜成人无码| 亚洲精品免费观看| 精品中文一区二区三区| 台湾毛片| 久久69| 亚洲色香蕉| 久草视| 土耳其电影《爱与罚》| 中文字幕在线成人| 波多野结衣无码AV在线| 久久精品片| 99久久婷婷国产综合精品hsex | 午夜人妻AV| 亚洲欧洲中文字幕| 国产人妻精品一区二区三区不卡 | 日韩乱轮小说与视频| 夜夜av| 奇米狠狠干| 欧美草比| 国产熟女在线| 男女日皮的视频| 都市激情亚洲| 精品乱码一区| 日韩无码91| 亚洲成人视频免费在线观看| 欧美精品久久久久久久多人混战| 男女一区二区三区| 在线AⅤ| 一级做a视频| 国产精品视频无码| 久草在线| 欧美性猛交XXXXⅩXX| 亚洲h| 国产日韩91| 熟妇人妻中文AV无码| 日本中出视频| 天天躁日日躁狠狠| 无码天堂| 国产成人午夜高潮毛片| 国产福利91精品一区二区三区| 国产成人午夜视频| 人人干人人操人人摸| 天堂网免费视频| 激情综合婷婷久久| 日韩精品视频在线| 丁香五月激情啪啪| 影音先锋av资源网站| 波多野结衣无码视频| 夜夜操夜夜撸| 无码人妻蜜桃| 免费黄色一级片| 热久久最新地址| 久久99精品久久久水蜜桃| 青青草大香蕉在线| 亚洲三级黄色| 国产香蕉视频免费| 欧美日韩毛片| 精品免费囯产| 久草手机视频在线观看| 久久亚洲中文字幕乱码| A天堂视频| 99re| 欧美A黄片| 久热伊人| 蜜臀久久99精品久久久久久婷婷| 五月丁香在线视频| 国产精品一色哟哟哟| 久久密| 黄片高清无码在线观看| 日产久久视频| 黄色一级片免费| 欧美另类视频| 亚洲成人精品一区| 日本视频一区二区三区| 天堂在线视频免费| 中文字幕在线播放视频| 日韩黄色在线视频| 午夜激情网站| 在线天堂999| 波多野结衣一区二区| 在线aaa| 九色PORNY国产成人蝌蚪| 欧美aⅴ| 国产黄色av| 四虎蜜桃| 午夜福利干B在线免费小视频| 久久婷五月天| 亚洲国产精品自在自线| 亚洲人成色777777无码| 中文字幕免| 亚洲无码不卡视频| 东方AV免费在线观看| 四虎高清无码| 国产一精品一aⅴ一免费| seseav| 日本在线免费视频| 人人草人人草| 国产a精品| 国产精品自拍视频| 欧美亚洲日韩一区| 人人操人人撸| 精品中文字幕视频| AV天堂亚洲| 日韩无码a| 色婷婷成人网| 91亚洲电影| 高清无码免费观看视频| 亚洲V| 欧洲亚洲在线| 欧美日韩国产不卡视频| 国产日韩欧美在线播放| 2020人妻中文字幕| 3D动漫精品啪啪一区二区下载 | 麻豆传媒一区二区| 亚洲丁香五月激情| 人人爱,人人操| 天天澡日日久| 99热欧美| 性爱小说视频| 按摩忍不住BD中文字幕| 久久久久久久久久8888| 成人精品二区| 18禁一区二区三区| 好男人WWW社区在线视频夜恋| 国产一级视频| 高h网站| 青娱亚洲| 久色国产| 无码电影在线播放| 中文字幕在线视频观看| 撒尿BBw搡BBwBBw| 性做久久久久久| 日本操逼网| 欧美成人性爱在线| 18禁黄网站| 色老板视频在线观看| 91一区二区在线观看| 免费无码成人片在线播放| 婷婷五月综合中文字幕| 欧美一级a| 久久婷婷综合网| 亚洲日韩精品欧美一区二区yw| 婷婷精品视频| 天天干天天射天天爽| 中国A级片| 免费看v片| 午夜美女福利视频| 日韩欧美视频| 视频在线一区| 三级日韩视频| 日韩黄色毛片| 一级性爽A√毛片| 天天搞搞| 足浴小少妇-88AX| 插插插菊花综合网| 精国产品一区二区三区A片| 精品偷拍视频| 国产和日韩中文字幕| 亚洲AV无码成人精品区大猫| 美女网站永久免费观看| 黄色一区二区三区| 伊人天天操| 91工厂露脸熟女| 日韩专区中文字幕| 成人AV电影在线观看| 青青草激情| 人人摸人人看人人草| gogogo高清在线观看免费直播中国 | 亚洲无码三级视频| 高清中字无码| 99热免费观看| 手机看片国产| 水果派成人播放无码| 在线观看你懂得| 亚洲欧美天堂| 最新国产毛片| 国产精品扒开腿做爽爽爽A片唱戏 中文字幕一区二区三区精华液 | 无码午夜| A国产| PORNY九色视频9l自拍| 无码国产精品一区二区| 草草久久久无码国产专区的优势| 亚洲一区2区| 夜夜夜夜撸| 久久久久国产一区二区三区| 国产7777| 99久久伊人| 性色a| 九九性爱网| 亚洲无码一区二区三区蜜桃| 亚洲日韩一区二区| 日韩欧美v| 国产精品一区二区在线播放| 天堂网址激情网址| 婷婷视频在线观看| 玖玖在线播放| 天天干少妇| 黄片网站免费| 亚洲精品911| 18成人网站在线观看| 91熊猫视频| 玖玖色综合| 日韩无码视频网站| 在线视频福利| 一区二区三区免费| 在线免费观看AV片| 国产三级网址| 亚洲AV久久无码| 无码视频在线| 国产91精品看黄网站在线观看| 日韩精品A片| 自拍毛片| 青青草手机视频| 91久久久久国产一区二区| 影音先锋91久久网| 狼友视频免费在线观看| 久久无码黄片| 这里只有精品视频| 亚洲精品内射| 躁BBB躁BBB躁BBBBB乃| 免费一级黄色电影| 久热福利视频| av乱伦小说| 国产欧美日本视频| 9118禁| 无码影音| 爱就色色网| 国产毛片18水真多18精品| 国产在线激情| 特级西西人体444.444人体聚色| 婷婷午夜精品久久久久久性色| 中文字幕免费一区| 国产精品123| 一级A黄色片| 人人操人人搞| 黄色一级大片在线免费看国产| 久久6热| 伊人大香蕉在线视频| 亚洲国产精品成人久久蜜臀| 精品久久免费视频| 91AV天天在线观看| 狼人伊人综合| 超碰日韩| 一道本av| 六月丁香婷| 三级片无码在线| 五月丁香激情六月| 高清无码毛片| 蜜臀久久久久久999| 91肏屄视频| 被黑人操| 91一区二区在线观看| 91精品又粗又猛又爽| 免费一级黄| 激情五月天黄色| 好逼天天有| 在线观看免费高清无码| 国产精品一麻了麻了| 黄片久久| 国产成人视频免费观看| 亚洲日韩欧美成人| 久久久久久久久久久久高清毛片一级 | 国产成人视频在线播放| 日韩欧美在线观看视频| 黑人丰满大荫蒂| 手机看片1024旧版| 乱伦视频91| 久久AV无码| 国产一区视频在线| 欧美成人精品无码网站| 中文字幕乱码人妻二区三区| 人成视频在线免费观看| 波多野结衣一级婬片A片免费下载| 蜜桃影院| 免费黄色小视频在线观看| 国产高清做爱免费在线视频| 麻豆AV96熟妇人妻| 亚洲aa| 91热热| 牛牛AV在线| 欧美色色综合| 亚洲日本一区二区三区| 2026无码视频| 婷婷色图| 人人爽人人干| 妻子互换被高潮了三次| 国产视频第一页| 国产丰满乱子伦无码| 国产3p绿帽骚妻视频| 高清无码不卡AV| 亚洲精品字幕| 久久九| 欧美午夜福利在线观看| 国产操美女| 黄色成人网址| 日本精品在线播放| 高清无码小视频| 国产成人精品国内自产拍免费看| 天堂网视频| 亚洲五月婷婷| 国产一区二区av| 狠狠操综合| 婷婷五月丁香花| 国产精品乱子伦一区二区三区视频 | 五月丁香色色| 伊人久久大香色综合久久| 国产午夜男女性爱| 婷婷五月天影院| 色色亚洲| 影音先锋国产资源| 波多野结衣国产| 国产黄色视频网站在线观看| 亚洲天堂大香蕉| 成人精品一区日本无码网站suv/| 国产在线你懂得| 日韩va亚洲va欧美va高清 | 2024男人天堂| 亚洲成a人无码| 91丨露脸丨熟女精品| 日韩99在线观看| 色视频在线观看| 日本不卡二区| 国产天堂在线| 国产理论片| 91人妻人人澡人人| 日本视频一区二区三区| 日韩AV一二三| 无码无码无码| 少妇搡BBBB搡BBB搡AA| 久久人妻精品| 97人人爽人人爽人人爽人人爽| 亚洲Av无码午夜国产精品色软件| 亚洲二区无码| 国产一毛a一毛a在线观看| 日韩中文字幕一区二区三区| 五月天激情午夜福利| 91青青草| 亚洲成人在线视频| 无码一级片| 亚洲天天操| 操碰97| 国产做受91一片二片老头| 自拍偷拍无码| 色色五月天婷婷| 九色PORNY9l原创自拍| 国产真实乱婬A片三区高清蜜臀| 色秘乱码一区二区三区唱戏| 波多野结衣无码高清视频| 91丨九色丨熟女新版| 大香蕉大香蕉视频网| 国产不卡在线视频| 五月丁香视频在线观看| 亚洲色操| 免费欧美黄色| 中字无码制服| 精品无码视频在线| 免费看一级高潮毛片| 久久人妻视频| 日本一级片免费看| 啊啊啊av| 伊人久久免费| 免费A片视频| 免费观看一级A片| 欧美AAA大片| 欧美午夜成人一区二区三区| 特黄aaaaaaaa真人毛片| 无码网址| 丰满大爆乳波霸奶| 大地影视中文第三页最新在线观看| 欧美精品区| 日本无码一区二区| 欧美一级做| 成人性爱视频网站| 亚洲欧美日韩久久| 特黄视频| 精品人妻在线| 免费黄色视频网址| 亚洲影音| 中国操逼电影| 亚洲爆乳无码一区二区三区| 老熟女痒到不行-ThePorn| 91色视频在线观看| 国内精品久久久久久久久98| 久久免费黄色| 无码中文暮| 特黄无码| 亚洲视频中文字幕在线观看| 亚洲777| 操逼网123首页| 九九精品视频在线观看| 成人精品一区二区三区| 日本親子亂子倫XXXX| 亚久久| 伊人干综合| 五月丁香人妻| av天堂中文在线| 蜜桃视频在线观看18| 亚洲人人18XXX—20HD| 亚洲va中文字幕| 北条麻妃无码在线| 亚州视频在线观看| 国产成人亚洲综合A∨婷婷| 色就是色欧美成人网| 欧美国产第一页| 亚洲高清无码中文字幕| 亚洲乱码国产乱码精品天美传媒| 日韩欧美中文字幕公布| 日韩免费一区| 亚洲天堂在线观看视频网站| 欧美性色网| 娇小,学生,高潮,videos| 二区三区视频| 欧美sese| 成人无码自拍| 中文有码视频| 青青草无码在线视频| 四虎成人电影| 久草福利在线| 国产美女免费视频| 国产精品爽爽久久久久| 大香蕉伊人成人| 国产AV小电影| 日本AI高清无码在线观看网址| 日韩性爱av| 青青伊人网| 激情视频在线播放| 99色综合| 中日韩中文字幕一区二区区别| 国产操逼电影| 国产激倩都市一区二区三区欧美| 影音先锋亚洲AV| 无码视频一区二区三区| 黄一级| 群交无码| 欧美成人aaa| 中文字幕av第一页| 四川少妇BBB凸凸凸BBB安慰我| 久久久久99精品成人片三人毛片| 啪啪啪免费网站| 2014av天堂网| 无码中文字幕高清| 喷潮视频| 中文字幕网站在线观看| 一本高清无码| 亚洲天堂电影网| 污网址| 无码在线观看免费| 色77777| 日产电影一区二区三区| 精品字幕| 亚洲无码不卡视频| 国产1区在线观看| 天天爽视频| www.有码99| 啪啪网站免费| 激情人妻网站| 国产高清无码免费| 中文一线二线视频| 亚洲黄色AV| 色婷婷18禁| а√天堂中文最新版8| 午夜福利大香蕉| 欧美成人一区二区三区片| 天天干天天日天天色| 天天澡日日久| 中文字幕国产视频| 日韩在线中文字幕| 欧美手机在线| 夜夜撸天天干| 夜夜骚| 古装一级无遮挡A片| 在线成人毛片| 夜夜操夜夜爽| 草逼动态图| 亚洲色逼图片| 午夜网页| 一区二区av在线| 五月综合激情| 亚洲AV无码秘翔田| 亚洲AVA| 欧美三级片在线视频| 日韩AV无码高清| 日韩激情在线| 伊人精品在线| av大片在线观看| 中文字幕一区二区久久人妻| 欧美一级a视频免费放| 五月丁香久久| 亚洲成人久久久| 老司机午夜免费精品视频| www色色| 99国产热| 翔田千里53歳在线播放| 日韩欧美色图| 丰满人妻一区二区三区视频54| 中文大香蕉视频| 成人免费黄色| 农村三级片| 在线操B视频| 性生活毛片| 99精品无码视频| 中字av| 亚洲精品欧美| 精品乱伦视频| 日韩v亚洲| 3级毛片| 老女人日逼视频| 国产SM视频| mm131亚洲国产精品久久| 一本色道久久综合亚洲精品小说| 黑人亚洲娇小videos∞| 日韩无码砖区| 成人三级av| 97国产精品人人爽人人做| 天天干天天射天天| 久热精品视频| 2019天天干| 一级少女免费播放电视剧韩剧TV| 五月天亚洲激情| 东北毛片| 波多野结衣无码高清视频| 国产精品一区二区免费| 中文字幕永久在线5| 国产日皮视频| 极品一线天小嫩嫩真紧| 婷婷成人在线| 91大神在线免费看| 亚洲中文AV| 亚洲www在线观看| 午夜福利在线播放| 无码伦理电影| 五月婷婷影院| 国产综合久久久7777777| 久久伊思人在| 免费观看黄色一级片| 特级西西人体444WWw高清大胆| 口爆吞精在线观看| 在线免费看黄网站| 激情国产精品| 欧美特级黄片| 99视频网站| 免费在线看a| 色婷婷中文| 青青草性爱| 欧美熟妇擦BBBB擦BBBB| 艹b视频在线观看| 91视频在线观看| 日韩无码影院| 黄色资源在线观看| 婷婷久久亚洲| 国产精品午夜福利视频| 特级西西444WWW高清| 五月天综合在线| 国产超级无码高清在线视频观看| 亚洲国产精品一区二区三区| 在线一区| 91久久久久| 成人网站在线免费看| 亚洲中文字幕免费| 91在线无码精品秘国产| 俺来也俺去也www色官网| 日产精品久久久一区二区| 91综合视频在线播放| 国产区在线视频| 亚洲高清免费视频| 一级欧美视频| 国产小视频在线播放| 欧美亚洲日韩在线观看| 国产精品一级a毛视频| 欧美色逼| a在线观看免费| 色色激情五月天| 国产精品成人免费| 亚洲三级国产| 人妻无码HEYZO少妇精品| 国产黄色视频在线观看| 日韩黄色视频| 国产黄色免费网站| 泄火熟妇2-ThePorn| 水果派AV| 欧美激情网址| 在线视频亚洲| 久久免费视频精品| 国产三级午夜理伦三级| 亚洲精品久久久久avwww潮水| 日本精品人妻| 夜夜操天天日| 俺来俺去www色官网| 国产精品日韩高清北条麻衣 | 99精品免费视频| 亚洲特黄| 日韩视频免费在线观看| 婷婷五月天激情四射| 日韩一区二区三区在线| 黄片免费看| 成人午夜免费视频| 色综合色| 欧美成人网站在线观看| 婷婷六月天| 操逼免费观看|