精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

認識一下容器網(wǎng)絡接口 CNI

開發(fā) 前端
這篇學習了 CNI 規(guī)范的內(nèi)容、網(wǎng)絡插件的執(zhí)行流程,對 CNI 抽象的網(wǎng)絡管理接口有了大致的了解。

在最前,周末寫到這篇的時候我就發(fā)現(xiàn)可能是給自己挖了很大的坑,整個 Kubernetes 網(wǎng)關相關的內(nèi)容會非常復雜且龐大。

深入探索 Kubernetes 網(wǎng)絡模型和網(wǎng)絡通信

認識一下容器網(wǎng)絡接口 CNI(本篇)

源碼分析:從 kubelet、容器運行時看 CNI 的使用

從 Flannel 學習 Kubernetes VXLAN 網(wǎng)絡

Cilium CNI 與 eBPF

...

看自己能學到哪一步~


在 《深入探索 Kubernetes 網(wǎng)絡模型和網(wǎng)絡通信》 文章中,我們介紹了網(wǎng)絡命名空間(network namespace) 如何在 Kubernetes 網(wǎng)絡模型中工作,通過示例分析 pod 間的流量傳輸路徑。整個傳輸過程需要各種不同組件的參與才完成,而這些組件與 pod 相同的生命周期,跟隨 pod 的創(chuàng)建和銷毀。容器的維護由 kubelet 委托給容器運行時(container runtime)來完成,而容器的網(wǎng)絡命名空間則是由容器運行時委托網(wǎng)絡插件完成。

創(chuàng)建 pod(容器)的網(wǎng)絡命名空間

創(chuàng)建接口

創(chuàng)建 veth 對

設置命名空間網(wǎng)絡

設置靜態(tài)路由

配置以太網(wǎng)橋接器

分配 IP 地址

創(chuàng)建 NAT 規(guī)則

...

上篇我們也提到不同網(wǎng)絡插件對 Kubernetes 網(wǎng)絡模型有不同的實現(xiàn),主要集中在跨節(jié)點的 pod 間通信的實現(xiàn)上。用戶可以根據(jù)需要選擇合適的網(wǎng)絡插件,這其中離不開 CNI(container network interface)。這些網(wǎng)絡插件都實現(xiàn)了 CNI 標準,可以與容器編排系統(tǒng)和運行時良好的集成。

圖片runtime-with-cni

CNI 是什么

CNI 是 CNCF 下的一個項目,除了提供了最重要的 規(guī)范[1] 、用來 CNI 與應用集成的 庫[2]、實行 CNI 插件的 CLI `cnitool`[3],以及 可引用的插件[4]。本文發(fā)布時,最新版本為 v1.1.2。

CNI 只關注容器的網(wǎng)絡連接以及在容器銷毀時清理/釋放分配的資源,也正因為這個,即使容器發(fā)展迅速,CNI 也依然能保證簡單并被 廣泛支持[5]。

CNI 規(guī)范

CNI 的規(guī)范涵蓋了以下幾部分:

網(wǎng)絡配置文件格式

容器運行時與網(wǎng)絡插件交互的協(xié)議

插件的執(zhí)行流程

將委托其他插件的執(zhí)行流程

返回給運行時的執(zhí)行結果數(shù)據(jù)類型

1. 網(wǎng)絡配置格式

這里貼出規(guī)范中的配置示例,規(guī)范[6] 中定義了網(wǎng)絡配置的格式,包括必須字段、可選字段以及各個字段的功能。示例使用定義了名為 dbnet? 的網(wǎng)絡,配置了插件 bridge? 和 tuning,這兩個插件。

CNI 的插件一般分為兩種:

接口插件(interface plugin):用來創(chuàng)建網(wǎng)絡接口,比如示例中的bridge。

鏈式插件(chained):用來調(diào)整已創(chuàng)建好的網(wǎng)絡接口,比如示例中的tuning。

{
"cniVersion": "1.0.0",
"name": "dbnet",
"plugins": [
{
"type": "bridge",
// plugin specific parameters
"bridge": "cni0",
"keyA": ["some more", "plugin specific", "configuration"],

"ipam": {
"type": "host-local",
// ipam specific
"subnet": "10.1.0.0/16",
"gateway": "10.1.0.1",
"routes": [
{"dst": "0.0.0.0/0"}
]
},
"dns": {
"nameservers": [ "10.1.0.1" ]
}
},
{
"type": "tuning",
"capabilities": {
"mac": true
},
"sysctl": {
"net.core.somaxconn": "500"
}
},
{
"type": "portmap",
"capabilities": {"portMappings": true}
}
]
}

