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

WebRTC:網絡架構與NAT工作原理

開發 前端
在這篇文章中,我們先來學習NAT的工作原理,探討不同類型的NAT網絡行為是如何影響點對點通信的,為后續理解WebRTC的NAT打洞(也稱為NAT穿透)和端到端建連做準備。

2023年下旬,OpenAI與Livekit的合作[1]在科技圈引起了不小的轟動。這兩家公司聯手,通過WebRTC技術和大型語言模型(LLM)的結合,使AI模型具有了看、聽和說話的能力[2]。這一舉動不僅彰顯了WebRTC在現代通信技術中的重要地位,也為我們揭示了AI與實時通信融合的無限可能。WebRTC技術在大流行后再一次進入技術人的視野,恰好在我們今年打造的產品中,WebRTC也是技術棧的核心。

WebRTC端到端實時通信的效果主要取決于兩個重要因素,一個通信質量,一個是音視頻編解碼質量。對于入門類文章來說,改進通信質量或音視頻編解碼質量還為時尚早,我們亟需了解的是其背后的原理。

在這篇文章以及后續的幾篇文章中,我們先來關注一下“WebRTC網絡通信”。我們會先了解一下WebRTC網絡架構,然后對WebRTC中的難點,諸如NAT打洞、基于信令與ICE的建連等做深入分析。

在這篇文章中,我們先來學習NAT的工作原理,探討不同類型的NAT網絡行為是如何影響點對點通信的,為后續理解WebRTC的NAT打洞(也稱為NAT穿透)和端到端建連做準備。

1. WebRTC網絡架構

我們知道WebRTC(Web Real-Time Communication)是一種支持網頁瀏覽器/應用進行端到端實時語音對話或視頻對話的技術,其中支持端到端建立連接和后續數據傳輸的網絡架構是十分重要的,這也是理解WebRTC技術棧的一個重點。下面是WebRTC網絡架構圖的示意圖:

圖片圖片

這個架構包含以下主要組件:

  • 瀏覽器/App:這是進行WebRTC的端(Peer),可以是瀏覽器,也可以是App。WebRTC API在瀏覽器中實現,使得web應用能夠直接訪問媒體設備和建立點對點連接。App也可以利用WebRTC的實現(比如Pion[4])與對端進行RTC通信。
  • 信令服務器(Signaling Server):雖然不是WebRTC標準的一部分,但對于WebRTC建立連接至關重要,任何non-trivial的基于WebRTC的系統都會有專屬的信令服務器,它會幫助通信雙方交換會話描述協議(SDP)信息和ICE候選地址。這個在使用Go和WebRTC data channel實現端到端實時通信[5]一文中介紹過,在后續的文章中還會有系統說明。
  • STUN服務器(Session Traversal Utilities for NAT):該服務器可以幫助客戶端發現自己的公網IP地址和端口,這個服務器是NAT打洞時所必須的。
  • TURN服務器(Traversal Using Relays around NAT):當通過常規方式點對點連接失敗時(通常是NAT打洞失敗),可以使用TURN服務器作為媒體數據的中繼服務器使用。兩端發送的數據都會要通過TURN的中繼才能轉發給對端。
  • ICE框架(Interactive Connectivity Establishment):綜合使用各種NAT打洞技術來協助兩端建立連接,這個我們會在后面文章中系統說明。

我們看到這個架構略有些復雜,但該架構允許WebRTC應用在復雜的網絡環境中建立直接的點對點連接,即使客戶端位于NAT或防火墻后面。

2. 網絡世界的真相:我們都在NAT后面

在理想的網絡世界中,每個設備都有一個唯一的公網IP地址,可以直接相互連接和通信。這種理想狀態下,網絡是完全開放和對等的,沒有任何障礙阻止設備之間的直接交互。

但現實情況卻很骨感,出于IPv4地址空間的限制(IPv4地址的數量不夠了)、網絡管理以及網絡安全的考慮,大多數設備都隱藏在NAT(網絡地址轉換)后面。

NAT(網絡地址轉換)技術于1994年由Egevang等人在RFC 1631[6]中提出,旨在作為緩解IPv4地址不足問題的臨時技術方案。通過將私有IP地址和端口映射到公共IP地址和端口,NAT使得在私有網絡中的設備可以使用公共地址(共享一個或多個)訪問互聯網。