2. 容器運行時與網(wǎng)絡插件交互的協(xié)議

CNI 為容器運行時提供 四個不同的操作[7]:

ADD - 將容器添加到網(wǎng)絡,或修改配置

DEL - 從網(wǎng)絡中刪除容器,或取消修改

CHECK - 檢查容器網(wǎng)絡是否正常,如果容器的網(wǎng)絡出現(xiàn)問題,則返回錯誤

VERSION - 顯示插件的版本

規(guī)范對操作的輸入和輸出內(nèi)容進行了定義。主要幾個核心的字段有:

CNI_COMMAND:上面的四個操作之一

CNI_CONTAINERID:容器 ID

CNI_NETNS:容器的隔離域,如果用的網(wǎng)絡命名空間,這里的值是網(wǎng)絡命名空間的地址

CNI_IFNAME?:要在容器中創(chuàng)建的接口名,比如 eth0

CNI_ARGS:執(zhí)行參數(shù)時傳遞的參數(shù)

CNI_PATH:插件可執(zhí)行文件的朝招路徑

3. 插件的執(zhí)行流程

CNI 將容器上網(wǎng)絡配置的 ADD、DELETE? 和 CHECK 操作,成為附加(attachment)。

容器網(wǎng)絡配置的操作,需要一個或多個插件的共同操作來完成,因此插件有一定的執(zhí)行順序。比如前面的示例配置中,要先創(chuàng)建接口,才能對接口進行調(diào)優(yōu)。

拿 ADD? 操作為例,首先執(zhí)行的一般是 interface plugin?,然后在執(zhí)行 chained plugin?。以前一個插件的 輸出 PrevResult? 與下一個插件的配置會共同作為下一個插件的 輸入。 如果是第一個插件,會將網(wǎng)絡配置作為輸入的一部分。插件可以將前一個插件的 PrevResult? 最為自己的輸出,也可以結合自身的操作對 PrevResult? 進行更新。最后一個插件的輸出 PrevResult 作為 CNI 的執(zhí)行結果返回給容器運行時,容器運行時會保存改結果并將其作為其他操作的輸入。

DELETE? 的執(zhí)行與 ADD? 的順序正好相反,要先移除接口上的配置或者釋放已經(jīng)分配的 IP,最后才能刪除容器網(wǎng)絡接口。DELETE? 操作的輸入就是容器運行時保存的 ADD 操作的結果。

圖片cni-plugin-execution-flow

除了定義單次操作中插件的執(zhí)行順序,CNI 還對操作的并行操作、重復操作等進行了說明[8]。

4. 插件委托

有一些操作,無論出于何種原因,都不能合理地作為一個松散的鏈接插件來實現(xiàn)。相反,CNI 插件可能希望將某些功能委托給另一個插件。一個常見的例子是 IP 地址管理(IP Adress Management,簡稱 IPAM),主要是為容器接口分配/回收 IP 地址、管理路由等。

CNI 定義了第三種插件 -- IPAM 插件。CNI 插件可以在恰當?shù)臅r機調(diào)用 IPAM 插件,IPAM 插件會將執(zhí)行的結果返回給委托方。IPAM 插件會根據(jù)指定的協(xié)議(如 dhcp)、本地文件中的數(shù)據(jù)、或者網(wǎng)絡配置文件中 ipam 字段的信息來完成操作:分配 IP、設置網(wǎng)關、路由等等。

"ipam": {
"type": "host-local",
// ipam specific
"subnet": "10.1.0.0/16",
"gateway": "10.1.0.1",
"routes": [
{"dst": "0.0.0.0/0"}
]
}

5. 執(zhí)行結果

插件可以返回一下三種結果之一,規(guī)范對 結果的格式[9] 進行了定義。

Success:同時會包含PrevResult? 信息,比如 ADD? 操作后的 PrevResult 返回給容器運行時。

Error:包含必要的錯誤提示信息。

Version:這個是VERSION 操作的返回結果。

CNI 的庫是指 `libcni`[10],用于 CNI 和應用程序集成,定義了 CNI 相關的接口和配置。