NAT轉換示意圖(來自維基百科)NAT轉換示意圖(來自維基百科)

這種技術的出現大大緩解了IPv4地址的緊張狀況,并成為當時乃至現在(IPv6的推廣與使用未及預期)網絡地址管理的重要手段。不過,NAT技術的廣泛應用也意味著大部分設備只有私網IP,無法從外網直接訪問,這一定程度上限制了端到端的直接通信。另外,由于不同類型的NAT行為有所不同,進一步增加了端到端網絡連接的復雜性。

注:私網IP地址是指在局域網(LAN)中使用的IP地址,這些地址不能在公共互聯網(公網)中被路由。私網IP地址主要用于內部網絡中設備之間的通信,通常用于家庭、企業或組織的網絡。根據IETF的標準,私網IP地址的范圍包括(以CIDR(無類域間路由)格式表示):10.0.0.0/8、172.16.0.0/12和192.168.0.0/16。

于是便有了NAT打洞技術(NAT hole punching)。NAT打洞技術為在NAT環境中實現設備間直接通信提供了一種有效的解決方案,它允許位于不同NAT后面的設備建立直接的點對點(P2P)連接,而無需手工配置端口轉發。在P2P文件共享、VoIP通信、在線游戲、即時通信以及視頻會議系統等領域,NAT打洞都有著廣泛的應用。

不過,要理解NAT打洞,我們需要要先得弄清楚NAT的工作原理、主要的NAT類型以及它們的行為差異。

3. NAT的工作原理與主要類型的行為差異

我們先來看看NAT工作原理。

3.1 NAT的工作原理

網絡地址轉換(NAT)的核心工作原理還是比較好理解的,就是在請求數據包通過NAT設備時修改其源IP和源端口信息。以下圖為例,即將內網主機通過X1:x1發往外網主機Y1:y1的網絡請求中的源IP和源端口從X1:x1修改為X1':x1'后,再發給目的端點(Y1:y1)。NAT設備會維護一個映射表(也叫會話表),記錄X1:x1與X1':x1'的映射關系。當請求的應答包回來時(Y1:y1 -> X1':x1'),NAT設備將根據映射表將X1':x1'再替換回X1:x1,這樣應答包就可以正常回到X1:x1了。

圖片圖片

為了管理資源(每個NAT的對外端口數量有限),NAT設備會內置超時機制,它會為每個會話/映射設置一個生存時間(TTL)。如果在TTL內沒有新的數據包,這個映射會被刪除。

隨著NAT技術的演進,同時考慮到網絡管理和網絡安全因素,NAT設備出現了不同的映射表管理方式,與之相對應的就出現了不同的NAT類型與行為特征。接下來,我們就來看看NAT的主要類型、映射表的管理方式以及它們的行為差異。

注:NAT打洞的主流方式是通過UDP包,因此下面的關于NAT類型和行為的描述都是基于UDP的。UDP是面向數據報的傳輸層協議,相對于面向連接的TCP,它更加靈活,延遲更低,在實時性要求更高的場景,比如視頻會議、語音通信等。

3.2 NAT的主要類型

根據2003年RFC 3489[7]中對市面上NAT實現類型的歸納,NAT可以分為完全錐形(Full Cone)、受限錐形(Restricted Cone)、端口受限錐形(Port Restricted Cone)和對稱型(Symmetric)四種主要類型。下面我們分別來說一下這四種類型的NAT映射表構成以及行為特征。

3.2.1 完全錐型NAT

完全錐型是最寬松的NAT類型,它在NAT映射表中只存儲了一個四元組:(內網ip(internal_ip), 內網端口(internal_port), 映射ip(external_ip), 映射端口(external_port))。我們看下圖中的完全錐形類型的NAT::

圖片圖片

在上圖中,內部地址X1:x1被映射到了外部地址E:x1',所有從X1:x1發到外部的數據都由E:x1'向外發送。相應的外部應答(比如: Y1:y1 -> E:x1')的流量會在NAT設備上被轉換回到X1:x1的流量。

那么為什么這個類型的NAT會被稱為完全錐形呢?這就要從NAT設備對外部流量的限制來說了。對于NAT設備來說,一旦建立了X1:x1->E:x1'的映射規則,就好比X1在該NAT設備上“打了一個洞”,內部來自X1:x1的流量可以從該洞發送出去,但NAT設備是否允許外部流量從該洞回到X1:x1以及允許哪些流量從該洞返回到X1:x1就決定了該NAT的類型。

如果任何外部主機都可以通過上面的洞E:x1'向內部主機X1:x1發送數據包,那么這個NAT就是完全錐形。我們再用一副示意圖來說明一下完全錐形NAT的行為特點:

圖片圖片

這里故意將右側的外部主機排列成像圓錐的形狀,位于錐子范圍內的所有主機都能通過圖中的“洞”將數據包發到內部主機X1:x1上。

很顯然完全錐形NAT雖然管理簡單,也具有很好的開放性,但它在安全性上較弱,外部很容易利用NAT上的洞向內部主機上的服務發起攻擊。

為此,后面的幾種NAT都是為了增強NAT安全性的,而且一個比一個更嚴格,我們先來看受限錐形NAT。

3.2.2 受限錐型NAT

受限錐形NAT又被稱為IP受限錐型NAT,它在完全錐形NAT的映射表的基礎上,增加了“IP白名單(如下圖中的allowed_external_ips)”,下面是受限錐形NAT的示意圖:

圖片圖片

我們看到:X1主機通過X1:x1在向Y1:y1和Y2:y2分別發起請求后,NAT設備上便有了一條映射規則(一個洞):X1:x1被映射到了外部地址E:x1',但映射表也記錄了兩個請求的目標主機的IP,記錄在規則的allowed_external_ips中。

規則中的這個allowed_external_ips對后續外部主機通過E:x1'向X1:x1發送數據包會做出限制,如下圖:

圖片圖片

我們看到:只有在“白名單”中的IP對應的主機(如Y1、Y2)才可以在“洞”建立后,通過E:x1'向內部主機X1:x1成功發送數據包,其它主機發送的數據包都會被攔截和丟棄。

我們看到上述的限制是限制是基于IP地址的,而位于Y1和Y2上的服務,可以使用任意端口向E:x1'成功發送數據包,這顯然也是一個安全隱患。于是便有了下面限制更為嚴格的端口受限錐形NAT。

3.2.3 端口受限錐型NAT

端口受限錐型NAT在受限錐形NAT映射表的基礎上,又進一步限制了端口,通過allowed_external_endpoints實現對外部端點的限制,如面示意圖:

注:IP:port合在一起稱為一個端點(endpoint)。

圖片圖片

我們看到:X1主機通過X1:x1在向Y1:y1和Y2:y2分別發起請求后,NAT設備上便有了一條映射規則(一個洞):X1:x1被映射到了外部地址E:x1',映射表同時記錄了兩個請求的目標主機的端點(ip:port),記錄在規則的allowed_external_endpoints中。

規則中的這個allowed_external_pointss對后續外部主機通過E:x1'向X1:x1發送數據包會做出更嚴格的限制,如下圖:

圖片圖片

我們看到:只有在“allowed_external_endpoints”中的端點(如Y1:y1、Y2:y2)發起的請求才可以在“洞”建立后,通過E:x1'向內部主機X1:x1成功發送數據包,其它主機或Y1、Y2上其他端口發送的數據包都會被攔截和丟棄。

下面我們再來看看最嚴格的NAT類型:對稱型NAT。

3.2.4 對稱型NAT

和上面由X1:x1發出的數據包(無論目的端點是什么)在NAT上只建立一條映射規則不同,在對稱型NAT中,由X1:x1向不同端點發送數據會在NAT上建立多條映射規則,如下圖所示:

圖片圖片

我們看到每條規則中還包含了目的端點的信息(dest_ip和dest_port),也正因為如此,對稱型NAT對外部請求的限制也是最嚴格的,如下圖所示:

圖片圖片

我們看到:只有來自規則中dest_ip和dest_port組成的端點的數據包才能進入內部,即只有那些收到數據的外部主機才能夠“順原路返回”地回送數據。

3.3 新的分類

上面提到的四種NAT類型是stun的RFC在早期對NAT實現的分類(基于UDP傳輸),一直沿用至今,也是目前使用最多的一種分類方法。不過這種分類方法將NAT的兩個正交的行為混在一起說了,即分配行為Assignment Behavior和過濾行為Filtering Behavior。其實我們更多關注的使其過濾行為的特征。

在較新的RFC 4787[8]中,NAT的行為被細分為兩個獨立的維度:分配行為(Assignment Behavior)和過濾行為(Filtering Behavior)。這兩種行為的各自分類描述了NAT在處理映射和過濾時的不同方式。以下是這兩種行為的分類及其對應的早期NAT類型的對照。

3.3.1 分配行為(Assignment Behavior)

分配行為定義了NAT設備如何為內網設備的流量分配外部端口和地址。RFC 4787將其分為三類:

  • Endpoint-Independent Mapping(端點獨立映射)

不管內網設備與哪個外部設備通信,只要內網設備使用同一個源IP和源端口,NAT都會為其分配相同的外部IP和端口。這意味著內網設備的源IP和源端口在外部網絡上呈現為固定的外部IP和端口組合,獨立于目標設備的地址和端口,即獨立于目標設備的端點。

端點獨立映射這種類別對應的早期NAT類型是完全錐形NAT(Full Cone NAT),前面我們講過,在完全錐形NAT中,無論內網設備的通信目標是什么,NAT設備都會使用相同的外部端口映射,因此完全符合端點獨立映射的定義。

  • Address-Dependent Mapping(地址依賴映射)

在地址依賴映射中,內網設備的外部端口是根據其通信的目標IP地址來分配的。如果內網設備改變了目標IP地址,即使源IP和源端口不變,NAT設備也會為其分配一個新的外部端口。

在分配行為上,我們似乎無法找到與早期分類一模一樣的類型,它有些類似于對稱NAT,但對稱NAT不僅考慮目標IP,還考慮目標端口。

  • Address and Port-Dependent Mapping(地址和端口依賴映射)

在這種映射行為中,內網設備的外部端口是根據其通信的目標IP地址和目標端口組合來分配的。如果內網設備改變了目標IP或端口,即使源IP和源端口不變,NAT設備仍會分配一個新的外部端口。該類型對應的是早期NAT類型中的對稱NAT(Symmetric NAT)。對稱NAT的行為正是基于目標IP和端口的組合來分配外部端口,因此它完全符合地址和端口依賴映射的定義。

3.3.2 過濾行為(Filtering Behavior)

過濾行為描述了NAT設備如何決定是否允許外部設備通過NAT與內網設備通信。RFC 4787將其分為三類:

  • Endpoint-Independent Filtering(端點獨立過濾)

這種類型的NAT設備不考慮外部設備的地址或端口,只要內網設備先發起了一個會話,任何外部設備都可以通過NAT設備與內網設備的相同源IP和源端口通信。這和早期NAT類型中的完全錐形NAT完全契合。

  • Address-Dependent Filtering(地址依賴過濾)

這種類型的NAT設備只允許內網設備已經與之通信的外部IP地址與其通信。換句話說,只有內網設備先與某個特定的外部IP地址通信后,該外部IP地址的設備才能通過NAT與內網設備通信。這和早期NAT類型中的限制錐形NAT(Restricted Cone NAT)在過濾行為的特征上是一致的。

  • Address and Port-Dependent Filtering(地址和端口依賴過濾)

這種類型的NAT設備要求外部設備的IP地址和端口都與內網設備已經建立連接的目標IP地址和端口匹配,才能允許通信。這意味著,只有內網設備先與某個特定的外部IP和端口組合通信后,該組合才能與內網設備通信。這與早期NAT類型中的端口限制錐形NAT(Port Restricted Cone NAT)以及對稱NAT的行為特征是一致的。

可以看出,RFC 4787中的分類方法更為細致地將NAT的分配行為和過濾行為分開討論,使得對NAT的行為理解更加明確。這種分類不僅幫助理解了不同NAT類型的工作機制,也為更精確地描述NAT行為提供了標準化的術語。

當然對于NAT打洞來說,我們更關心的顯然是過濾行為。

4. 小結

好了,這篇文章到這里就告一段落了。

在這篇文章中,我們探討了WebRTC網絡架構和NAT的工作原理。

我們首先了解了WebRTC的網絡架構,包括信令服務器、STUN服務器、TURN服務器和ICE框架等組件和其作用。

然后,我們討論了為什么需要NAT,包括解決IPv4地址短缺、提高安全性和簡化網絡管理等原因。

接著,我們詳細解釋了NAT的工作原理,以及完全圓錐型、受限圓錐型、端口受限圓錐型和對稱型這四種主要的早期NAT類型。

最后,我們介紹了RFC 4787中對NAT行為的新分類方法,將NAT行為分為分配行為和過濾行為兩個維度。

了解WebRTC網絡架構以及NAT工作原理是理解NAT打洞機制以及WebRTC端到端建立連接過程的前提,在后續文章中,我們會繼續WebRTC網絡部分的內容,比如NAT打洞以及端到端建連過程。

5. 參考資料

  • How NAT traversal works[9] - https://tailscale.com/blog/how-nat-traversal-works
  • Implementing NAT Hole Punching with QUIC[10] - https://arxiv.org/abs/2408.01791
  • Network Address Translation (NAT) Behavioral Requirements for Unicast UDP[11] - https://tools.ietf.org/html/rfc4787
  • WebRTC 1.0: Real-time Communication Between Browsers[12] - https://www.w3.org/TR/webrtc/
  • Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal[13] - https://tools.ietf.org/html/rfc8445
  • Session Traversal Utilities for NAT (STUN)[14] - https://datatracker.ietf.org/doc/html/rfc5389
  • Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN)[15] - https://datatracker.ietf.org/doc/html/rfc5766
  • Traditional IP Network Address Translator (Traditional NAT)[16] - https://datatracker.ietf.org/doc/html/rfc3022
  • IP Network Address Translator (NAT) Terminology and Considerations[17] - https://datatracker.ietf.org/doc/html/rfc2663