type CNI interface {  
AddNetworkList(ctx context.Context, net *NetworkConfigList, rt *RuntimeConf) (types.Result, error)
CheckNetworkList(ctx context.Context, net *NetworkConfigList, rt *RuntimeConf) error
DelNetworkList(ctx context.Context, net *NetworkConfigList, rt *RuntimeConf) error
GetNetworkListCachedResult(net *NetworkConfigList, rt *RuntimeConf) (types.Result, error)
GetNetworkListCachedConfig(net *NetworkConfigList, rt *RuntimeConf) ([]byte, *RuntimeConf, error)

AddNetwork(ctx context.Context, net *NetworkConfig, rt *RuntimeConf) (types.Result, error)
CheckNetwork(ctx context.Context, net *NetworkConfig, rt *RuntimeConf) error
DelNetwork(ctx context.Context, net *NetworkConfig, rt *RuntimeConf) error
GetNetworkCachedResult(net *NetworkConfig, rt *RuntimeConf) (types.Result, error)
GetNetworkCachedConfig(net *NetworkConfig, rt *RuntimeConf) ([]byte, *RuntimeConf, error)

ValidateNetworkList(ctx context.Context, net *NetworkConfigList) ([]string, error)
ValidateNetwork(ctx context.Context, net *NetworkConfig) ([]string, error)
}

以添加網(wǎng)絡的部分代碼為例:

func (c *CNIConfig) addNetwork(ctx context.Context, name, cniVersion string, net *NetworkConfig, prevResult types.Result, rt *RuntimeConf) (types.Result, error) {  
...
return invoke.ExecPluginWithResult(ctx, pluginPath, newConf.Bytes, c.args("ADD", rt), c.exec)
}

執(zhí)行的邏輯簡單來說就是:

查找可執(zhí)行文件

加載網(wǎng)絡配置

執(zhí)行ADD 操作

結果處理

總結

這篇學習了 CNI 規(guī)范的內(nèi)容、網(wǎng)絡插件的執(zhí)行流程,對 CNI 抽象的網(wǎng)絡管理接口有了大致的了解。

下一篇將結合源碼的分析,了解 kubelet、容器運行時、CNI 網(wǎng)絡插件之間如何進行交互。

參考

https://www.tigera.io/learn/guides/kubernetes-networking/kubernetes-cni/

https://github.com/containernetworking/cni

https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/

參考資料

[1] 

規(guī)范: https://github.com/containernetworking/cni/blob/main/SPEC.md

[2] 

庫: https://github.com/containernetworking/cni/blob/main/libcni

[3] 

cnitool?: https://github.com/containernetworking/cni/blob/main/cnitool

[4] 

可引用的插件: https://github.com/containernetworking/plugins

[5] 

廣泛支持: https://github.com/containernetworking/cni/blob/main/README.md#who-is-using-cni

[6] 

規(guī)范: https://github.com/containernetworking/cni/blob/main/SPEC.md#section-1-network-configuration-format

[7] 

四個不同的操作: https://github.com/containernetworking/cni/blob/master/SPEC.md#cni-operations

[8] 

CNI 還對操作的并行操作、重復操作等進行了說明: https://github.com/containernetworking/cni/blob/main/SPEC.md#lifecycle--ordering

[9] 

結果的格式: https://github.com/containernetworking/cni/blob/main/SPEC.md#section-5-result-types

[10] 

libcni?: https://github.com/containernetworking/cni/tree/main/libcni

責任編輯:武曉燕 來源: 云原生指北
相關推薦

2022-09-08 13:58:39

Spring高并發(fā)異步

2019-11-28 10:40:45

Kafka架構KafkaConsum

2023-05-03 09:09:28

Golang數(shù)組

2024-05-27 00:00:00

AmpPHP非阻塞

2013-04-17 11:21:59

Windows PhoWindows Pho

2018-12-24 09:51:22

CPU天梯圖Inter

2023-05-29 08:32:40

JAVA重寫重載

2018-04-02 09:07:36

CIO

2020-10-15 07:13:53

算法監(jiān)控數(shù)據(jù)

2025-08-11 01:00:00

2020-09-25 19:53:39

數(shù)據(jù)

2021-12-27 10:25:55

CNI插件Linux

2020-04-26 09:59:00

黑客機器學習網(wǎng)絡安全

2023-06-30 08:27:20