參考資料

[1] OpenAI與Livekit的合作: https://blog.livekit.io/open-source-realtime-multimodal-ai/

[2] 使AI模型具有了看、聽和說話的能力: https://openai.com/index/chatgpt-can-now-see-hear-and-speak/

[3] 使用Go和WebRTC data channel實現端到端實時通信: https://tonybai.com/2023/09/23/p2p-rtc-implementation-with-go-and-webrtc-data-channel

[4] Pion: https://github.com/pion/webrtc

[5] 使用Go和WebRTC data channel實現端到端實時通信: https://tonybai.com/2023/09/23/p2p-rtc-implementation-with-go-and-webrtc-data-channel

[6] RFC 1631: https://datatracker.ietf.org/doc/html/rfc1631

[7] RFC 3489: https://datatracker.ietf.org/doc/html/rfc3489

[8] RFC 4787: https://datatracker.ietf.org/doc/html/rfc4787

[9] How NAT traversal works: https://tailscale.com/blog/how-nat-traversal-works

[10] Implementing NAT Hole Punching with QUIC: https://arxiv.org/abs/2408.01791

[11] Network Address Translation (NAT) Behavioral Requirements for Unicast UDP: https://tools.ietf.org/html/rfc4787

[12] WebRTC 1.0: Real-time Communication Between Browsers: https://www.w3.org/TR/webrtc/

[13] Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal: https://datatracker.ietf.org/doc/html/rfc8445

[14] Session Traversal Utilities for NAT (STUN): https://datatracker.ietf.org/doc/html/rfc5389

[15] Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN): https://datatracker.ietf.org/doc/html/rfc5766

[16] Traditional IP Network Address Translator (Traditional NAT): https://datatracker.ietf.org/doc/html/rfc3022

[17] IP Network Address Translator (NAT) Terminology and Considerations: https://datatracker.ietf.org/doc/html/rfc2663

責任編輯:武曉燕 來源: TonyBai
相關推薦

2024-10-30 10:06:51

2021-12-07 07:32:09

kafka架構原理

2013-05-14 09:56:37

2021-03-05 18:36:00

Linux網橋Docker

2011-03-25 09:34:34

Nagios網絡監控

2010-12-02 11:27:07

NAT網絡地址轉換

2011-05-24 10:19:39

VMware快照

2011-12-20 15:52:03

PhoneGap架構基礎工作原理

2025-08-04 02:55:00

AIAgent架構

2011-04-13 15:01:39

2011-07-04 11:28:47

Xen虛擬化

2022-04-28 11:19:13

WebRTC服務器架構

2020-05-08 17:05:11

VMware網絡NAT

2013-05-22 10:39:12

OpenFlowSDN軟件定義網絡

2021-12-20 00:03:38

Webpack運行機制

2019-10-29 11:14:59

Vmware虛擬機NAT

2015-01-27 14:47:52