2021-04-21 14:19:52

javaignalHandle接口

2019-06-24 09:57:39

網(wǎng)絡工具調(diào)試

2021-12-27 18:00:30

對象數(shù)組Java

2009-11-17 11:14:25

Oracle擴展

2025-01-10 11:07:28

2020-12-10 08:44:35

WebSocket輪詢Comet
點贊
收藏

51CTO技術棧公眾號

国产精品福利一区二区| 亚洲中字黄色| 亚洲成人激情在线| 国产无套内射久久久国产| 91免费在线| 福利视频网站一区二区三区| 国产精品99导航| 免费在线观看黄视频| 欧美理论在线播放| 亚洲电影免费观看| 亚洲一级片网站| 九九精品调教| 日本一二三四高清不卡| 国产精品加勒比| 在线观看中文字幕网站| 日韩亚洲精品在线| 欧美日本精品在线| 欧美激情精品久久久久久免费 | 欧美日韩免费高清一区色橹橹| 97中文字幕在线| 91在线观看| 久久久不卡网国产精品二区| 国产精品久久7| 国产欧美日韩综合精品一区二区三区| 国产欧美日韩一级| 久久久久久久久爱| 久久国产高清视频| 日本精品三区| 亚洲精品视频免费| 国产性猛交96| 日本久久伊人| 69p69国产精品| 亚洲国产成人va在线观看麻豆| 校园春色亚洲| 午夜国产精品一区| 日本欧美视频在线观看| 日本成人不卡| 一区二区三区资源| 糖心vlog在线免费观看| 国产黄色在线观看| 日韩理论片网站| 久久久国产精华液999999| 日本中文字幕视频在线| 中文字幕精品一区二区三区精品| 久久久久网址| 涩涩视频在线观看免费| 99久久久免费精品国产一区二区| 国产日韩欧美精品| 天堂а在线中文在线无限看推荐| 国产麻豆视频一区二区| 亚洲一区二区三区视频| 国产熟女精品视频| 国产成人综合亚洲91猫咪| 91久久夜色精品国产网站| 国产精品福利电影| 国产乱码精品一区二区三区av| 92国产精品久久久久首页 | 日韩视频在线观看视频| 日本欧美在线视频免费观看| 1024精品合集| 国产精品igao激情视频| 超碰97免费在线| 精品久久久久久| 国产精品97在线| 在线看欧美视频| 欧美日韩三级视频| 午夜诱惑痒痒网| av综合网站| 日韩国产激情在线| 日本一道本视频| 99欧美视频| 九九热这里只有精品免费看| 日本免费观看视| 日本特黄久久久高潮| 国产精品最新在线观看| 999久久久久| 成人av电影在线观看| 久久久久久久久久久久久9999| 国产一级在线| 一区二区三区中文字幕| 日本不卡在线观看视频| 日韩国产91| 亚洲国产成人精品一区二区| 国产jjizz一区二区三区视频| 午夜欧美在线| 97涩涩爰在线观看亚洲| 中文字幕无码乱码人妻日韩精品| 国产乱码精品一区二区三区忘忧草| 黑人另类av| 97电影在线看视频| 天天影视网天天综合色在线播放| 国产视频一区二区三区在线播放 | 在线播放一区二区三区| 欧美双性人妖o0| blacked蜜桃精品一区| 久久91亚洲精品中文字幕| 青草视频在线观看免费| 国产一区二区三区在线观看免费| 精品久久久久久亚洲| 日本中文字幕电影在线免费观看 | 丰满爆乳一区二区三区| 日韩大陆av| 精品亚洲一区二区三区四区五区| 糖心vlog免费在线观看| 视频一区在线视频| 国产精品有限公司| 黄色视屏免费在线观看| 色婷婷久久99综合精品jk白丝| 丰满少妇一区二区三区专区| 欧美一区电影| 2019最新中文字幕| www.黄色一片| 一区二区中文字幕在线| 精品久久久久久久免费人妻| 91蝌蚪精品视频| www国产91| 丰满人妻一区二区三区四区| 成人精品在线视频观看| 日韩精品一区二区三区电影| 欧美暴力调教| 亚洲精品视频网上网址在线观看| 免费观看一级视频| 国产精品一区二区在线看| 在线成人av电影| av一区在线| 亚洲开心激情网| 日韩精品乱码久久久久久| 国产九色精品成人porny| 一区二区在线不卡| 青娱乐极品盛宴一区二区| 亚洲香蕉伊综合在人在线视看| 亚洲天堂日韩av| 成人免费观看男女羞羞视频| 欧美日韩中文字幕在线播放| 9999精品免费视频| 精品国产区一区二区三区在线观看| 欧美视频xxxx| 国产精品免费观看视频| 欧美成人黄色网址| 日韩精品dvd| 国产精品视频大全| 97超碰人人在线| 欧美人狂配大交3d怪物一区| 操她视频在线观看| 久久精品72免费观看| 亚洲国产精品毛片| 国产福利91精品一区二区| 国产亚洲激情视频在线| 天天干天天插天天射| 欧美高清在线一区二区| 一本色道久久亚洲综合精品蜜桃| 第一会所亚洲原创| 成人两性免费视频| 成人短视频在线| 日韩精品一区二区三区视频播放| 欧美极品视频在线观看| 99re这里只有精品首页| 久久精品99国产| 欧美丝袜一区| 成人a视频在线观看| 1区2区在线观看| 日韩av在线天堂网| 国产免费a视频| 亚洲欧洲www| 亚洲成a人无码| 国产精品综合色区在线观看| 日本一区视频在线播放| 亚洲国产伊人| 欧美激情2020午夜免费观看| 亚洲 欧美 激情 另类| 91久久线看在观草草青青| 国产3级在线观看| 国产精品一级在线| 1024av视频| 成人午夜国产| 国产精品视频入口| 韩国精品主播一区二区在线观看| 日韩中文字幕在线| 人妻少妇一区二区三区| 日本韩国欧美一区二区三区| 国产精品国产三级国产传播| av亚洲产国偷v产偷v自拍| 99视频精品免费| 欧美黄色aaaa| 欧美成ee人免费视频| av在线播放一区二区| 97精品视频在线播放| 91九色在线porn| 亚洲黄色在线观看| 国产尤物视频在线观看| 精品久久久久久电影| 国产福利视频网站| 久久综合九色综合97_久久久 | 91在线porny国产在线看| 91国产精品视频在线观看| 黄色成人av网站| 日韩欧美99| 另类图片第一页| 成人黄色免费看| 高清不卡亚洲| 欧美黑人性猛交| 日本中文字幕在线观看| 亚洲男人天天操| 亚洲精品.www| 欧美群妇大交群中文字幕| 精品免费囯产一区二区三区| 亚洲激情图片小说视频| 一级二级黄色片| 91日韩一区二区三区| 性一交一黄一片| 理论片日本一区| 青青在线视频免费| 亚洲精品1区| 一本大道东京热无码aⅴ| 成人免费a**址| 老牛影视免费一区二区| 97久久综合区小说区图片区| 成人信息集中地欧美| 韩国精品主播一区二区在线观看| 97国产精品久久| 羞羞网站在线看| 精品国产一区二区三区在线观看 | 丝袜美腿综合| 国产精品免费区二区三区观看 | 日韩久久精品一区| 国产又粗又猛又色又| 欧美日韩在线播放三区四区| 日韩综合在线观看| 日韩欧美在线视频日韩欧美在线视频| 久久久久亚洲AV| 一区二区三区鲁丝不卡| 少妇高潮在线观看| 国产精品国产三级国产普通话蜜臀| 国产精品815.cc红桃| 91网站视频在线观看| 你懂的在线观看网站| 北岛玲一区二区三区四区| 欧美久久久久久久久久久| 国产成a人亚洲精品| 国产人妖在线观看| 成人免费三级在线| 欧美一级片黄色| 91欧美一区二区| 白白色免费视频| 亚洲国产精品成人久久综合一区| 天天摸日日摸狠狠添| 中国色在线观看另类| 少妇高潮惨叫久久久久| 国产精品久久久久婷婷二区次| 女人裸体性做爰全过| 亚洲三级在线看| 久操免费在线视频| 精品国产乱码久久久久酒店| 欧美男人亚洲天堂| 欧洲国产伦久久久久久久| 在线观看中文字幕2021| 91精品欧美一区二区三区综合在| 国产黄色av网站| 精品久久久久久久人人人人传媒| 天天操天天干天天舔| 国产视频精品自拍| 日韩欧美小视频| 欧美超级免费视 在线| 爱情岛亚洲播放路线| 浅井舞香一区二区| 欧美激情三区| 99久久精品免费看国产一区二区三区| 国产精品超碰| 日韩精品一区二区三区外面| 久久影院100000精品| www.男人天堂网| 国产精品久久久久久久久久妞妞| 色一情一乱一伦一区二区三区日本| 久久99国产精品免费网站| xxxxwww一片| 国产亚洲美州欧州综合国| 一级性生活免费视频| 亚洲图片一区二区| 波多野结衣视频在线看| 欧美一区二区久久| 国产在线视频福利| 欧美精品少妇videofree| 网友自拍亚洲| av资源站久久亚洲| 欧美综合在线视频观看| 日本大胆人体视频| 日韩av在线播放中文字幕| 亚洲AV无码久久精品国产一区| 91日韩精品一区| 欧美又粗又大又长| 91黄色激情网站| 国产成人手机在线| 在线观看国产成人av片| 蜜桃视频在线观看免费视频| 国产有码一区二区| 亚洲素人在线| 日韩小视频网站| 久久99精品久久久久| aaaaaav| 亚洲精品美国一| 中文字幕乱码在线观看| 亚洲国产精品va在线| 黄色网址在线免费观看| 青青草一区二区| jazzjazz国产精品麻豆| 中日韩在线视频| 日韩电影在线免费看| 捆绑裸体绳奴bdsm亚洲| 亚洲免费av网站| 中文字幕乱码无码人妻系列蜜桃| 日韩精品视频三区| yellow字幕网在线| 91亚洲精品丁香在线观看| 91偷拍一区二区三区精品| 久久精品免费网站| 91丝袜高跟美女视频| 国产在线欧美在线| 欧美一区二区三区在线电影| 自拍视频在线免费观看| 国产成人精品a视频一区www| 久久中文字幕导航| 国产精品www在线观看| 国产精品羞羞答答xxdd| 欧美a级片免费看| 欧美日韩一区三区| 成人一区二区不卡免费| 国产国语videosex另类| 宅男在线一区| 青青在线视频观看| 久久久综合视频| 91视频免费网址| 亚洲男人天堂2019| av电影一区| 麻豆传媒一区二区| 久久国产一二区| 精品少妇人妻一区二区黑料社区| 色综合婷婷久久| 黄色在线观看网| 国产精品久久久久久久久免费 | 久久久久久久91| 岛国成人av| 国产精品国产亚洲精品看不卡| 成人福利电影精品一区二区在线观看| 国产亚洲成人av| 亚洲国产成人久久综合| 日本а中文在线天堂| 免费国产在线精品一区二区三区| 久久aⅴ乱码一区二区三区| 亚洲精品国产91| 欧美日高清视频| 成人午夜在线影视| 国产成人av一区二区三区| 亚洲麻豆av| 国产成人福利在线| 欧美日韩视频在线一区二区| 成人黄色在线电影| 国产一区二区黄色| 首页国产欧美日韩丝袜| 蜜桃av.com| 日韩免费视频一区| 性欧美18xxxhd| 亚洲国产精品久久久久婷婷老年| 极品少妇一区二区三区精品视频| 欧美精品一区二区成人| 日韩av影院在线观看| 99久久婷婷国产综合精品首页 | 久久综合色综合| 日韩黄色av网站| 精品美女一区| 2022中文字幕| 国产日韩欧美一区二区三区综合| 一区二区精品视频在线观看| 色综合久久中文字幕综合网小说| 欧美自拍一区| 天天操天天摸天天爽| 日韩久久一区二区| 国产又爽又黄网站亚洲视频123| 国产精品wwwwww| 自拍偷拍欧美| 国产熟妇搡bbbb搡bbbb| 欧美日韩1234| 蜜桃视频m3u8在线观看| 伊人久久大香线蕉精品| 成人免费视频一区| 伊人成人在线观看| 久久免费视频网站| 色综合久久网| 亚洲精品在线视频免费观看| 欧美在线一二三四区| 美洲精品一卡2卡三卡4卡四卡| 欧美日韩在线一区二区三区| 国产麻豆91精品| 亚洲图片欧美日韩| 欧美精品福利在线| 日韩伦理视频| 91精品人妻一区二区三区蜜桃欧美| 欧美一激情一区二区三区| 欧美色网在线| 国产人妻777人伦精品hd| 日韩美女精品在线|