http協議

2010-07-07 17:33:41

SQL Server復

2011-04-07 17:01:40

NATLSN

2022-12-11 20:09:50

網絡編程通信
點贊
收藏

51CTO技術棧公眾號

日韩中文字幕免费在线| 国产精品久久久久久久久久| 制服下的诱惑暮生| segui88久久综合| 99久久婷婷国产综合精品| 日韩av电影国产| 青青操在线播放| 日韩中文字幕一区二区高清99| 亚洲国产精品久久不卡毛片| 蜜桃传媒视频麻豆一区| 一级黄色a视频| 国产精品vip| 尤物精品国产第一福利三区| 亚洲精品国产久| 色偷偷偷在线视频播放| 亚洲同性同志一二三专区| 国产一区自拍视频| 亚洲天堂中文字幕在线| 国内在线观看一区二区三区| 亚洲日本中文字幕免费在线不卡| 欧美一级小视频| 日本三级一区| 亚洲精品欧美二区三区中文字幕| 9a蜜桃久久久久久免费| 五月天中文字幕| 亚洲二区视频| 美女av一区二区三区 | 国产女片a归国片aa| 免费日韩一区二区三区| 911精品国产一区二区在线| 免费在线观看亚洲视频| 国产激情小视频在线| 久久久久久久久久电影| 国产传媒一区二区| 日韩在线播放中文字幕| 黄色免费成人| 久久精品国产久精国产思思| 真实乱视频国产免费观看| 动漫视频在线一区| 日韩一区二区三区观看| 三级在线视频观看| 欧美亚洲大片| 精品日本高清在线播放| 台湾无码一区二区| 黄色成人影院| 国产精品乱人伦| 天堂资源在线亚洲视频| 国产成人无码www免费视频播放| 美女在线观看视频一区二区| 日本成人在线视频网址| 亚洲国产精一区二区三区性色| 亚洲精品一区二区妖精| 日韩中文字幕不卡视频| 97在线观看免费视频| 在线亚洲a色| 精品亚洲一区二区三区在线播放| 中文在线字幕观看| 日本少妇精品亚洲第一区| 欧美日韩一级二级三级| 中文久久久久久| 欧美xnxx| 欧美日韩国产一级片| 成年人在线观看视频免费| 精品日韩视频| 欧美色老头old∨ideo| 中文字幕一区二区三区四区在线视频 | 成人av影院在线| 国产精品一区二区a| 免费成人在线看| 波波电影院一区二区三区| 国产日本一区二区三区| 日韩一级免费毛片| 99久久免费精品高清特色大片| 国产一区二区精品在线| 手机看片1024国产| 国产亚洲一区二区三区在线观看| 日本中文不卡| 蜜桃av在线免费观看| 亚洲色图视频网| www婷婷av久久久影片| 国产盗摄一区二区| 欧美午夜精品久久久久久人妖 | 奇米精品一区二区三区四区| 国产精品夜色7777狼人| 国产精品无码在线播放| 国产成人免费视频精品含羞草妖精| 97影院在线午夜| 亚洲 另类 春色 国产| 国产欧美视频一区二区三区| 亚洲一区二区自拍偷拍| 青春草在线视频| 欧美视频裸体精品| 波多野结衣xxxx| 亚洲一区电影| 亚洲欧美制服第一页| 韩国一级黄色录像| 亚洲国产国产亚洲一二三| 91精品国产91久久久久| 亚洲熟妇无码久久精品| 国产成人精品在线看| 精品九九九九| 欧美性videos| 疯狂做受xxxx高潮欧美日本 | 麻豆91精品91久久久| 亚洲精品黄色| 国产欧美中文字幕| 熟妇高潮一区二区三区| 国产精品国产三级国产专播品爱网| 日韩一二区视频| 一级毛片久久久| 91麻豆精品国产91久久久更新时间| 波多野结衣一二三区| 精品久久中文| 韩日精品中文字幕| 国产免费av观看| 久久久久国产一区二区三区四区| 黄色一级片网址| 香蕉伊大人中文在线观看| 欧美丰满少妇xxxxx高潮对白| 岛国精品资源网站| 91精品国产成人观看| 日本一区二区在线播放| 亚洲av综合色区无码一二三区| 欧美高清在线精品一区| 免费av手机在线观看| **日韩最新| 亚洲欧美国产一区二区三区| 九九热这里有精品视频| 狠狠色丁香婷婷综合久久片| 欧美精品一区二区三区四区五区| 性欧美video高清bbw| 欧美在线你懂得| 毛片网站免费观看| 99国产精品99久久久久久粉嫩| 91精品啪aⅴ在线观看国产| 毛片网站在线| 午夜电影一区二区三区| 美女又黄又免费的视频| 欧美wwwww| 国产精品久久久久久影视| 午夜一区在线观看| 午夜精品久久久久久久99樱桃| 久久久福利影院| 99tv成人| 成人网欧美在线视频| 五月天婷婷在线视频| 精品视频在线看| 亚洲女优在线观看| 日韩精彩视频在线观看| 欧洲亚洲一区二区| 欧美羞羞视频| 亚洲天堂av高清| 亚洲成熟少妇视频在线观看| 99re成人精品视频| 99精品人妻少妇一区二区 | 日韩视频一区二区三区| 欧美在线视频第一页| 精品一区二区三区欧美| 欧美h视频在线观看| 亚洲国产一区二区久久| 精品国产一区二区三区久久久狼| 一级片视频播放| 亚洲人吸女人奶水| 国产成人精品综合久久久久99 | 久久精品水蜜桃av综合天堂| 免费高清在线观看免费| 色棕色天天综合网| 国产精品欧美风情| 男人和女人做事情在线视频网站免费观看| 欧美日韩在线不卡| 99热这里只有精品4| 狠狠色丁香婷婷综合| 久久久久久久香蕉| 色橹橹欧美在线观看视频高清| 欧洲精品在线视频| av网站无病毒在线| 日韩一区二区三区免费看| 黄色小说在线观看视频| 91麻豆蜜桃一区二区三区| 成人在线观看a| 日韩理论片av| 18成人免费观看网站下载| 精精国产xxxx视频在线播放| 亚洲欧美999| 国产精品久久久久久无人区| 一区二区久久久| 中文字幕第20页| 国产在线一区观看| 国产v片免费观看| 欧美日韩中文一区二区| 91九色在线免费视频| 精品众筹模特私拍视频| 亚洲视频在线视频| 亚洲第一天堂在线观看| 日韩欧美国产激情| 国精品人伦一区二区三区蜜桃| 国产精品18久久久久久vr| 国产淫片免费看| 亚洲精品国产成人影院| 久久久99爱| 免费一级欧美在线大片| 欧美在线观看网址综合| 国产精品剧情| 亚洲人成五月天| 99热在线只有精品| 色欧美88888久久久久久影院| 久久福利免费视频| 2021久久国产精品不只是精品| 超碰中文字幕在线观看| 老**午夜毛片一区二区三区| 97超碰在线视| 成人三级视频| 久久精品久久精品国产大片| 91视频成人| 日韩美女在线播放| 91九色国产在线播放| 在线免费观看羞羞视频一区二区| 欧美特级特黄aaaaaa在线看| 欧美日韩www| 国产一级一级国产| 亚洲午夜免费视频| 成人高潮免费视频| 国产免费成人在线视频| 性欧美丰满熟妇xxxx性久久久| 国产一区二区福利| www.这里只有精品| 久久亚洲欧洲| 国产黄页在线观看| 欧美日韩国产一区精品一区| 日韩精品资源| 免费国产自久久久久三四区久久| 国产高清一区视频| 国产高清视频一区二区| 国产精品一区av| 在线黄色的网站| 欧美亚洲激情在线| 超黄网站在线观看| 欧美激情区在线播放| caopeng在线| 精品国产一区av| 久久99精品久久久久久野外| 中文字幕精品在线| 电影在线一区| 亚洲视频在线看| 国产一级二级三级在线观看| 亚洲剧情一区二区| 免费在线黄色网址| 亚洲欧美成人网| 国产在线免费观看| 亚洲最大在线视频| 91网页在线观看| 中文字幕欧美日韩| 中文字幕在线视频区| 日韩在线免费av| 免费在线观看av片| 久久五月情影视| 黄色片免费在线观看| 欧美成人免费视频| 羞羞视频在线观看免费| 久久免费视频在线| 国产精品13p| 欧美一级大片在线观看| 成人av免费电影网站| 国产成人综合久久| www.一区| 91精品免费| 另类图片第一页| 欧美日韩大片一区二区三区| 欧美极品在线观看| 一区二区三区四区国产| 中文字幕一区二区av| 成年丰满熟妇午夜免费视频 | 国产三级精品三级| 国产三级精品三级观看| 亚洲婷婷综合久久一本伊一区| 久久久久久久久久久久久久免费看 | 在线观看男女av免费网址| 欧美激情一区二区三级高清视频| 91桃色在线| 国产精品极品美女在线观看免费| av一级久久| 国产精品视频入口| 国产一区日韩| 91制片厂免费观看| 亚洲美女91| 99视频在线视频| 国产 日韩 欧美大片| aaaaa级少妇高潮大片免费看| 国产精品乱码久久久久久| 久久免费在线观看视频| 日韩欧美一区视频| 91在线你懂的| 日韩av综合中文字幕| 91xxx在线观看| 久久久久久久久国产| 国产电影一区二区三区爱妃记| 91日本在线观看| 思热99re视热频这里只精品| 一区二区三区视频| 国产亚洲毛片| 亚洲第一天堂久久| 久久综合久久综合久久| 成人免费精品动漫网站| 日韩欧美亚洲综合| 精品国产区一区二| 永久免费看mv网站入口亚洲| 欧美黄色视屏| 国产精品自拍网| 国产精品视频3p| 97超碰人人爱| 丝袜国产日韩另类美女| 性高潮免费视频| 中文字幕一区三区| 亚洲久久在线观看| 日韩欧美电影在线| 97人人在线| 26uuu另类亚洲欧美日本一| 国产精品视频首页| 亚洲国产精品一区二区第四页av| 亚洲小说欧美另类社区| 成人黄色一级大片| 国产日产精品一区| 日本一二三区视频| 欧美一区二区视频在线观看2020| 国产黄在线看| 欧洲永久精品大片ww免费漫画| 亚洲精品v亚洲精品v日韩精品| 一本一道久久久a久久久精品91| 亚洲永久网站| 男男做爰猛烈叫床爽爽小说| 一区二区成人在线观看| 国产精品一级视频| 色噜噜狠狠色综合网图区| 国产高清不卡| 久久av一区二区三区漫画| 国产精品啊啊啊| 久久精品一二三四| 《视频一区视频二区| 中文在线免费看视频| 一区二区三区四区精品| 樱花草涩涩www在线播放| 国产亚洲情侣一区二区无| 欧美日本一区二区视频在线观看 | 国产原创一区二区三区| 天堂网中文在线观看| 欧美色图天堂网| 91伦理视频在线观看| 国产精品国产三级国产aⅴ9色| 视频一区在线观看| 午夜免费精品视频| 国产日产精品一区| 一道本无吗一区| 久久天天躁狠狠躁夜夜爽蜜月| 综合久久av| 大片在线观看网站免费收看| 国产福利91精品一区二区三区| 久草资源在线视频| 亚洲国产欧美一区二区三区同亚洲| 大香伊人久久| 国产手机精品在线| 一区二区动漫| 人妻少妇一区二区| 欧美自拍偷拍一区| 九七久久人人| 国产精品麻豆免费版| 99在线精品免费视频九九视| 久久国产精品无码一级毛片 | 欧美高跟鞋交xxxxxhd| 成人台湾亚洲精品一区二区 | 性国裸体高清亚洲| 茄子视频成人在线观看 | 亚洲成人av一区二区三区| 午夜av免费观看| 国产精品女人网站| 欧美精品偷拍| xxx在线播放| 欧美肥妇毛茸茸| 3344国产永久在线观看视频| 精品免费国产| 久久电影网站中文字幕| 欧美激情精品久久| 精品亚洲国产视频| 国产精品欧美一区二区三区不卡| 男人添女荫道口图片| 国产欧美日本一区视频| 亚洲国产精品无码久久| 日本精品免费一区二区三区| 天天做天天爱天天综合网| 亚洲欧美在线不卡| 欧美精品自拍偷拍动漫精品| 高清电影在线观看免费| 日本一区二区精品视频| 高清国产一区二区| 最近中文字幕在线观看视频| 欧美国产日韩xxxxx| 成人网18免费网站| 国产黄色三级网站| 91精品国产综合久久久蜜臀图片| 在线最新版中文在线| 992tv成人免费观看|