久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

P2P技术详解(三):P2P中的NAT穿越(打洞)方案详解(进阶分析篇)

發布時間:2023/12/1 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 P2P技术详解(三):P2P中的NAT穿越(打洞)方案详解(进阶分析篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 1、NAT和NAPT
  • 2、NAT帶來的問題
  • 3、P2P通信穿越NAT的技術、方法
  • 4、NAT穿越技術1:應用層網關
    • 4.1、原理
    • 4.2、限制
  • 5、NAT穿越技術2:中間件技術
    • 5.1、原理
    • 5.2、限制
  • 6、NAT穿越技術3:打洞技術(Hole Punching)
    • 6.1、原理
    • 6.2、方法
      • 6.2.1NAT行為類型與偵測方法
      • 6.2.2NAT打洞過程
  • 7、NAT穿越技術4:Relay服務器中轉技術
    • 7.1、UDP協議的Relay
      • 7.1.1方式一、Send and Data methods,具體交互過程如下:
      • 7.1.2方式二、channels,具體交互過程如下:
    • 7.2、TCP協議的Relay
      • 7.2.1情況一、Client to peer,網絡拓撲如下:
      • 7.2.2情況二、Client to client,網絡拓撲結構如下:

1、NAT和NAPT

網絡地址轉換(NAT,全稱Network Address Translation),早期的NAT指的是Basic NAT(靜態NAT),它在技術上比較簡單一點,僅支持地址轉換,不支持端口映射。這就需要對每一個當前連接都要對應一個IP地址,因此要維護一個公網的地址池。

我們可以看出,Basic NAT一個比較明顯的缺陷就是:同一時刻只能少量位于NAT后面的機器能夠和外部交互(要看NAT有幾個外網IP)。

后期的NAT基本都指的是NAPT(網絡地址端口轉換)了,這種方式支持端口的映射并允許多臺主機共享一個公用IP地址,這樣就可以支持同時多個位于NAT后面的機器和外部進行交互了。

支持端口轉換的NAT又可以分為兩類:

1)源地址轉換(SNAT);
2)目的地址轉換NAT(DNAT)。

下面說的NAT都是指NAPT。

2、NAT帶來的問題

NAT在緩解IPv4地址資源的緊張的同時,也帶來了不少問題:

1)NAT使IP會話的保持時效變短;
2)NAT在實現上將多個內部主機發出的連接復用到一個IP上,這就使依賴IP進行主機跟蹤的機制都失效了;
3)NAT工作機制依賴于修改IP包頭的信息,這會妨礙一些安全協議的工作;
4)NAT限制了使用一些高層協議(FTP、Quake、SIP)的Peer兩端的P2P通信。

對于問題1:
其主要原因是,NAT設備建立的內網IP、端口到外網IP、端口的映射的表項是有一個保活期的。如果在一個超時時間內,該映射上沒有實際數據的傳輸,那么NAT會過期并回收這個映射表項給其他通信鏈路用(IP和端口資源有限,通信的鏈路是無限)。為了避免這種通信鏈路提前被NAT中斷的情況,很多應用層協議在設計的時候就考慮了一個連接保活的機制,即在一段時間沒有數據需要發送時,主動發送一個NAT能感知到而又沒有實際數據的保活消息,這么做的主要目的就是重置NAT的會話定時器。

對于問題2:
其主要原因是,對于NAT后面的N多主機,在外部看來都是同一個主機(NAT設備),于是來之同一個IP的數據包一定是來之同一個主機的前提判斷就會不準確了,這樣一下基于這個前提的機制(例如:TCP的TIME_WAIT的回收和重用)都會有問題。

對于問題3:
其主要原因是,NAT篡改了IP地址、傳輸層端口號和校驗和。

對于問題4:
其主要原因是,一般情況下,NAT是不允許外部的Peer節點主動連接或發送數據包給NAT后面的主機的(這里的主動指的是,在一段時間內,首先發送數據包的一方為主動方)。

NAT表現出這樣的行為,主要基于下面的幾點考慮:

1)出于安全考慮,避免來自網絡外部的攻擊,隱藏并保護網絡內部的計算機;
2)位于NAT后面的很多主機,對于主動進來的數據包,NAT一般不知道該路由給內部的哪個主機(NAT設備上沒有相關轉發表項)。

由于NAT這種特性,那么在NAT環境下,實現P2P通信的完整解決方案包括幾個部分呢?相關的原理、方法、技術有哪些?

對于一個完整的P2P通信解決方案,其實現包括下面兩個步驟:

1)首先在Server的協助下,通信兩端Peer嘗試相互連接,如果兩端Peer在嘗試互聯不成功后,那么就將失敗結果反饋給Server轉入步驟2);
2)這個步驟比較簡單粗暴了,就是relay(服務器中轉),簡單的來講就是Peer1將要發給Peer2的數據發給Server,然后由Server幫忙轉發給Peer2,同樣對于Peer2來說也一樣。

對于實現P2P通信,步驟1是大家下功夫最多的,其原因比較簡單,就是步驟2需要消耗較多的服務器資源,成本比較高。步驟1實現P2P兩個節點間的直接通信,在資源消耗和效率上都是比較好的。

3、P2P通信穿越NAT的技術、方法

目前常見的P2P通信穿越NAT的技術、方法主要有:

1)應用層網關;
2)中間件技術;
3)打洞技術(Hole Punching);
4)Relay(服務器中轉)技術。

4、NAT穿越技術1:應用層網關

應用層網關(ALG)是解決NAT對應用層協議無感知的一個最常用方法,已經被NAT設備廠商廣泛采用,成為NAT設備的一個必需功能。

4.1、原理

利用帶有ALG功能的NAT對特定應用層協議的支持和理解,在一個NAT網關檢測到新的連接請求時,需要判斷是否為已知的應用類型,這通常是基于連接的傳輸層端口信息來識別的。在識別為已知應用時,再調用相應功能對報文的深層內容進行檢查,當發現任何形式表達的IP地址和端口時,將會把這些信息同步轉換,并且為這個新連接創建一個附加的轉換表項。

這樣,當報文到達公網側的目的主機時,應用層協議中攜帶的信息就是NAT網關提供的地址和端口。

例如:下圖,對于使用主動模式的FTP協議(PORT方式),就需要AGL的支持了。

由于FTP協議通信需要兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與服務器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。如上圖,位于NAT后面的FTP client(192.168.1.2)首先發起一個TCP連接(命令鏈路)連上外網FTP Server(8.8.8.1),然后發送PORT報文(192.168.1.2,1084)說自己在1084端口接收數據,然后進過ALG處理PORT報文變成(8.8.8.1,12487),同NAT建立其一條(192.168.1.2,1084 <—>8.8.8.1,12487)映射。這樣FTP Server發往(8.8.8.1,12487)的數據就會被轉到(192.168.1.2,1084),從而實現數據傳輸(如果沒經過ALG處理,那么FTP Server直接連接192.168.1.2,1084是無法連接上的)。

4.2、限制

ALG技術是利用NAT本身的支持來進行NAT的穿越,這個方案有很大限制,主要的原因是ALG都是為特定協議的特定規范版本而開發的,然而不管是協議本身,還是協議的數量都在變化,這就使得ALG適應性不強。

5、NAT穿越技術2:中間件技術

這是一種通過開發通用方法解決NAT穿越問題的努力。與前者不同之處是,AGL技術中NAT網關是這一解決方案的唯一參與者,而中間件技術中客戶端會參與網關公網映射信息的維護。UPnP就是這樣一種方法,UPnP中文全稱為通用即插即用,是一個通用的網絡終端與網關的通信協議,具備信息發布和管理控制的能力。

5.1、原理

NAT只要理解客戶端的請求并按照要求去分配響應的映射轉換表,不需要自己去分析客戶端的應用層數據。網關映射請求可以為客戶動態添加映射表項。

此時,NAT不再需要理解應用層攜帶的信息,只轉換IP地址和端口信息。而客戶端通過控制消息或信令發到公網側的信息中,直接攜帶公網映射的IP地址和端口,接收端可以按照此信息建立數據連接。NAT網關在收到數據或連接請求時,按照UPnP建立的表項只轉換地址和端口信息,不關心內容,再將數據轉發到內網。

5.2、限制

這種方案需要網關、內部主機和應用程序都支持UPnP技術,且組網允許內部主機和NAT網關之間可以直接交換UPnP信令才能實施。

6、NAT穿越技術3:打洞技術(Hole Punching)

Hole Punching技術是工作在運輸層的技術,可以屏蔽上層應用層的差異,并且不需要NAT網關特定的支持,因此其通用性比較強,應用性也比較廣。

6.1、原理

打洞技術的原理比較簡單,就是NAT內網的節點需要在NAT上建立自己的一條轉發映射關系(這就是所謂的在NAT上打下一個洞),然后外網的節點就通過這個”洞”來進行通信。為描述方便,我們將一對IP地址和端口信息的組合稱之為一個Endpoint。

打洞原理可以簡化為下面三個過程:

1)首先位于NAT后的Peer1節點需要向外發送數據包,以便讓NAT建立起內網Endpoint1(IP1、PORT1)和外網Endpoint2(IP2、PORT2)的映射關系;
2)然后通過某種方式將映射后的外網Endpoint2通知給對端節點Peer2;
3)最后Peer2往收到的外網Endpoint2發送數據包,然后該數據包就會被NAT轉發給內網的Peer1。

上面三個過程比較簡單,然而細心的同學會有些疑問:

1)步驟[1]中的映射關系的建立有什么規律的么?怎樣才能獲取到映射關系呢?
2)通知對端節點Peer2的方式一般是怎么樣的?
3)步驟[3]一定可以實現么?也就是Peer2往收到的外網Endpoint2發送數據包,就一定能夠被NAT轉發給內網的Peer1嗎?

對于疑問(3),如果全部會被轉發給內網Peer1,那會不會太不安全了,只要知道內網Peer1的映射后的外網Endpoint2,就可以給穿透NAT給內網Peer1發送數據,這樣內網Peer1不就很容易遭到攻擊了?如果全部都不轉發給內網Peer1,這樣Peer1只能向外發數據,而無法收到外面的數據,嚴重影響Peer1的正常通信。

那么,這就比較明了了,我們需要的是一部分可以轉發,另外一部分不轉發。這就涉及到NAT對外來數據包的一個過濾規則了,而疑問(1)提到的映射關系建立的規則,這涉及到NAT的Endpoint的映射規則。

那么問題來了,有什么方法可以知道NAT的Endpoint映射規則和對外來數據包的過濾規則呢?

6.2、方法

由上面原理的討論我們知道,要實現打洞穿越NAT,首先需要知道NAT的行為規則(NAT的Endpoint映射規則和對外來數據包的過濾規則),這樣才能更好地實現打洞穿越。

那NAT有哪些行為類型?有什么辦法來偵測NAT的行為呢?

6.2.1NAT行為類型與偵測方法

NAT的行為類型和偵測方法是由STUN(首先在RFC3489中定義,英文全稱是Simple Traversal of UDP Through NATs)協議來描述的,STUN協議包括了RFC3489、RFC5389、RFC5780、RFC5769幾個系列文檔。

早期的STUN協議是由RFC3489(經典的STUN)來描述,其定義的NAT行為類型如下:

1)Full Cone NAT - 完全錐形NAT:
所有從同一個內網IP和端口號Endpoint1發送過來的請求都會被映射成同一個外網IP和端口號Endpoint2,并且任何一個外網主機都可以通過這個映射的Endpoint2向這臺內網主機發送包。也就是外網所有發往Endpoint2的數據包都會被NAT轉發給Endpoint1。由于對外部請求的來源無任何限制,因此這種方式雖然足夠簡單,但卻不安全。

2)Restricted Cone NAT - 限制錐形NAT:
它是Full Cone的受限版本:所有來自同一個內網Endpoint1的請求均被NAT映射成同一個外網Endpoint2,這與Full Cone相同。但不同的是,只有當內網Endpoint1曾經發送過報文給外部主機(假設其IP地址為IP3)后,外部主機IP3發往Endpoint2的數據包才會被NAT轉發給Endpoint1。這意味著,NAT設備只向內轉發那些來自于當前已知的外部主機的數據包,從而保障了外部請求來源的安全性

3)Port Restricted Cone NAT - 端口限制錐形NAT:
它是Restricted Cone NAT的進一步受限版,與限制錐形NAT很相似,只不過它包括端口號PORT。只有當內網Endpoint1曾經發送過報文給外部Endpoint3(包括IP和端口了),Endpoint3發往Endpoint2的數據包才會被NAT轉發給Endpoint1。端口號PORT這一要求進一步強化了對外部報文請求來源的限制,從而較Restrictd Cone更具安全性。

4)Symmetric NAT - 對稱NAT:
上面的1)2)3)所有的Cone NAT中,映射關系只和內網的源Endpoint1相關,只要源Endpoint1不變其都會被映射成同一個Endpoint2。而對稱NAT的映射關系不只與源Endpoint1相關,還與目的Endpoint3相關。也就是源Endpoint1發往目的Endpoint30的請求被映射為Endpoint20,而源Endpoint1發往目的Endpoint31的請求,則被映射為Endpoint21了。此外,只有收到過內網主機發送的數據的外網主機才可以反過來向內網主機發送數據包。

經典 STUN 定義的 NAT 行為類型是將NAT的Mapping Behavior (映射規則)和Filtering Behavior(過濾規則)統一來歸類的,這樣對Symmetric NAT類型的歸類過于籠統,使得許多 NAT 不完全符合由它定義的類型。

于是后來,RFC3489被廢棄并由RFC5389來替代,在RFC5389中,將Mapping Behavior (映射規則)和Filtering Behavior(過濾規則)分開來,定義了3種Mapping Behavior (映射規則)和3種Filtering Behavior(過濾規則),一共有9種組合。

為什么是3種呢?其實理由很簡單,對于一個特定的內網源Endpoint1,影響其映射關系的因素不外乎就4種情況:

1)目的IP和目的端口PORT都無關;
2)目的IP和目的端口PORT都相關;
3)僅僅目的IP相關;
4)僅僅目的PORT相關。

對于4僅僅考慮一下PORT信息有點雞肋,基本和1差不多,于是把4去掉了。同樣,對于過濾規則也一樣。

3種Mapping Behavior (映射規則)和 Filtering Behavior(過濾規則)如下。

Mapping Behavior:
1)Endpoint-Independent Mapping:
對于一個內網的EndpointP,其映射的外網EndpointG是基本固定的,不會隨著通信外部主機的不同而變化。

2)Address and Port-Dependent Mapping:
對于一個內網的EndpointP,如果與之通信的外部為EndpointGB1,那么EndpointP就會被NAT映射成EndpointG1;如果與之通信的外部為EndpointGB2,那么EndpointP就會被NAT映射成EndpointG2。也就是只要之通信的外部為EndpointGB發生變化,那么映射的外網EndpointG就會變化。

3)Address-Dependent Mapping:
對于一個內網的EndpointP,如果與之通信的外部為EndpointGB1,那么EndpointP就會被NAT映射成EndpointG1;如果與之通信的外部為EndpointGB2(如果EndpointGB2的IP和EndpointGB1的相同),那么EndpointP同樣會被NAT映射成EndpointG1,否則就會被NAT映射成EndpointG2。也就是只要之通信的外部為EndpointGB的IP發生變化,那么映射的外網EndpointG就會變化。

Filtering Behavior:
1)Endpoint-Independent Filtering:
對于這種過濾類型,NAT在在自己的一個外網EndpointG1收到數據包,只要找到與之對應的內網EndpointP1,NAT就會轉發這個數據包給相應的內網EndpointP1,不管這個數據包的來源是那里。(一般來說,這樣過濾規則的NAT是比較少的,因為這樣的安全系數比較低)

2)Address and Port-Dependent Filtering:
對于這種過濾類型,NAT在自己的一個外網EndpointG1收到來源是EndpointGA1數據包,這個時候NAT要判斷自己是否曾經通過自己的EndpointG1給EndpointGA1發送過數據包,如果曾經發過,那么NAT就允許該數據包通過NAT并路由給內網與之對于的內網EndpointP1;如果沒發過,那么NAT會不允許該數據包通過NAT。

3)Address-Dependent Filtering:
對于這種過濾類型,NAT在自己的一個外網EndpointG1收到來源是EndpointGA1數據包,這個時候NAT要判斷自己是否曾經通過自己的EndpointG1給和EndpointGA1的IP相同的機器發送過數據包(這里會忽略端口),如果曾經發過,那么NAT就允許該數據包通過NAT并路由給內網與之對于的內網EndpointP1;如果沒發過,那么NAT會不允許該數據包通過NAT。

RFC5389只是定義了協議的相關屬性、機制、報文結構以及一些相關的安全注意點等等,并有沒對怎么進行完整的NAT類型偵測做介紹。而對完整NAT類型偵測過程主要由RFC5780這個文檔來描述。完整的NAT類型偵測的過程主要在RFC5780文檔的4.3和4.4節,主要分為NAT映射規則(Determining NAT Mapping Behavior)和NAT過濾規則(Determining NAT Filtering Behavior)。

下面對具體的偵測過程做介紹:

要進行NAT類型的偵測,需要一個具有雙公網IP的服務器來協助偵測,我們稱該服務器為STUN Server。假設STUN Server的雙IP分別為IP_SA(125.227.152.3)和IP_SB(125.227.152.4) 監聽的兩個端口分別為PORT_SA(4777)和PORT_SB(4888),客戶端A的內網和端口分別為IP_CA(10.70.142.12)和PORT_CA(1234)。

1)客戶端A以IP_CA: PORT_CA給STUN Server的IP_SA: PORT_SA發送一個bind請求,STUN server以IP_SA: PORT_SA給客戶端A的IP_CA: PORT_CA回復響應,響應內容大體為:(NAT映射后的IP地址和端口為:IP_MCA1: PORT_MCA1,STUN Server的另外一個IP地址和端口為:IP_SB: PORT_SB)。這個時候客戶端判斷,如果IP_CA: PORT_CA == IP_MCA1: PORT_MCA1,那么該客戶端是擁有公網IP的,NAT類型偵測結束。

2)客戶端A以IP_CA: PORT_CA給STUN server的IP_SB: PORT_SA(相對步驟1 ip改變了)發送一個bind請求,STUN server以IP_SB: PORT_SA給客戶端A的IP_CA: PORT_CA回復響應,響應內容大體為:(NAT映射后的IP地址和端口為:IP_MCA2: PORT_MCA2)。這個時候客戶端判斷,如果IP_MCA1: PORT_MCA1 == IP_MCA2: PORT_MCA2,那么NAT是Endpoint Independent Mapping的映射規則,也就是同樣的內網地址IP_CA: PORT_CA經過這種NAT映射后的IP_M: PORT_M是固定不變的;如果IP_MCA1: PORT_MCA1 != IP_MCA2: PORT_MCA2,那么就要進行下面的第3步測試。

3)客戶端A以IP_CA: PORT_CA給STUN server的IP_SB: PORT_SB(相對步驟1 ip和port改變了)發送一個bind請求,STUN server以IP_SB: PORT_SB給客戶端A的IP_CA: PORT_CA回復響應,響應內容大體為:(NAT映射后的IP地址和端口為:IP_MCA3: PORT_MCA3)。這個時候客戶端判斷,如果IP_MCA2: PORT_MCA2== IP_MCA3: PORT_MCA3,那么NAT是Address Dependent Mapping的映射規則,也就是只要是目的IP是相同的,那么同樣的內網地址IP_CA: PORT_CA經過這種NAT映射后的IP_M: PORT_M是固定不變的;如果IP_MCA2: PORT_MCA2!= IP_MCA3: PORT_MCA3,那么NAT是Address and Port Dependent Mapping,只要目的IP和PORT中有一個不一樣,那么同樣的內網地址IP_CA: PORT_CA經過這種NAT映射后的IP_M: PORT_M是不一樣的。

以上三個步驟是進行Mapping Behavior的偵測,下面兩個步驟是進行Filtering Behavior偵測:

4)客戶端A以IP_CA: PORT_CA給STUN server的IP_SA: PORT_SA發送一個bind請求(請求中帶CHANGE-REQUEST attribute來要求stun server改變IP和PORT來響應),STUN server以IP_SB: PORT_SB給客戶端A的IP_CA: PORT_CA回復響應。如果客戶端A能收到STUN server的響應,那么NAT是Endpoint-Independent Filtering的過濾規則,也就是只要給客戶端A的IP_CA: PORT_CA映射后的IP_MCA: PORT_MCA地址發送數據都能通過NAT到達客戶端A的IP_CA: PORT_CA(這種過濾規則的NAT估計很少)。如果不能收到STUN server的響應,那么需要進行下面的第五步測試。

5)客戶端A以IP_CA: PORT_CA給STUN server的IP_SA: PORT_SA發送一個bind請求(請求中帶CHANGE-REQUEST attribute來要求stun server改變PORT來響應),STUN server以IP_SA: PORT_SB給客戶端A的IP_CA: PORT_CA回復響應。如果客戶端A能收到STUN server的響應,NAT是Address-Dependent Filtering的過濾規則,也就是只要之前客戶端A以IP_CA: PORT_CA給IP為IP_D的主機發送過數據,那么在NAT映射的有效期內,IP為IP_D的主機以任何端口給客戶端A的IP_CA: PORT_CA映射后的IP_MCA: PORT_MCA地址發送數據都能通過NAT到達客戶端A的IP_CA: PORT_CA;如果不能收到響應,NAT是Address and Port-Dependent Filtering的過濾規則,也即是只有之前客戶端A以IP_CA: PORT_CA給目的主機的IP_D: PORT_D發送過數據,那么在NAT映射的有效期內,只有以IP_D: PORT_D給客戶端A的IP_CA: PORT_CA映射后的IP_MCA: PORT_MCA地址發送數據才能通過NAT到達客戶端A的IP_CA: PORT_CA。

通過以上5個步驟就能完成完整的NAT類型偵測。

將NAT映射規則和過濾規則組合起來就形成9中不同的NAT行為類型:

1)Endpoint Independent Mapping和Endpoint-Independent Filtering組合對應于RFC3489中的Full Cone NAT;
2)Endpoint Independent Mapping和Address-Dependent Filtering組合對應于RFC3489中的Restricted Cone NAT;
3)Endpoint Independent Mapping和Address and Port-Dependent Filtering組合對應于RFC3489中的Port Restricted Cone NAT;
4)Address and Port-Dependent Mapping和Address and Port-Dependent Filtering組合是RFC3489中所說的Symmetric NAT。

可見RFC3489只描述了9種NAT組合行為類型中的4種。最后一個文檔rfc5769,定義了一些STUN協議的測試數據用于測試STUN server的正確性。

6.2.2NAT打洞過程

“打洞”方式穿越NAT有兩種形式:TCP”打洞”和UDP”打洞”。原理上,TCP”打洞”與UDP”打洞”是沒有本質的區別的。

然而在實現上,TCP”打洞”的成功率遠沒UDP”打洞”的成功率高,其主要原因有三:

1)有些NAT防火墻策略對TCP協議不是很友好:
有些NAT的防火墻策略不允許來路不明的外部向內網機器發起TCP連接。由于TCP是有連接的,NAT比較容易分清哪些是NAT 內網機器主動進行通信的外部節點,這樣防火墻策略比較明確。而UDP是無連接的,沒有連接來標明一個數據流,協議比較簡單,這樣NAT支持的比較多。

2)TCP協議本身:
由于TCP的TIME_WAIT狀態引起,同一個NAT后面的其他主機發起的連接被誤判。具體可以看下面的文章:km.oa.com/group/25569/articles/show/246068 。

3)TCP協議的實現API:
因為標準的Berkeley sockets API是圍繞C/S編程而設計的。這個API通過connect()允許一個TCP流套接字初始化一個向外的連接,通過listen()和 accept()監聽一個外入的連接,一個套接字不能既用來監聽又用來初始化向外的連接。更進一步講, TCP套接字通常與本地主機上的TCP端口一一對應:一個套接字綁定到本地主機機上的某個端口后,另一個套接字就不能再綁定到該端口。然而TCP打洞要成功,需要一個本地的TCP端口既可以監聽外入的連接,同時又可以發起多個向外的連接。幸運的是,所有主流的操作系統都支持一個特殊的socket選項SO_REUSEADDR,它運行應用程序綁定多個設置了該選項的套接字到同一端口。BSD系統引入了SO_REUSEPORT選項來控制端口重用,從而把端口重用和地址重用相分離。在這樣的系統中,兩個選項都需要被設置。盡管如此,要進行TCP打洞需要進行TCP三次握手的同時打開,但是有些TCP/IP的實現,可能不支持這種同時打開的情況,這樣也就無法建立TCP連接了。

下面就幾種網絡拓撲情況下,NAT打洞步驟進行逐一介紹。為了方便描述,假設通信的兩個節點分別為Client A和Client B,而輔助NAT穿越的STUN Server為Server S。下面的所有方法都要求Client A、Client B都與Server S保持一條長連接,或者周期性連上Server S,以便能夠接收Server S的相關指令,我們稱這兩個連接分別為ConnectA1,ConnectB1.

6.2.2.1)網絡拓撲類型一:

如下圖所示,Client A 位于NAT內網,而Client B是具有公網IP的機器。如果是Client A需要連接Client B那么Client A直接連Client B就可以了。如果Client B需要連接Client A,那么Client B直接Connect Client A一般是連接不上的。但是我們可以反過來讓Client A主動去連Client B不就可以了。下面所說的Client A或Client B的NAT類型指的是對于Server S能看到的Client的最外層的NAT的類型。

反過來讓Client A主動去連Client B的技術就是所謂的:反向連接技術。

具體的穿越過程如下:

1)Client B通過ConnectB1向Server S發送請求,請求連接Client A;
2)Server S按需回復看是否需要啟動Client B的NAT類型偵測。(這要看Server S是否已經緩存了Client B的相關NAT信息);
3)Server S通過[2]可以知道Client B具有公網IP,于是,Server S通過ConnectA1發送指令給Client A讓Client A主動連Client B并告訴Client A目標Client B的IPB和監聽端口PortB;
4)Client A收到Client B的IPB和監聽端口PortB,然后發送連接請求連上Cient A并附帶一下身份信息,于是兩者就可以進行通信。

下面為了描述簡便,具體的NAT偵測步驟就省略了。

6.2.2.2)網絡拓撲類型二:

如下圖,Client A和Client B位于同一個NAT后面,這個時候Client A和 Client B位于同一個局域網。

具體的穿越過程如下:

1)Client A通過ConnectA1向Server S發送請求,請求連接Client B;
2)Server S發現Client A、B位于同一個NAT后面,于是返回Client A、Client B的公網EndpointGA、EndpointGB和內網EndpointPA、EndpointPB給Client A;
3)Client A收到后,知道Client B和自己位于同一個NAT里面,于是直接連上Client B的內網EndpointPB進行通信。

6.2.2.3)網絡拓撲類型三:

如下圖,Client A和Client B分別位于不同的NAT后面,這個時候Client A和 Client B位于獨立的局域網。

具體的穿越過程如下:

1)Client A通過ConnectA1向Server S發送請求,請求連接Client B;
2)Server S發現Client A、B位于獨立的NAT后面,也是通過ConnectA1返回給Client A、Client B的公網EndpointGA、EndpointGB和內網EndpointPA、EndpointPA給Client A。并且通過ConnectB1返回給Client A、Client B的公網EndpointGA、EndpointGB和內網EndpointPA、EndpointPB給Client B。

接下來的步驟和Client A、Client B的NAT類型密切相關,下面會分別就相應的組合進行介紹具體的過程步驟。

(1)Client A是任意類型NAT,Client B 是Full Cone NAT(Endpoint Independent Mapping和Endpoint-Independent Filtering)

Full Cone NAT一般是比較少的,因為這樣的NAT安全性很差。

[3] Server S通過ConnectA1發送指令讓Client A直接Connect Client B的外網EndpointGB,由于Client B的NAT是Full Cone,于是NAT不管三七二十一就把收到的包轉發給Client B,于是它們就可以順利通信了。

(2)Client A是任意類型NAT,Client B 是Restricted Cone NAT(Endpoint Independent Mapping和Address-Dependent Filtering)

[3] Server S通過ConnectB1發送指令讓Client B 先bind內網EndpointPB然后往Client A的外網EndpointGA發送Connect請求(由于Client B是Endpoint Independent Mapping,那么EndpointPB依舊是映射為EndpointGB),如果連接建立成功,那么它們就可以進行通信了,反之失敗的話,Client B將失敗結果反饋給Server S,然后轉入[4];

[4] Server S收到失敗反饋,通過ConnectA1發送指令讓Client A往Client B的外網EndpointGB發送Connect請求,由于在步驟[3],Client B已經往Client A發送過數據包,根據過濾規則(Address-Dependent Filtering),Client B的NAT會允許Client A的數據包通過NAT并轉發給Client B。于是,它們就建立其連接進行通信。

(3)Client A的NAT類型:映射規則是(Endpoint Independent Mapping)的,過濾規則任意;Client B 是Port Restricted Cone NAT(Endpoint Independent Mapping和Address and Port-Dependent Filtering)

[3] 該步驟和情況(2)中的步驟[3]完全一樣。

[4] Server S收到失敗反饋,通過ConnectA1發送指令讓Client A 先bind內網EndpointPA然后往Client B的外網EndpointGB發送Connect請求(由于Client A是Endpoint Independent Mapping,那么EndpointPA依舊是映射為EndpointGA),由于在步驟[3],Client B已經往Client A的EndpointGA發送過數據包,根據過濾規則(Address and Port-Dependent Filtering),Client B的NAT會允許Client A的EndpointGA的數據包通過NAT并轉發給Client B。于是,它們就建立其連接進行通信。

(4)Client A的NAT類型:映射規則是(非Endpoint Independent Mapping)的,過濾規則任意;Client B 是Port Restricted Cone NAT(Endpoint Independent Mapping和Address and Port-Dependent Filtering)

在這種情況下,在上面的步驟[4]的時候,由于Client A是非Endpoint Independent Mapping,那么EndpointPA就會映射為是EndpointGA_B而不是EndpointGA了。這樣根據過濾 規則(Address and Port-Dependent Filtering),Client B的NAT將不會允許Client A的EndpointGA_B的數據包通過NAT。要想數據包能通過Client B的NAT,需要Client B曾經給EndpointGA_B發送過數據。但是,我們無法通過直接的方法讓Client B提前知道Client A的外網EndpointGA_B,難道就無能為力了嗎?不,還是有些方法的,雖然無法直接知道Client A的外網EndpointGA_B,但是我們可以進行預測。

具體過程如下:
[3] 該步驟和情況(2)中的步驟[3]完全一樣。

[4] Server S收到失敗反饋,通過ConnectA1發送指令讓Client A 啟動端口映射預測過程。端口映射預測可以簡單、可以復雜,大體就是讓Client A往Server的不同端口、不同ip發送數據包,以便Server收集到Client A的端口映射樣本,以便能夠根據樣本的端口映射變化規律預測Client A的NAT的Mapping規則。

[5] Server S根據[4]的預測情況,通過ConnectB1發送給Client B接下來Client A可能的映射端口列表也就是可能的外網EndpointGA1、EndpointGA2 … EndpointGAn,然后讓Client B都往這些外網EndpointGA1、EndpointGA2 … EndpointGAn發送數據包。

[6] 然后Server S通過ConnectA1發送指令讓Client A 先bind內網EndpointPA然后往Client B的外網EndpointGB發送Connect請求(這個時候,假設預測算法有效的話,那么Client A的內網EndpointPA將會映射為EndpointGAi),由于在步驟[5],Client B已經往Client A的EndpointGAi發送過數據包,根據過濾規則(Address and Port-Dependent Filtering),Client B的NAT會允許Client A的EndpointGAi的數據包通過NAT并轉發給Client B。于是,它們就建立其連接進行通信。

[7] 如果在步驟[4]的預測失敗,那么在步驟[6]將建立連接失敗,然后Client B將失敗結果反饋給Server S。這個時候Server S可以啟動重試步驟[4][5][6]或直接判斷Client A和Client B無法建立直接的P2P通信了,于是進入Relay(服務器中轉)環節。Realy部分在后面會單獨介紹。

6.2.2.4)網絡拓撲類型四:

如下圖,Client A和 Client B位于多層NAT后面。

具體過程如下:

1)Client A通過ConnectA1向Server S發送請求,請求連接Client B;
2)Server S發現Client A、B位于同一個NAT后面,于是返回Client A、Client B的公網EndpointGA、EndpointGB和內網EndpointPA、EndpointPB給Client A;
3)Client A收到后,認為Client B和自己位于同一個NAT里面,于是往Client B的內網EndpointPB發送連接請求,當然是連接不上的;
4)在連接失敗后,接著Client A嘗試向Client B的外網EndpointGB發送連接請求,這個時候NAT C收到數據包后是否轉發該數據包要看NAT C是否支持回環轉換(hairpin translation),如果不支持那么就無法進行直連P2P通信,需要就需要反饋給Server S開啟Relay。

5)在步驟4)失敗了,Client A是無法知道是因為NAT C不支持回環轉換造成的失敗,還是內層NAT的行為造成的失敗。于是Client A就假設NAT C是支持回環轉換的,這個時候網絡拓撲情況就變成網絡拓撲類型三了,那么接下來的穿越步驟就和網絡拓撲類型三的多種情況一樣的了,這里就不重復了。

上圖,只是給出了Client A、Client B位于兩層NAT后面的一種情況,對于多層NAT的各種組合本文就不介紹了。對于多層NAT的組合,在穿透失敗的時候,是比較難判斷出到底是哪層NAT的行為造成的。我們只能用上面說過的所有方法進行逐一重試,如果還是失敗,那只能啟動Relay進行服務器中轉了。

7、NAT穿越技術4:Relay服務器中轉技術

由于進行P2P穿透是否成功與NAT的行為和防火墻策略有很大的關系,因此就算是一個P2P友好NAT也很難保證100%穿透成功。舉個例子:8.2.2.4 網絡拓撲類型四,假設NAT A、NAT B 、NAT C都是Full Cone NAT(完全錐型),但是如果NAT C不支持回環轉換(hairpin translation)那么也是無法穿透成功的。那么一個完整的P2P穿透的解決方案必不可少的一個部分就是relay了,relay部分主要TURN協議描述。作為STUN協議的一個補充,TURN協議主要由RFC5766、RFC6062、RFC6156來描述,其中RFC5766主要描述的是UDP協議的relay,RFC6062描述的是TCP協議(IPV4)的relay,而RFC6156描述的是IPV6的relay。下面主要介紹一下RFC5766和RFC6062兩個文檔中描述的較為重要的交互過程,具體的協議相關屬性、報文結構等等,有興趣的可以細讀一下協議文檔。

TURN協議簡單的來講,如下圖所示:client向turn server發送一個Allocation request請求一個分配(allocation),如果turn server接收請求就會給client分配一個relay地址(IP_RELAYA: PORT_RELAYA),每個allocation都有一個有效期,過了有效期就不能使用了。在有效期內client可以發送refresh request來刷新延長有效期。Client A想給peer A發送數據需要創建權限,這個通過createPermission request請求來創建權限,權限創建成功后,client A就可以發送數據給turn server由turn server中轉給peer A,同時peer A發送給turn server數據也會被turn server中轉給client A。如圖中所示,由于client 沒有注冊peer B的權限,那么client 發給peer B的數據會被turn server丟棄,同時peer B發給client 的數據也會被turn server丟棄。

7.1、UDP協議的Relay

首先介紹RFC5766,UDP協議的relay,主要有兩種方式:第一種是Send and Data methods,第二種是channels。下面分別介紹這兩個方式。

7.1.1方式一、Send and Data methods,具體交互過程如下:



(1)首先client發送Allocate request 給TURN server 請求一個分配。其中攜帶的主要屬性:

Transaction-Id=0xA56250D3F17ABE679422DE85 :事務ID用于標識一個交互過程 SOFTWARE="Example client, version 1.03" :可有可無的屬性 LIFETIME=3600 (1 hour) :請求分配的有效期,期望有效期 REQUESTED-TRANSPORT=17 (UDP) :未來數據傳輸采用的協議 DONT-FRAGMENT :請求不要將數據進行分割分包轉發給PEER。

(2)TURN server回復一個Allocate error response響應,表示請求未通過授權,需要進行用戶驗證:

Transaction-Id=0xA56250D3F17ABE679422DE85 :事務ID要和(1)的一樣 SOFTWARE="Example server, version 1.17" :可有可無 ERROR-CODE=401 (Unauthorized) :錯誤碼 REALM="example.com" :為了讓客戶端下次請求的時候要帶上這個屬性 NONCE="adl7W7PeDU4hKE72jdaQvbAMcr6h39sm" :為了讓客戶端下次請求的時候要帶上這個屬性

(3)Client收到響應后,發現是401錯誤響應,那么需要給TURN server提供用戶名和密碼進行驗證。于是client重新發送Allocate request請求:
Transaction-Id=0xC271E932AD7446A32C234492 :另起一個事務,標識另外一個請求過程

SOFTWARE="Example client 1.03" :同(1) LIFETIME=3600 (1 hour) :同(1) REQUESTED-TRANSPORT=17 (UDP) :同(1) DONT-FRAGMENT :同(1) USERNAME="George" :client的用戶名 REALM="example.com" :2)中TURN server響應給client的 NONCE="adl7W7PeDU4hKE72jdaQvbAMcr6h39sm" :2)中TURN server響應給client的 MESSAGE-INTEGRITY=... :一些加密信息,用于驗證client的

(4)TURN server 驗證client通過后給client響應Allocate success response:

Transaction-Id=0xC271E932AD7446A32C234492 :事務ID要和(3)相同 SOFTWARE="Example server, version 1.17" :同(3) LIFETIME=1200 (20 minutes) :該分配的有效期,實際有效期 XOR-RELAYED-ADDRESS=192.0.2.15:50000 :給client分配的relay地址 XOR-MAPPED-ADDRESS=192.0.2.1:7000 :client的經NAT后的映射地址 MESSAGE-INTEGRITY=... :一些加密信息

(5)收到TURN server的success響應后,client發送CreatePermission request來創建peer的權限:

Transaction-Id=0xE5913A8F460956CA277D3319 :另起一個事務,標識另外一個請求過程 XOR-PEER-ADDRESS=192.0.2.150:0 :需要創建權限的peer的IP地址,權限只與IP地址相關,與端口無關 USERNAME="George" REALM="example.com" :2)中TURN server響應給client的 NONCE="adl7W7PeDU4hKE72jdaQvbAMcr6h39sm" :2)中TURN server響應給client的 MESSAGE-INTEGRITY=... :一些加密的信息

(6)TURN server接受創建權限請求,發送CreatePermission success resp 響應給client:

Transaction-Id=0xE5913A8F460956CA277D3319 :事務ID要和(5)相同 MESSAGE-INTEGRITY=... :一些加密信息

(7)創建權限成功后,client就可以用Send indication來發送數據給TURN server然后由TURN server將數據relay給peer:

Transaction-Id=0x1278E9ACA2711637EF7D3328 :另起一個事務,標識另外一個請求過程 XOR-PEER-ADDRESS=192.0.2.150:32102 :需要發送數據的peer監聽的IP: PORT(注意IP一定要和注冊權限的時候的IP一樣,否則會被拒絕relay并響應錯誤) DONT-FRAGMENT :請求TURN server不要將data數據分片發送 DATA=... :client需要發給peer的數據內容

(8)TURN server收到Send indication請求后,進行一些權限檢查后,提取出協議包中的data屬性中的數據內容,然后將數據內容用UDP協議從client的relay地址(源:192.0.2.15:50000)發送給peer(目的:192.0.2.150:32102):

-- UDP dgm -> data=... : 發給peer的UDP 數據包

(9)peer收到UPD數據包后,如果有響應數據,那么就將響應數據用UDP發給TURN server的192.0.2.15:50000地址:

<- UDP dgm – data=... :響應給TURN server的UDP數據包

(10)TURN server在client的relay地址(192.0.2.15:50000)那收到peer(192.0.2.150:32102)的UDP數據包,這時TURN server需要檢測client是否注冊了IP192.0.2.150的權限,如果沒有就會丟棄該數據包。如果有那么就取出UDP數據包中的data部分,然后將data封裝成TURN協議數據包,給client發送Data indication:

Transaction-Id=0x8231AE8F9242DA9FF287FEFF :協議并不要求這個事務ID要和(7)中的一樣 XOR-PEER-ADDRESS=192.0.2.150:32102 :標識數據來自哪個peer DATA=... : peer 發給client的數據內容

以上是Send and Data methods方式的核心交互過程,較為完整交互過程可以查看一下協議文檔。這里有個問題需要說明一下,就是每個allocation都有一個有效期,client需要把握好有效期,及時在有效期內發送refresh request來刷新延長有效期。

7.1.2方式二、channels,具體交互過程如下:




(1)–(6)交互過程和Send and Data methods方式是一樣的,這里就不在重復了。

(7)權限創建成功后,client發送ChannelBind request給TURN server請求進行channel bind。

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID CHANNEL-NUMBER=0x4000 :client定義的bind channel ID XOR-PEER-ADDRESS=192.0.2.210:49191 :peer B的IP和PORT USERNAME="George" :同方式一 REALM="example.com" :同方式一 NONCE="adl7W7PeDU4hKE72jdaQvbAMcr6h39sm" :同方式一 MESSAGE-INTEGRITY=... :同方式一

(8)TURN server接受channelBind請求后,給client發送ChannelBind success response響應

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID,和(7)相同 MESSAGE-INTEGRITY=... |

(9)client收到ChannelBind success response后就可以通過ChannelData來發送數據了。

Channel-number=0x4000 :(7)中定義bind channel ID Data=... :client需要發給peer B的數據內容

(10)TURN server收到ChannelData后首先從TURN協議數據包中提取出Channel-number,接著查找Channel-number是否已經綁定peer,如果沒有就返回錯誤并丟棄數據包;如果查找到有綁定peer,那么就提前出Data屬性中的數據內容用UDP協議通過client的relay地址(源:192.0.2.15:50000)發送給peer B(目的:192.0.2.210:49191)。

--- UDP datagram ---------> Data=... 發給peer B的UDP 數據包

(11)peer收到UPD數據包后,如果有響應數據,那么就將響應數據用UDP發給TURN server的192.0.2.15:50000地址

<-- UDP datagram ---------- Data=... :peer 發給client的數據內容

(12)TURN server在client的relay地址(192.0.2.15:50000)那收到peer(192.0.2.210:49191)的UDP數據包,這時TURN server需要檢測client是否注冊了IP192.0.2.150的權限,如果沒有就會丟棄該數據包。如果有注冊權限,那就檢查client是有channel綁定該peer,如果有那么就通過Channel Data 方式relay數據給client,否則就通過方式一中的Data indication 方式relay數據給client

Channel-number=0x4000 :(7)中定義bind channel ID Data=... :peer B發給client的數據內容

以上是channels的核心交互過程,較為詳細的過程可以查看協議文檔。方式二比方式一多了一個channel Bind的步驟,這個步驟是為了告訴TURN server接下來以Channel-number標識的協議數據包是要發給誰的,這樣才使得ChannelData中只要攜帶一個Channel-number頭部信息就可以,而不用攜帶方式一中的Transaction-Id、XOR-PEER-ADDRESS等額外的頭部信息,減少數據量。

7.2、TCP協議的Relay

TCP協議的relay是在RFC6062中描述,其中主要有兩種情況下的relay:1. Client to peer 2. Client to client。下面分別介紹兩種情況下relay。

7.2.1情況一、Client to peer,網絡拓撲如下:


在上面的網絡拓撲下,有兩種方式的relay:1. TURN Client 主動發起的relay 2. TURN Peer主動發起的relay。下面分別介紹這兩種方式的交互過程。這里Turn Client表示能夠理解TURN協議的主機,而Turn Peer表示普通的一般主機。

7.2.1.1)TURN Client 主動發起的relay:

在這種方式下,TURN server要能夠直接連接上TURN Peer監聽的端口才行。具體交互過程如下:



1)–(6)交互過程和RFC5766的是基本一樣的,這里就不在重復了。所不同的是RFC5766中是UDP協議,而這里是TCP協議,并且(1)–(6)是在一個連接中完成,我們稱這個連接為control connection。

(7)client創建權限成功后,通過control connection發送Connect request給TURN server請求TURN server去連接Peer A

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID XOR-PEER-ADDRESS=192.0.2.210:49191 :Peer A監聽的IP和端口

(8)TURN server收到Connect request后, 它會通過client的relay地址(源:192.0.2.15:50000)嘗試TCP連接到Peer A的192.0.2.210:49191,如果連接不成功,那么給client響應錯誤碼為447的錯誤。如果連接成功那么轉入(9),我們稱這個連接為Peer data connection

(9)TURN server連接Peer A成功后,給client發送Connect success response

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID,同(7) CONNECTION-ID=0x123456787 :TURN server給client響應的標識,用于將兩條TCP連接聯系起來用的。

(10)client在control connection上收到Connect success response,那么client需要建立另外一條TCP連接連上TURN server,我們稱這條連接為new connection。Client通過new connection給TURN server發送ConnectionBind request,請求將new connection和Peer data connection進行綁定。

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID CONNECTION-ID=0x123456787 :(9)中收到的CONNECTION-ID

(11)TURN server 收到ConnectionBind request后,進行一些操作,把new connection和Peer A connection兩條TCP連接聯系起來。

通過上面11個步驟以后,client和peer A就能分別通過new connection和Peer data connection兩條TCP連接來發送數據了。Client通過new connection發送的數據到達TURN server,TURN server就會將數據原封不動通過Peer data connection轉發給Peer A,同樣對于Peer A也是一樣的,TURN server就像進行端口轉發一樣了。這里有個問題是:Peer A connection這條TCP連接要比new connection這條TCP連接早一些建立起來的,這樣在new connection建立起來之前peer A就開始發送數據的話,那么TURN server這個時候是無法將數據轉發給client的,所以RFC6062協議要求,只要Peer data connection連接建立好了,那么TURN server就必須做好準備接收peer A的數據,并將接收到的數據buffer住,等new connection建立好后在轉發給client。但是,有些開源實現并沒有這樣做,所以這點要注意一下。

7.2.1.2)TURN Peer主動發起的relay:

在這種方式下,TURN Peer可以位于NAT后面,具體交互如下:



1)–(6)交互過程和方式1的是一樣的,這里就不在重復了。

(7)Peer A通過192.0.2.210:49191向client的relay地址192.0.2.15:50000發起TCP連接。TURN server 馬上accept這個TCP連接并做好buffer Peer A發送的數據流的準備。然后,TURN server檢查 擁有relay地址192.0.2.15:50000的client是否已經注冊了Peer A(192.0.2.210)的權限,如果沒有,那么TURN server會馬上close剛剛accept的連接。如果有,那么轉向(8),我們把這個連接稱為peer data connection

(8)TURN server 查找到擁有relay地址192.0.2.15:50000的client的control connection,通過control connection給client發送ConnectionAttempt indication。

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID XOR-PEER-ADDRESS=192.0.2.210:49191 :(7)中accept那個peer A的IP和端口 CONNECTION-ID=0x789465213545 :TURN server給client響應的標識,用于將兩條TCP連接聯系起來用的

(9)client收到ConnectionAttempt indication,如果接收這個peer的話,那么client會新起一個連接連上TURN server,我們稱這個連接為new connection,client通過new connection給TURN server發送ConnectionBind request,請求綁定peer data connection。

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID CONNECTION-ID=0x789465213545 : (8)中收到的CONNECTION-ID

(10)TURN server收到ConnectionBind request后會通過new connection給client發送ConnectionBind request success response。
通過上面10個步驟以后,client和peer A就能分別通過new connection和Peer data connection兩條TCP連接來發送數據了。這個方式同樣存在方式1中的數據buffer住問題。在這種情況下,在Peer A看來與之通信的是Endpoint(client的relay地址192.0.2.15:50000),Peer A不需要知道真實的Client的地址。

7.2.2情況二、Client to client,網絡拓撲結構如下:


這種情況下,RFC6062文檔中并沒有講到,估計是因為這種情況是情況一的一個特例而已,我這里展開來講一下是希望能幫助大家更加深刻理解協議本身。

TURN Client1和TURN Client2(1)-(6)步驟的交互情況基本和上面的一樣,并且是比較獨立的,所以下面直接給出了。

TURN Client1 的(1)-(6)步驟交互情況如下:

TURN Client2 的(1)-(6)步驟交互情況如下:

從上面的交互可以知道TURN Client 1 的relay地址是:192.0.2.15:50000 ,NAT映射后的地址是:192.0.2.1:7000,而TURN Client2的relay地址是:192.0.2.150:40000 ,NAT映射后的地址是:192.0.2.2:7000。下面繼續給出TURN Client 1和TURN Client 2的其他交互情況,由于它們和TURN server的交互帶有一定的時序性,下面會交錯給出它們和TURN server的交互步驟。TURN Client1和TURN Client2是對稱,這里不妨假設TURN Client1是數據交互的發起者,具體交互過程如下:

(7)TURN Client1 首先通過control connection1發送Connect request給TURN server,請求連接TURN Client 2的relay地址192.0.2.150:40000。

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID XOR-PEER-ADDRESS=192.0.2.150:40000 : TURN Client2的relay地址

(8)TURN server收到Connect request后, 它會通過TURN Client1的relay地址(源:192.0.2.15:50000)嘗試TCP連接到192.0.2.150:40000,這個連接一般都會成功,因為這個是TURN server給的relay地址,我們稱這個連接為peer data connection1

(9)TURN server連接192.0.2.150:40000成功后,給TURN Client1發送Connect success response

Transaction-Id=0x6490D3BC175AFF3D84513212:事務ID CONNECTION-ID=0x123456787 :TURN server給client響應的標識,用于將兩條TCP連接聯系起來用的

(10)這個步驟和(9)幾乎同時發生的,TURN server發現TURN Client2的relay地址192.0.2.150:40000有個TCP連接上來,那么TURN server馬上accept這個連接,我們稱這個連接是peer data connection2(其實就是peer data connection1);經過權限檢查后,TURN server通過TURN Client2的control connection2給TURN Client2發送ConnectionAttempt indication

Transaction-Id=0x6490D3BC175AFF3D84511111 :事務ID XOR-PEER-ADDRESS=192.0.2.15:50000 :TURN Client1的relay地址 CONNECTION-ID=0x789465213545 :TURN server給client響應的標識,用于將兩條TCP連接聯系起來用的

(11)TURN Client1 收到Connect success response后,另起一個TCP connection連接上TURN server,我們稱這個連接為new connection1。TURN Client1通過new connection1給TURN server 發送ConnectionBind request

Transaction-Id=0x6490D3BC175AFF3D84513212 :事務ID CONNECTION-ID=0x123456787 : (9)中TURN server響應的CONNECTION-ID

(12)這個步驟幾乎和(11)同時發生,TURN Client2 收到ConnectionAttempt indication,表示接受,然后它另起一個TCP connection連接上TURN server我們稱這個連接為new connection2。TURN Client2通過new connection2給TURN server發送ConnectionBind request。

Transaction-Id=0x6490D3BC175AFF3D84511111 :事務ID CONNECTION-ID=0x789465213545 :(10)中TURN server響應的CONNECTION-ID

(13)和(14)TURN server分別通過new connection1和new connection2給TURN Client 1和TURN Client 2發送ConnectionBind request success response。

通過以上14個步驟,TURN Client 1就能借助new connection1和peer data connection1與TURN Client 2進行數據交互。而TURN Client 2借助new connection2和peer data connection2與TURN Client 1進行數據交互。

總結

以上是生活随笔為你收集整理的P2P技术详解(三):P2P中的NAT穿越(打洞)方案详解(进阶分析篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品久久久中文字幕人妻 | 亚洲日韩av一区二区三区四区 | 久久久精品成人免费观看 | √8天堂资源地址中文在线 | 沈阳熟女露脸对白视频 | 精品国偷自产在线 | 免费看男女做好爽好硬视频 | 77777熟女视频在线观看 а天堂中文在线官网 | 亚洲欧美国产精品专区久久 | 欧美日本精品一区二区三区 | 欧美日韩一区二区综合 | 亚洲日韩av一区二区三区四区 | 亚洲а∨天堂久久精品2021 | 国产精品a成v人在线播放 | 国产精品丝袜黑色高跟鞋 | 欧美激情一区二区三区成人 | 久久亚洲中文字幕精品一区 | 九九热爱视频精品 | 亚洲精品一区二区三区婷婷月 | 2020最新国产自产精品 | 亚洲乱码国产乱码精品精 | 欧美freesex黑人又粗又大 | 色婷婷香蕉在线一区二区 | 对白脏话肉麻粗话av | 精品一区二区三区无码免费视频 | 色婷婷av一区二区三区之红樱桃 | 午夜理论片yy44880影院 | 娇妻被黑人粗大高潮白浆 | 沈阳熟女露脸对白视频 | 日本丰满熟妇videos | 日本xxxx色视频在线观看免费 | 国产口爆吞精在线视频 | 久久精品人人做人人综合试看 | 亚洲中文字幕无码中文字在线 | 东京无码熟妇人妻av在线网址 | 久久天天躁狠狠躁夜夜免费观看 | 国产美女精品一区二区三区 | 女人高潮内射99精品 | 亚洲爆乳大丰满无码专区 | 亚洲の无码国产の无码影院 | 色 综合 欧美 亚洲 国产 | 樱花草在线社区www | 99精品久久毛片a片 | 丰满少妇熟乱xxxxx视频 | 日日橹狠狠爱欧美视频 | 天天躁日日躁狠狠躁免费麻豆 | 亚洲国产av精品一区二区蜜芽 | 中文无码精品a∨在线观看不卡 | 东北女人啪啪对白 | 人人妻人人澡人人爽人人精品 | 少妇邻居内射在线 | 水蜜桃色314在线观看 | 久久久久亚洲精品男人的天堂 | 亚洲一区二区三区无码久久 | 精品日本一区二区三区在线观看 | 伊人久久婷婷五月综合97色 | 国产亚av手机在线观看 | 人妻熟女一区 | 国产亚洲精品久久久久久久 | 黑森林福利视频导航 | 久久久久久av无码免费看大片 | ass日本丰满熟妇pics | 国产莉萝无码av在线播放 | 国产真实乱对白精彩久久 | 亚无码乱人伦一区二区 | 免费看男女做好爽好硬视频 | 一本色道久久综合狠狠躁 | 亚洲国产精华液网站w | 久久久av男人的天堂 | 国产激情无码一区二区app | 欧美日韩视频无码一区二区三 | 久久亚洲国产成人精品性色 | 国产精华av午夜在线观看 | 97无码免费人妻超级碰碰夜夜 | 兔费看少妇性l交大片免费 | 成 人影片 免费观看 | 国产精品久久久久久亚洲毛片 | 少妇久久久久久人妻无码 | 正在播放东北夫妻内射 | 日产精品高潮呻吟av久久 | 成人免费视频视频在线观看 免费 | 日本一卡2卡3卡四卡精品网站 | 日本一卡2卡3卡四卡精品网站 | 亚洲国产欧美日韩精品一区二区三区 | 久久精品人妻少妇一区二区三区 | 欧美国产日韩久久mv | 久久亚洲国产成人精品性色 | 国产xxx69麻豆国语对白 | 国产成人一区二区三区在线观看 | 国产精品无码成人午夜电影 | 国产99久久精品一区二区 | 国产欧美精品一区二区三区 | 影音先锋中文字幕无码 | 久久99精品国产麻豆 | 国产舌乚八伦偷品w中 | 国产又粗又硬又大爽黄老大爷视 | 免费国产成人高清在线观看网站 | 国产无遮挡吃胸膜奶免费看 | 国产av无码专区亚洲a∨毛片 | 免费无码午夜福利片69 | 丝袜美腿亚洲一区二区 | 岛国片人妻三上悠亚 | 成人欧美一区二区三区黑人免费 | 扒开双腿吃奶呻吟做受视频 | 精品国产一区二区三区四区 | 久久久精品成人免费观看 | 99er热精品视频 | 麻豆蜜桃av蜜臀av色欲av | 国产精品-区区久久久狼 | 波多野结衣一区二区三区av免费 | 国产午夜手机精彩视频 | 国产在线aaa片一区二区99 | 国产黑色丝袜在线播放 | 亚洲精品国产a久久久久久 | 国产午夜亚洲精品不卡下载 | 领导边摸边吃奶边做爽在线观看 | 天下第一社区视频www日本 | 欧美日韩综合一区二区三区 | 久久综合色之久久综合 | 女人色极品影院 | 久久精品一区二区三区四区 | 免费无码肉片在线观看 | 亚洲精品成a人在线观看 | 婷婷五月综合缴情在线视频 | 国产熟妇高潮叫床视频播放 | 欧洲vodafone精品性 | 天天av天天av天天透 | 无码毛片视频一区二区本码 | 久久精品女人的天堂av | 国产午夜亚洲精品不卡 | 麻豆蜜桃av蜜臀av色欲av | 久久国产精品_国产精品 | 国产成人精品久久亚洲高清不卡 | 内射爽无广熟女亚洲 | 精品aⅴ一区二区三区 | 久久亚洲国产成人精品性色 | 久久综合香蕉国产蜜臀av | 波多野42部无码喷潮在线 | 日日噜噜噜噜夜夜爽亚洲精品 | 黑人大群体交免费视频 | 国产国语老龄妇女a片 | 成人无码视频免费播放 | 老头边吃奶边弄进去呻吟 | 亚洲一区二区三区在线观看网站 | 欧美放荡的少妇 | 亚洲色成人中文字幕网站 | 亚洲熟妇色xxxxx亚洲 | 亚洲精品国产a久久久久久 | 熟女俱乐部五十路六十路av | 人妻有码中文字幕在线 | 丰满人妻翻云覆雨呻吟视频 | 日韩少妇白浆无码系列 | 少妇性俱乐部纵欲狂欢电影 | 亚洲a无码综合a国产av中文 | 嫩b人妻精品一区二区三区 | 久久综合网欧美色妞网 | 久久精品一区二区三区四区 | 久热国产vs视频在线观看 | 久久久久久av无码免费看大片 | 午夜精品久久久内射近拍高清 | 日韩精品无码一本二本三本色 | 国产激情精品一区二区三区 | 伊人久久大香线蕉av一区二区 | 中文精品久久久久人妻不卡 | 亚洲日韩av一区二区三区四区 | 九九久久精品国产免费看小说 | 亚洲人成网站免费播放 | 国产av一区二区精品久久凹凸 | 中文字幕乱妇无码av在线 | 成人精品视频一区二区 | 午夜福利电影 | 装睡被陌生人摸出水好爽 | 无码纯肉视频在线观看 | 亚洲精品久久久久久一区二区 | 亚洲中文无码av永久不收费 | 欧美一区二区三区视频在线观看 | 久久久久久久人妻无码中文字幕爆 | 无码成人精品区在线观看 | 天干天干啦夜天干天2017 | 中文字幕乱码人妻二区三区 | 中文字幕无码乱人伦 | 娇妻被黑人粗大高潮白浆 | 天天综合网天天综合色 | 在线播放免费人成毛片乱码 | 国产精品资源一区二区 | 亚洲熟妇色xxxxx欧美老妇 | 色综合久久网 | 中文字幕无码av波多野吉衣 | 性开放的女人aaa片 | 亚洲精品综合一区二区三区在线 | 2019午夜福利不卡片在线 | 无码国模国产在线观看 | 性欧美熟妇videofreesex | 国产手机在线αⅴ片无码观看 | 亚洲一区二区三区 | 理论片87福利理论电影 | 精品国产麻豆免费人成网站 | 麻豆成人精品国产免费 | 精品偷拍一区二区三区在线看 | 亚洲熟妇色xxxxx亚洲 | 欧美老妇交乱视频在线观看 | 强辱丰满人妻hd中文字幕 | 免费无码肉片在线观看 | 亚洲国产精品毛片av不卡在线 | 国产9 9在线 | 中文 | 久久国语露脸国产精品电影 | av在线亚洲欧洲日产一区二区 | 国产婷婷色一区二区三区在线 | 免费人成在线观看网站 | 久久综合九色综合97网 | 天天摸天天透天天添 | 亚洲国精产品一二二线 | 波多野结衣高清一区二区三区 | 亚洲色偷偷偷综合网 | 女人被男人躁得好爽免费视频 | 日韩精品一区二区av在线 | 午夜福利不卡在线视频 | 久久亚洲精品中文字幕无男同 | 久久久国产一区二区三区 | 色诱久久久久综合网ywww | 欧美xxxx黑人又粗又长 | 久久 国产 尿 小便 嘘嘘 | 久久久久成人片免费观看蜜芽 | √8天堂资源地址中文在线 | 精品久久久中文字幕人妻 | 啦啦啦www在线观看免费视频 | 成人精品一区二区三区中文字幕 | 久久精品国产一区二区三区肥胖 | 精品久久久无码中文字幕 | 欧美性生交活xxxxxdddd | 国产成人一区二区三区别 | 国产免费无码一区二区视频 | 美女极度色诱视频国产 | 天堂亚洲2017在线观看 | 亚洲精品中文字幕久久久久 | 国产亚洲精品久久久久久 | 免费观看又污又黄的网站 | 免费观看黄网站 | 中文字幕无码人妻少妇免费 | 亚洲国产欧美日韩精品一区二区三区 | 日本在线高清不卡免费播放 | 亚洲成色在线综合网站 | 欧美 日韩 人妻 高清 中文 | 国产精品美女久久久久av爽李琼 | 欧美肥老太牲交大战 | 日韩亚洲欧美精品综合 | 国产成人综合在线女婷五月99播放 | 丰满少妇熟乱xxxxx视频 | 天天综合网天天综合色 | 亚洲精品久久久久avwww潮水 | 特黄特色大片免费播放器图片 | 欧美老人巨大xxxx做受 | 久久久www成人免费毛片 | 久久国产36精品色熟妇 | 熟妇人妻无码xxx视频 | 天天综合网天天综合色 | 午夜丰满少妇性开放视频 | 老子影院午夜精品无码 | 97资源共享在线视频 | 国产性生交xxxxx无码 | 成人精品一区二区三区中文字幕 | 国产精品久久久 | 亚洲国产综合无码一区 | 99久久精品无码一区二区毛片 | 亚洲人成人无码网www国产 | 亚洲の无码国产の无码影院 | 伊人久久婷婷五月综合97色 | 亚洲综合无码一区二区三区 | 国产亚洲精品久久久久久 | 日本精品人妻无码77777 天堂一区人妻无码 | 99久久精品无码一区二区毛片 | 狂野欧美性猛xxxx乱大交 | 黑人巨大精品欧美黑寡妇 | 午夜精品久久久内射近拍高清 | 国产麻豆精品一区二区三区v视界 | 婷婷丁香五月天综合东京热 | 好男人www社区 | 亚洲欧洲中文日韩av乱码 | 国产口爆吞精在线视频 | 国产成人一区二区三区在线观看 | 精品国产一区二区三区av 性色 | 少妇性荡欲午夜性开放视频剧场 | 蜜桃视频插满18在线观看 | 丰满岳乱妇在线观看中字无码 | 亚洲色无码一区二区三区 | 成人精品一区二区三区中文字幕 | 无码人妻黑人中文字幕 | 国产内射爽爽大片视频社区在线 | 午夜福利一区二区三区在线观看 | 亚洲va欧美va天堂v国产综合 | 日韩精品无码免费一区二区三区 | 欧美精品在线观看 | 亚洲娇小与黑人巨大交 | 午夜精品一区二区三区在线观看 | 97久久国产亚洲精品超碰热 | 国产欧美熟妇另类久久久 | 日韩精品成人一区二区三区 | 精品乱码久久久久久久 | 好屌草这里只有精品 | 在线播放无码字幕亚洲 | 四虎国产精品免费久久 | 日本一卡二卡不卡视频查询 | 四十如虎的丰满熟妇啪啪 | 黑人粗大猛烈进出高潮视频 | 天天摸天天碰天天添 | 成人试看120秒体验区 | 高潮喷水的毛片 | 天堂无码人妻精品一区二区三区 | 欧美自拍另类欧美综合图片区 | 九九热爱视频精品 | 久久久久av无码免费网 | 99国产精品白浆在线观看免费 | 中文精品久久久久人妻不卡 | 国产av一区二区三区最新精品 | 成熟人妻av无码专区 | 高清无码午夜福利视频 | 伦伦影院午夜理论片 | 久久久国产一区二区三区 | 99国产欧美久久久精品 | 无码乱肉视频免费大全合集 | 国产无遮挡又黄又爽免费视频 | 亚洲一区二区三区香蕉 | 亚洲人成无码网www | 欧美黑人性暴力猛交喷水 | 国产午夜视频在线观看 | 少妇性l交大片欧洲热妇乱xxx | 亚洲区小说区激情区图片区 | 麻豆果冻传媒2021精品传媒一区下载 | 国产成人综合色在线观看网站 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 在线精品亚洲一区二区 | 亚洲成av人片天堂网无码】 | 99久久亚洲精品无码毛片 | 日韩欧美群交p片內射中文 | 久久久久se色偷偷亚洲精品av | 日韩av无码一区二区三区 | 精品国产成人一区二区三区 | 久久精品人人做人人综合 | 中文字幕 亚洲精品 第1页 | 亚洲人成网站免费播放 | 在线播放免费人成毛片乱码 | 亚洲欧美日韩成人高清在线一区 | 对白脏话肉麻粗话av | 牲欲强的熟妇农村老妇女视频 | 日本一区二区三区免费高清 | 国精产品一区二区三区 | 亚洲日韩av一区二区三区四区 | 少妇性俱乐部纵欲狂欢电影 | 波多野结衣aⅴ在线 | 在线观看免费人成视频 | 亚洲欧美日韩国产精品一区二区 | 久久无码中文字幕免费影院蜜桃 | 亚洲精品综合一区二区三区在线 | 午夜熟女插插xx免费视频 | www国产亚洲精品久久久日本 | 西西人体www44rt大胆高清 | 久久久av男人的天堂 | 久久综合给久久狠狠97色 | 人人爽人人爽人人片av亚洲 | 亚洲欧美日韩综合久久久 | 国内丰满熟女出轨videos | 日欧一片内射va在线影院 | 久久精品国产亚洲精品 | 1000部啪啪未满十八勿入下载 | 黑人玩弄人妻中文在线 | 欧美zoozzooz性欧美 | 人妻插b视频一区二区三区 | 国产在线精品一区二区三区直播 | 国内精品人妻无码久久久影院蜜桃 | 欧美人与禽zoz0性伦交 | 亚洲一区二区三区 | 久久国语露脸国产精品电影 | 东京一本一道一二三区 | 无码毛片视频一区二区本码 | 久久久国产一区二区三区 | 欧美老妇交乱视频在线观看 | 少妇性荡欲午夜性开放视频剧场 | 国产精品18久久久久久麻辣 | 免费男性肉肉影院 | 无码吃奶揉捏奶头高潮视频 | 国内精品久久毛片一区二区 | 暴力强奷在线播放无码 | 色一情一乱一伦 | 午夜嘿嘿嘿影院 | 天堂无码人妻精品一区二区三区 | 秋霞成人午夜鲁丝一区二区三区 | 无套内射视频囯产 | 少妇性l交大片欧洲热妇乱xxx | 激情爆乳一区二区三区 | 波多野结衣av一区二区全免费观看 | 无码人妻精品一区二区三区下载 | 久久综合狠狠综合久久综合88 | 在线观看国产一区二区三区 | 动漫av一区二区在线观看 | 性做久久久久久久免费看 | 精品无码一区二区三区爱欲 | 2019nv天堂香蕉在线观看 | 欧美性黑人极品hd | 久久久中文字幕日本无吗 | 国产精品久久国产精品99 | 久久久久国色av免费观看性色 | 大肉大捧一进一出好爽视频 | 啦啦啦www在线观看免费视频 | 2019nv天堂香蕉在线观看 | 亚洲中文字幕在线观看 | 国产偷自视频区视频 | 久久精品国产一区二区三区肥胖 | 亚洲日韩乱码中文无码蜜桃臀网站 | 中文字幕日韩精品一区二区三区 | 国产精品igao视频网 | 国产成人精品视频ⅴa片软件竹菊 | 人妻少妇被猛烈进入中文字幕 | 人人妻人人澡人人爽欧美一区 | 久久久婷婷五月亚洲97号色 | 99久久精品午夜一区二区 | 亚洲人交乣女bbw | 亚洲天堂2017无码中文 | 乱码午夜-极国产极内射 | 国产色精品久久人妻 | 日本一卡二卡不卡视频查询 | 中文字幕无码av激情不卡 | 亚洲成av人在线观看网址 | 日本欧美一区二区三区乱码 | 精品午夜福利在线观看 | 丝袜美腿亚洲一区二区 | 香蕉久久久久久av成人 | 最新国产乱人伦偷精品免费网站 | 少妇的肉体aa片免费 | 成人一在线视频日韩国产 | 性色欲网站人妻丰满中文久久不卡 | 97久久超碰中文字幕 | 奇米影视7777久久精品人人爽 | 欧美日本日韩 | 亚洲乱码中文字幕在线 | 天堂亚洲免费视频 | 午夜丰满少妇性开放视频 | 激情内射亚州一区二区三区爱妻 | 国内精品久久毛片一区二区 | 欧美丰满少妇xxxx性 | 蜜臀aⅴ国产精品久久久国产老师 | 人人妻人人澡人人爽精品欧美 | а天堂中文在线官网 | 久久精品视频在线看15 | 久久伊人色av天堂九九小黄鸭 | 欧美日韩精品 | 精品人人妻人人澡人人爽人人 | 色 综合 欧美 亚洲 国产 | 野外少妇愉情中文字幕 | 夜夜影院未满十八勿进 | 成人无码精品1区2区3区免费看 | 麻豆成人精品国产免费 | 97色伦图片97综合影院 | 国产成人人人97超碰超爽8 | 亚洲精品综合五月久久小说 | 成人免费无码大片a毛片 | 性生交片免费无码看人 | 国产人妻精品午夜福利免费 | 强奷人妻日本中文字幕 | 国产在热线精品视频 | 亚洲欧洲无卡二区视頻 | 麻豆蜜桃av蜜臀av色欲av | 亚拍精品一区二区三区探花 | 免费国产黄网站在线观看 | 亚洲男人av香蕉爽爽爽爽 | 狠狠cao日日穞夜夜穞av | 色诱久久久久综合网ywww | 国产精品99爱免费视频 | 日日麻批免费40分钟无码 | 高清不卡一区二区三区 | 亚洲色偷偷偷综合网 | 亚洲狠狠色丁香婷婷综合 | 国产精品理论片在线观看 | 久久精品人妻少妇一区二区三区 | 亚洲欧美精品aaaaaa片 | 亚洲一区av无码专区在线观看 | 国产亚洲精品久久久久久大师 | 日韩少妇内射免费播放 | 无码av岛国片在线播放 | 亚洲精品一区国产 | 女人被爽到呻吟gif动态图视看 | 宝宝好涨水快流出来免费视频 | 国内精品一区二区三区不卡 | 亚洲精品国产第一综合99久久 | 国产办公室秘书无码精品99 | 超碰97人人做人人爱少妇 | 国产精品久久精品三级 | 狠狠亚洲超碰狼人久久 | 中文字幕乱码人妻无码久久 | 荡女精品导航 | 久久久精品人妻久久影视 | 免费视频欧美无人区码 | 55夜色66夜色国产精品视频 | 人人妻人人澡人人爽精品欧美 | 1000部夫妻午夜免费 | 国产后入清纯学生妹 | 精品久久久无码人妻字幂 | 日韩人妻少妇一区二区三区 | 国产两女互慰高潮视频在线观看 | 国产另类ts人妖一区二区 | 亚洲日韩中文字幕在线播放 | 日本饥渴人妻欲求不满 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国内老熟妇对白xxxxhd | 青草视频在线播放 | 成人无码精品一区二区三区 | 亚洲人成影院在线观看 | 成人欧美一区二区三区黑人免费 | 最近免费中文字幕中文高清百度 | 88国产精品欧美一区二区三区 | 成人精品视频一区二区 | 2020久久香蕉国产线看观看 | 久久久久免费精品国产 | 国产精品手机免费 | 亚欧洲精品在线视频免费观看 | 亚洲午夜福利在线观看 | 97无码免费人妻超级碰碰夜夜 | www一区二区www免费 | 领导边摸边吃奶边做爽在线观看 | 理论片87福利理论电影 | 福利一区二区三区视频在线观看 | 性色欲网站人妻丰满中文久久不卡 | 丰腴饱满的极品熟妇 | 国产真实夫妇视频 | 欧美国产日韩亚洲中文 | 国内揄拍国内精品少妇国语 | 久久精品国产一区二区三区肥胖 | 伊人久久大香线焦av综合影院 | 亚洲码国产精品高潮在线 | 亚洲成在人网站无码天堂 | 蜜桃无码一区二区三区 | 99视频精品全部免费免费观看 | 又紧又大又爽精品一区二区 | 成熟人妻av无码专区 | 国内少妇偷人精品视频 | 国产97在线 | 亚洲 | 午夜精品一区二区三区在线观看 | 精品日本一区二区三区在线观看 | 99久久人妻精品免费二区 | 中文字幕日产无线码一区 | 中文字幕乱妇无码av在线 | 国产国语老龄妇女a片 | 亚洲成a人一区二区三区 | 国产在线精品一区二区高清不卡 | 大肉大捧一进一出视频出来呀 | 久久午夜无码鲁丝片午夜精品 | 久久久久久久女国产乱让韩 | 亚洲男人av香蕉爽爽爽爽 | 国产黑色丝袜在线播放 | 久久精品丝袜高跟鞋 | 性开放的女人aaa片 | 国产黑色丝袜在线播放 | 夜夜躁日日躁狠狠久久av | 伊人久久大香线蕉av一区二区 | 成人欧美一区二区三区黑人 | 久久精品人人做人人综合试看 | 亚洲精品美女久久久久久久 | 国产黄在线观看免费观看不卡 | 国产精品嫩草久久久久 | 色婷婷综合中文久久一本 | 国产成人人人97超碰超爽8 | 亚洲大尺度无码无码专区 | 牲欲强的熟妇农村老妇女 | 人人澡人人透人人爽 | 狠狠色丁香久久婷婷综合五月 | 欧美怡红院免费全部视频 | 嫩b人妻精品一区二区三区 | 久久久精品国产sm最大网站 | 最近免费中文字幕中文高清百度 | 樱花草在线播放免费中文 | 国产真人无遮挡作爱免费视频 | 无码任你躁久久久久久久 | 亚洲另类伦春色综合小说 | 亚洲经典千人经典日产 | 又大又黄又粗又爽的免费视频 | 久久精品女人天堂av免费观看 | 久久久久成人精品免费播放动漫 | 在线观看免费人成视频 | 无码精品人妻一区二区三区av | 俺去俺来也www色官网 | 国内丰满熟女出轨videos | 十八禁真人啪啪免费网站 | 精品aⅴ一区二区三区 | 无码人妻av免费一区二区三区 | 天天av天天av天天透 | 天下第一社区视频www日本 | 人妻与老人中文字幕 | 国产亚洲精品精品国产亚洲综合 | 久久午夜无码鲁丝片午夜精品 | 亚洲热妇无码av在线播放 | 国产午夜无码视频在线观看 | 色婷婷欧美在线播放内射 | 日日摸夜夜摸狠狠摸婷婷 | 国产精品美女久久久久av爽李琼 | 久在线观看福利视频 | 欧美老妇与禽交 | 初尝人妻少妇中文字幕 | 久久99国产综合精品 | 亚洲综合无码一区二区三区 | 日日麻批免费40分钟无码 | 午夜福利试看120秒体验区 | 性做久久久久久久免费看 | 在线成人www免费观看视频 | 国产精品成人av在线观看 | 久久人人爽人人爽人人片av高清 | 精品国产成人一区二区三区 | 乌克兰少妇性做爰 | 色综合久久中文娱乐网 | 亚洲大尺度无码无码专区 | av无码电影一区二区三区 | 狂野欧美性猛交免费视频 | 天下第一社区视频www日本 | 曰韩少妇内射免费播放 | av小次郎收藏 | 88国产精品欧美一区二区三区 | 国产午夜无码视频在线观看 | 亚洲区欧美区综合区自拍区 | 日韩无套无码精品 | 真人与拘做受免费视频一 | 精品无码国产自产拍在线观看蜜 | 亚洲 另类 在线 欧美 制服 | 亚洲国产精品久久久久久 | 无码精品人妻一区二区三区av | 国产精品美女久久久 | 天堂一区人妻无码 | 色噜噜亚洲男人的天堂 | 1000部夫妻午夜免费 | 一本久道高清无码视频 | 久久国产精品二国产精品 | 一个人看的视频www在线 | 99er热精品视频 | 欧美日韩综合一区二区三区 | 亚洲爆乳无码专区 | 中文字幕无码日韩欧毛 | 日本精品久久久久中文字幕 | 国产精品无码一区二区桃花视频 | 人人爽人人澡人人人妻 | 97久久超碰中文字幕 | 国产精品国产三级国产专播 | 麻豆国产丝袜白领秘书在线观看 | 日日摸日日碰夜夜爽av | 伊人久久大香线蕉av一区二区 | 久久人人爽人人人人片 | 国产精品久久久久影院嫩草 | 久久久久免费看成人影片 | 欧美日韩精品 | 伊在人天堂亚洲香蕉精品区 | 水蜜桃色314在线观看 | 老子影院午夜伦不卡 | 亚洲国产精华液网站w | 国产人妻久久精品二区三区老狼 | 99久久精品日本一区二区免费 | 无码福利日韩神码福利片 | 乱人伦人妻中文字幕无码 | 久久99国产综合精品 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 国内综合精品午夜久久资源 | 婷婷综合久久中文字幕蜜桃三电影 | 婷婷五月综合缴情在线视频 | 97久久国产亚洲精品超碰热 | 99久久久无码国产精品免费 | 久精品国产欧美亚洲色aⅴ大片 | 亚洲精品一区国产 | 中文字幕乱码亚洲无线三区 | 亚洲天堂2017无码 | 国产av一区二区三区最新精品 | 无码免费一区二区三区 | 国产亚洲人成a在线v网站 | 一二三四在线观看免费视频 | 精品一区二区不卡无码av | 少妇人妻av毛片在线看 | 亚洲小说图区综合在线 | 久久人人爽人人爽人人片ⅴ | 亚洲va中文字幕无码久久不卡 | 乱码午夜-极国产极内射 | 欧美性猛交xxxx富婆 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲国产成人av在线观看 | 99久久精品无码一区二区毛片 | 999久久久国产精品消防器材 | 亚洲 高清 成人 动漫 | 成人免费无码大片a毛片 | 亚无码乱人伦一区二区 | 国产精品久久久久影院嫩草 | 久久久久久久久888 | 亚洲 日韩 欧美 成人 在线观看 | 大肉大捧一进一出视频出来呀 | 中文久久乱码一区二区 | 精品人妻人人做人人爽夜夜爽 | 久久精品女人天堂av免费观看 | 红桃av一区二区三区在线无码av | 国产午夜视频在线观看 | 国精产品一品二品国精品69xx | 无码吃奶揉捏奶头高潮视频 | 任你躁国产自任一区二区三区 | 精品亚洲成av人在线观看 | 久久久国产精品无码免费专区 | 啦啦啦www在线观看免费视频 | 国产午夜手机精彩视频 | 国产成人精品一区二区在线小狼 | 国产肉丝袜在线观看 | 中文字幕人妻丝袜二区 | 亚洲爆乳无码专区 | 亚洲色大成网站www | 骚片av蜜桃精品一区 | 中文亚洲成a人片在线观看 | 我要看www免费看插插视频 | 亚洲熟妇色xxxxx欧美老妇y | 国产成人精品优优av | 亚洲精品午夜无码电影网 | 丰满妇女强制高潮18xxxx | 动漫av一区二区在线观看 | 人妻少妇精品久久 | www成人国产高清内射 | 女人被爽到呻吟gif动态图视看 | 欧美三级不卡在线观看 | 丰满人妻一区二区三区免费视频 | 日韩av无码一区二区三区不卡 | 人妻少妇精品久久 | 爽爽影院免费观看 | 人人妻人人澡人人爽欧美精品 | 亚洲啪av永久无码精品放毛片 | 国产三级精品三级男人的天堂 | 亚洲精品综合五月久久小说 | 亚洲va中文字幕无码久久不卡 | 国产成人一区二区三区别 | 国产免费无码一区二区视频 | 国产美女极度色诱视频www | 综合网日日天干夜夜久久 | 国产精品18久久久久久麻辣 | 色欲综合久久中文字幕网 | 人人爽人人爽人人片av亚洲 | 粉嫩少妇内射浓精videos | 色婷婷综合激情综在线播放 | 久久久久亚洲精品男人的天堂 | 国产乱人偷精品人妻a片 | 国产做国产爱免费视频 | av香港经典三级级 在线 | 色噜噜亚洲男人的天堂 | 九月婷婷人人澡人人添人人爽 | 亚洲精品国产精品乱码不卡 | 未满成年国产在线观看 | 内射爽无广熟女亚洲 | 亚洲乱亚洲乱妇50p | 久久久亚洲欧洲日产国码αv | 中文字幕av伊人av无码av | 日本一卡2卡3卡四卡精品网站 | 美女极度色诱视频国产 | 国产精品久久久久久久影院 | 国产精品久久国产精品99 | 欧美成人高清在线播放 | 久久国产精品_国产精品 | 成人精品天堂一区二区三区 | 蜜桃视频插满18在线观看 | 色一情一乱一伦一区二区三欧美 | 丰腴饱满的极品熟妇 | 亚洲日韩av片在线观看 | 国产后入清纯学生妹 | 无码人中文字幕 | 日韩亚洲欧美精品综合 | 国产精品亚洲综合色区韩国 | 国产福利视频一区二区 | 好爽又高潮了毛片免费下载 | 无码播放一区二区三区 | 国产情侣作爱视频免费观看 | 97资源共享在线视频 | 日韩精品无码免费一区二区三区 | 老司机亚洲精品影院 | 国产亚av手机在线观看 | 人妻插b视频一区二区三区 | 永久免费观看国产裸体美女 | 人妻人人添人妻人人爱 | 国产一区二区三区四区五区加勒比 | 未满成年国产在线观看 | 中文字幕av无码一区二区三区电影 | 国内少妇偷人精品视频 | 97久久超碰中文字幕 | 麻豆成人精品国产免费 | 亚洲成熟女人毛毛耸耸多 | 亚洲中文字幕成人无码 | 久久综合网欧美色妞网 | 精品国产成人一区二区三区 | 国产午夜无码视频在线观看 | 国产电影无码午夜在线播放 | 国产亲子乱弄免费视频 | 中文字幕久久久久人妻 | 丰满肥臀大屁股熟妇激情视频 | 精品无码一区二区三区爱欲 | 国产成人无码av片在线观看不卡 | 人人妻人人澡人人爽欧美一区九九 | 免费无码肉片在线观看 | 亚洲精品中文字幕乱码 | 国产极品视觉盛宴 | 曰本女人与公拘交酡免费视频 | 久久久成人毛片无码 | 午夜福利不卡在线视频 | 国产特级毛片aaaaaa高潮流水 | 亚洲欧美国产精品专区久久 | 中文字幕乱码中文乱码51精品 | 呦交小u女精品视频 | 又大又紧又粉嫩18p少妇 | 熟女俱乐部五十路六十路av | av小次郎收藏 | 99久久人妻精品免费二区 | 国产精品鲁鲁鲁 | 精品aⅴ一区二区三区 | 成人性做爰aaa片免费看不忠 | 日日碰狠狠丁香久燥 | 免费中文字幕日韩欧美 | 国产成人午夜福利在线播放 | 亚洲精品成人福利网站 | 人人妻人人澡人人爽欧美精品 | av无码久久久久不卡免费网站 | 亚洲区欧美区综合区自拍区 | 欧美一区二区三区视频在线观看 | 日本熟妇人妻xxxxx人hd | 伊人久久大香线蕉午夜 | 九九综合va免费看 | 国产香蕉97碰碰久久人人 | 久久久国产一区二区三区 | 狠狠色欧美亚洲狠狠色www | 中文字幕无码免费久久9一区9 | 精品久久8x国产免费观看 | 亚洲va欧美va天堂v国产综合 | 精品人妻av区 | 久久精品一区二区三区四区 | 精品国产一区二区三区四区在线看 | 1000部夫妻午夜免费 | 爱做久久久久久 | 在线精品国产一区二区三区 | 国产亚洲日韩欧美另类第八页 | 麻豆国产人妻欲求不满谁演的 | 欧美精品一区二区精品久久 | 亚洲中文字幕无码中字 | 久久精品国产精品国产精品污 | 欧美日韩视频无码一区二区三 | 夫妻免费无码v看片 | 国产精品亚洲一区二区三区喷水 | 精品无码国产自产拍在线观看蜜 | 国产suv精品一区二区五 | 美女毛片一区二区三区四区 | 粗大的内捧猛烈进出视频 | 丰满诱人的人妻3 | 色欲人妻aaaaaaa无码 | 一本久道高清无码视频 | 狠狠色噜噜狠狠狠狠7777米奇 | 在线天堂新版最新版在线8 | 麻豆国产97在线 | 欧洲 | 国产黄在线观看免费观看不卡 | 亚洲国产av精品一区二区蜜芽 | 中文字幕无码日韩欧毛 | 无码av中文字幕免费放 | 88国产精品欧美一区二区三区 | 亚洲国产精品美女久久久久 | 国产农村妇女高潮大叫 | 天天躁日日躁狠狠躁免费麻豆 | 久久精品女人天堂av免费观看 | 图片区 小说区 区 亚洲五月 | 国产办公室秘书无码精品99 | 国产高清av在线播放 | аⅴ资源天堂资源库在线 | а√天堂www在线天堂小说 | 国产肉丝袜在线观看 | 久久精品国产99久久6动漫 | 色婷婷久久一区二区三区麻豆 | 中文字幕无码人妻少妇免费 | 国产国产精品人在线视 | 亚洲无人区午夜福利码高清完整版 | 日韩av无码一区二区三区不卡 | 草草网站影院白丝内射 | 性色av无码免费一区二区三区 | 性做久久久久久久免费看 | 一本精品99久久精品77 | 98国产精品综合一区二区三区 | 久久亚洲a片com人成 | 国产真人无遮挡作爱免费视频 | 麻豆国产人妻欲求不满谁演的 | 嫩b人妻精品一区二区三区 | 亚洲国产精品一区二区美利坚 | 国产精品无码一区二区桃花视频 | 99久久亚洲精品无码毛片 | 小鲜肉自慰网站xnxx | 亚洲日本va午夜在线电影 | 在线精品国产一区二区三区 | 中文精品无码中文字幕无码专区 | 一本久久a久久精品vr综合 | 最近免费中文字幕中文高清百度 | 人妻天天爽夜夜爽一区二区 | 奇米影视7777久久精品人人爽 | 亚洲热妇无码av在线播放 | 国产区女主播在线观看 | 欧美性猛交xxxx富婆 | 久久精品中文字幕大胸 | 日本大乳高潮视频在线观看 | 色综合久久网 | 亚洲小说图区综合在线 | 少妇久久久久久人妻无码 | 人人妻人人澡人人爽欧美精品 | 清纯唯美经典一区二区 | 国产精品igao视频网 | 成熟人妻av无码专区 | 高清无码午夜福利视频 | 国产成人精品三级麻豆 | av无码不卡在线观看免费 | 激情五月综合色婷婷一区二区 | 55夜色66夜色国产精品视频 | 国产成人无码a区在线观看视频app | 成人欧美一区二区三区黑人 | 欧美日韩综合一区二区三区 | 久热国产vs视频在线观看 | 午夜男女很黄的视频 | 国产午夜手机精彩视频 | 国产精品美女久久久网av | 成人免费视频一区二区 | 麻豆国产人妻欲求不满 | 免费中文字幕日韩欧美 | 波多野结衣乳巨码无在线观看 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 99re在线播放 | 国产精品久久久 | 色综合视频一区二区三区 | 免费观看的无遮挡av | 偷窥日本少妇撒尿chinese | 国产亚洲精品久久久久久久久动漫 | yw尤物av无码国产在线观看 | 国产免费无码一区二区视频 | 又湿又紧又大又爽a视频国产 | 荫蒂被男人添的好舒服爽免费视频 | 久久精品国产99久久6动漫 | 亚洲成a人片在线观看无码3d | 内射后入在线观看一区 | 久久综合九色综合97网 | 国产激情精品一区二区三区 | 2019nv天堂香蕉在线观看 | 中文字幕 亚洲精品 第1页 | 久久久久久av无码免费看大片 | 成人欧美一区二区三区黑人 | 久久www免费人成人片 | 荫蒂添的好舒服视频囗交 | 亚洲爆乳精品无码一区二区三区 | 女人高潮内射99精品 | yw尤物av无码国产在线观看 | 国产后入清纯学生妹 | 中文字幕无码乱人伦 | 久久亚洲中文字幕无码 | 久久午夜无码鲁丝片午夜精品 | 中文字幕 亚洲精品 第1页 | 秋霞成人午夜鲁丝一区二区三区 | 欧美日韩视频无码一区二区三 | 熟妇人妻激情偷爽文 | 亚洲日韩中文字幕在线播放 | 国产一区二区三区精品视频 | 欧美激情内射喷水高潮 | 国产精品99久久精品爆乳 | 亚洲色www成人永久网址 | 国产女主播喷水视频在线观看 | 在线观看国产午夜福利片 | 国产精品欧美成人 | 日本肉体xxxx裸交 | 无码一区二区三区在线观看 | 国产成人午夜福利在线播放 | 久久综合久久自在自线精品自 | 亚洲成a人一区二区三区 | 99精品视频在线观看免费 | 天天躁夜夜躁狠狠是什么心态 | 国产精品多人p群无码 | 日韩精品a片一区二区三区妖精 | 日本护士毛茸茸高潮 | 亚洲成av人片天堂网无码】 | 波多野结衣一区二区三区av免费 | 无码国产激情在线观看 | 日日噜噜噜噜夜夜爽亚洲精品 | 午夜精品一区二区三区在线观看 | 午夜成人1000部免费视频 | 牲欲强的熟妇农村老妇女视频 | 国产精品久久福利网站 | 男人和女人高潮免费网站 | 国产av一区二区三区最新精品 | 久久精品国产99精品亚洲 | 久久无码专区国产精品s | 精品人妻av区 | 久久亚洲中文字幕无码 | 鲁鲁鲁爽爽爽在线视频观看 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 中文字幕人妻无码一夲道 | 水蜜桃色314在线观看 | 久久伊人色av天堂九九小黄鸭 | 天天综合网天天综合色 | 国产精品久久福利网站 | 亚洲成熟女人毛毛耸耸多 | 一个人看的www免费视频在线观看 | 国产午夜手机精彩视频 | 97色伦图片97综合影院 | 久久久久免费看成人影片 | 中文字幕无码免费久久99 | 18无码粉嫩小泬无套在线观看 | 午夜福利一区二区三区在线观看 | 伊人久久大香线蕉午夜 | 久久国产36精品色熟妇 | 国产乱子伦视频在线播放 | 高清国产亚洲精品自在久久 | 人人妻人人澡人人爽欧美一区九九 | 精品国产青草久久久久福利 | 日本爽爽爽爽爽爽在线观看免 | 国产亚洲精品久久久久久久久动漫 | 亚洲成a人片在线观看日本 | 性史性农村dvd毛片 | a在线观看免费网站大全 | 中文字幕无码日韩欧毛 | 日韩精品无码一区二区中文字幕 | 久久久久亚洲精品中文字幕 | 亚洲欧美国产精品专区久久 | 久久www免费人成人片 | 国产精品久久久久久亚洲毛片 | 午夜精品久久久久久久久 | 精品夜夜澡人妻无码av蜜桃 | 日韩av无码一区二区三区不卡 | 国产无av码在线观看 | 日日鲁鲁鲁夜夜爽爽狠狠 | 免费中文字幕日韩欧美 | 欧洲熟妇色 欧美 | 欧美高清在线精品一区 | 国产精品爱久久久久久久 | 欧美日韩一区二区免费视频 | 亚洲日韩精品欧美一区二区 | 亚洲小说图区综合在线 | 扒开双腿吃奶呻吟做受视频 | 欧美日韩久久久精品a片 | 国产精品久久久久影院嫩草 | 色一情一乱一伦一视频免费看 | 激情内射日本一区二区三区 | 永久免费观看国产裸体美女 | 国产精品99久久精品爆乳 | 中文无码精品a∨在线观看不卡 | 少妇无套内谢久久久久 | 成人亚洲精品久久久久 | 装睡被陌生人摸出水好爽 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 亚洲熟妇色xxxxx亚洲 | 无码人妻少妇伦在线电影 | 国产超级va在线观看视频 | 欧美成人高清在线播放 | 丰满岳乱妇在线观看中字无码 | 国产精品嫩草久久久久 | 中文精品无码中文字幕无码专区 | 偷窥村妇洗澡毛毛多 | 4hu四虎永久在线观看 | 亚洲一区二区三区 | 亚洲а∨天堂久久精品2021 | 成人影院yy111111在线观看 | 国产综合久久久久鬼色 | 国产成人一区二区三区别 | 亚洲中文字幕无码中文字在线 | 日韩精品久久久肉伦网站 | 在线 国产 欧美 亚洲 天堂 | 永久免费观看国产裸体美女 | 未满小14洗澡无码视频网站 | 午夜无码人妻av大片色欲 | 九九热爱视频精品 | 精品久久久中文字幕人妻 | 亚洲中文字幕av在天堂 | 成人精品一区二区三区中文字幕 | 性开放的女人aaa片 | 精品无码国产自产拍在线观看蜜 | 亚洲精品久久久久久久久久久 | 老熟妇乱子伦牲交视频 | 无码免费一区二区三区 | 人人妻人人澡人人爽欧美精品 | 成年女人永久免费看片 | 午夜福利一区二区三区在线观看 | 成熟女人特级毛片www免费 | 内射欧美老妇wbb | 欧美阿v高清资源不卡在线播放 | 久久精品视频在线看15 | a在线观看免费网站大全 | 精品久久综合1区2区3区激情 | 久久亚洲中文字幕无码 | 老子影院午夜伦不卡 | 色婷婷av一区二区三区之红樱桃 | 丰满少妇人妻久久久久久 | 秋霞成人午夜鲁丝一区二区三区 | 精品国偷自产在线视频 | 日日摸夜夜摸狠狠摸婷婷 | 综合激情五月综合激情五月激情1 | 日日夜夜撸啊撸 | 国产精品人妻一区二区三区四 | 亚洲精品无码人妻无码 | 成人精品视频一区二区 | 亚洲天堂2017无码 | 国产性生大片免费观看性 | 天天躁日日躁狠狠躁免费麻豆 | 牲欲强的熟妇农村老妇女视频 | 无码av岛国片在线播放 | 亚洲中文字幕久久无码 | 日韩人妻无码中文字幕视频 | 色情久久久av熟女人妻网站 | 午夜性刺激在线视频免费 | 色爱情人网站 | 国产成人无码一二三区视频 | 国内精品人妻无码久久久影院蜜桃 | 丰满护士巨好爽好大乳 | 国产一区二区不卡老阿姨 | 红桃av一区二区三区在线无码av | 日本饥渴人妻欲求不满 | 久久午夜无码鲁丝片午夜精品 | 在线成人www免费观看视频 | aⅴ亚洲 日韩 色 图网站 播放 | 欧美三级不卡在线观看 | 免费人成在线视频无码 | 妺妺窝人体色www婷婷 | 人人妻在人人 | 亲嘴扒胸摸屁股激烈网站 | 夜夜夜高潮夜夜爽夜夜爰爰 | 中文字幕无码乱人伦 | 国产精品成人av在线观看 | 亚洲春色在线视频 | 欧美日韩色另类综合 | 久久成人a毛片免费观看网站 | 国产精品高潮呻吟av久久4虎 | 国产97人人超碰caoprom | 亚洲a无码综合a国产av中文 | 精品无码一区二区三区爱欲 | 国产舌乚八伦偷品w中 | 国产激情无码一区二区 | 99久久久国产精品无码免费 | 久久精品无码一区二区三区 | 久久久久免费看成人影片 | 国产成人精品视频ⅴa片软件竹菊 | 天天摸天天透天天添 | 四虎影视成人永久免费观看视频 | av无码久久久久不卡免费网站 | 18无码粉嫩小泬无套在线观看 | 人人妻人人澡人人爽人人精品浪潮 | 久久久久成人片免费观看蜜芽 | 性欧美疯狂xxxxbbbb | 国产亚洲欧美日韩亚洲中文色 | 日日天日日夜日日摸 | 国产精品无码久久av | 亚洲精品中文字幕久久久久 | www国产亚洲精品久久网站 | 亚洲色偷偷偷综合网 | 午夜理论片yy44880影院 | 99久久精品午夜一区二区 | 国产精品va在线播放 | 18精品久久久无码午夜福利 | 亚洲中文字幕乱码av波多ji | 又湿又紧又大又爽a视频国产 | 久久久精品国产sm最大网站 | 波多野结衣乳巨码无在线观看 | 亚洲中文无码av永久不收费 | 高潮毛片无遮挡高清免费 | 2019nv天堂香蕉在线观看 | 2019午夜福利不卡片在线 | 日本精品人妻无码77777 天堂一区人妻无码 | 亚洲精品午夜国产va久久成人 | 日本熟妇乱子伦xxxx | 国产在线一区二区三区四区五区 | 人妻天天爽夜夜爽一区二区 | 国产精品va在线播放 | 精品乱子伦一区二区三区 | 国产莉萝无码av在线播放 | 亚洲综合无码久久精品综合 | 国产无遮挡又黄又爽又色 | 青青草原综合久久大伊人精品 | 99久久久国产精品无码免费 | 久久精品人人做人人综合 | 久久久亚洲欧洲日产国码αv | 老熟妇乱子伦牲交视频 | 一区二区三区高清视频一 | 成人一在线视频日韩国产 | 精品厕所偷拍各类美女tp嘘嘘 | 丰满人妻精品国产99aⅴ | 久久国内精品自在自线 | 理论片87福利理论电影 | 99久久久无码国产精品免费 | 在线а√天堂中文官网 | 真人与拘做受免费视频 | 日本大香伊一区二区三区 | 纯爱无遮挡h肉动漫在线播放 | 人妻与老人中文字幕 | 自拍偷自拍亚洲精品被多人伦好爽 | 亲嘴扒胸摸屁股激烈网站 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 2020久久香蕉国产线看观看 | 国产9 9在线 | 中文 | www国产亚洲精品久久久日本 | 精品日本一区二区三区在线观看 | 无码一区二区三区在线 | 亚洲精品国产第一综合99久久 | 人妻天天爽夜夜爽一区二区 | 亚洲日韩一区二区 | 免费视频欧美无人区码 | 无码国产激情在线观看 | 中国女人内谢69xxxx | 国产国产精品人在线视 | 中文字幕无码日韩欧毛 | 无码人妻av免费一区二区三区 | 国精产品一品二品国精品69xx | 亚洲色大成网站www国产 | 中文字幕日产无线码一区 | 国产另类ts人妖一区二区 | 爆乳一区二区三区无码 | 国精品人妻无码一区二区三区蜜柚 | 色欲av亚洲一区无码少妇 | 真人与拘做受免费视频一 | 国产成人精品视频ⅴa片软件竹菊 | 国内精品久久毛片一区二区 | 日韩欧美中文字幕在线三区 | 国产两女互慰高潮视频在线观看 | 亚洲性无码av中文字幕 | 国产精品无码一区二区三区不卡 | 国产激情精品一区二区三区 | 欧美乱妇无乱码大黄a片 | 帮老师解开蕾丝奶罩吸乳网站 | 丁香花在线影院观看在线播放 | 色诱久久久久综合网ywww | 久久亚洲精品中文字幕无男同 | 精品人妻人人做人人爽夜夜爽 | 国产精品鲁鲁鲁 | 色综合久久中文娱乐网 | 妺妺窝人体色www在线小说 | 日本免费一区二区三区最新 | 无人区乱码一区二区三区 | 精品偷自拍另类在线观看 | 无码人妻精品一区二区三区不卡 | 欧美国产日韩亚洲中文 | 精品无码国产一区二区三区av | 国产午夜无码视频在线观看 | 国产亚洲日韩欧美另类第八页 | 玩弄少妇高潮ⅹxxxyw | 久久久久免费看成人影片 | 久久精品国产日本波多野结衣 | 日本丰满护士爆乳xxxx | 人人爽人人爽人人片av亚洲 | 亚洲成a人片在线观看日本 | 欧美成人免费全部网站 | 日韩精品无码免费一区二区三区 | 国产亚洲精品久久久久久大师 | 亚洲乱码中文字幕在线 | aⅴ亚洲 日韩 色 图网站 播放 | 国产熟妇另类久久久久 | 精品人妻人人做人人爽 | 色综合久久久无码网中文 | 精品人妻人人做人人爽夜夜爽 | 中文字幕无码免费久久9一区9 | 中文字幕av无码一区二区三区电影 | 天天摸天天透天天添 | 欧美激情一区二区三区成人 | 精品偷拍一区二区三区在线看 | 国产亚洲精品精品国产亚洲综合 | 丁香花在线影院观看在线播放 | 亚洲人成网站免费播放 | 日韩av激情在线观看 | 日本大乳高潮视频在线观看 | 亚洲精品www久久久 | 国内少妇偷人精品视频 | 少女韩国电视剧在线观看完整 | 亚洲啪av永久无码精品放毛片 | 亚洲精品国偷拍自产在线麻豆 | 久久99精品久久久久婷婷 | 精品国精品国产自在久国产87 | 日本护士毛茸茸高潮 | 国产艳妇av在线观看果冻传媒 | 国产精品二区一区二区aⅴ污介绍 | 中文字幕无码日韩专区 | 欧美怡红院免费全部视频 | 人妻天天爽夜夜爽一区二区 | 亚洲娇小与黑人巨大交 | 国产午夜视频在线观看 | 色窝窝无码一区二区三区色欲 | 免费观看又污又黄的网站 | 亚洲色无码一区二区三区 | 网友自拍区视频精品 | 性生交片免费无码看人 | 天堂亚洲免费视频 | 亚洲日本在线电影 | 97无码免费人妻超级碰碰夜夜 | 欧美成人高清在线播放 | 中文字幕无码免费久久9一区9 | 国产麻豆精品一区二区三区v视界 | 欧美日韩一区二区免费视频 | 久久精品国产精品国产精品污 | 97久久精品无码一区二区 | 欧美黑人乱大交 | 成人无码精品一区二区三区 | 强开小婷嫩苞又嫩又紧视频 | 中文字幕人妻丝袜二区 | 久久精品人人做人人综合 | 2020最新国产自产精品 | 免费国产黄网站在线观看 | 亚洲人成影院在线观看 | a片在线免费观看 | 内射爽无广熟女亚洲 | 亚洲日韩一区二区三区 | 国产精品无码mv在线观看 | 亚洲自偷自偷在线制服 | 精品无码成人片一区二区98 | 国产小呦泬泬99精品 | 小泽玛莉亚一区二区视频在线 | 亚洲欧美国产精品久久 | 欧美国产日韩亚洲中文 | 又黄又爽又色的视频 | 中文字幕亚洲情99在线 | 亚洲а∨天堂久久精品2021 | 亚洲人成网站在线播放942 | 成人性做爰aaa片免费看 | 人妻人人添人妻人人爱 | 日韩在线不卡免费视频一区 | 色欲综合久久中文字幕网 | 国语自产偷拍精品视频偷 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 日本又色又爽又黄的a片18禁 | 久久精品国产99久久6动漫 | 免费播放一区二区三区 | 亚洲色欲色欲欲www在线 | 日韩 欧美 动漫 国产 制服 | 色老头在线一区二区三区 | 日韩在线不卡免费视频一区 | 中文字幕无码av激情不卡 | 激情内射日本一区二区三区 | 女人被男人躁得好爽免费视频 | 九九久久精品国产免费看小说 | 亚洲色www成人永久网址 | 中文字幕av无码一区二区三区电影 | 午夜精品一区二区三区在线观看 | 国产午夜手机精彩视频 | 性色欲情网站iwww九文堂 | 亚洲欧美日韩综合久久久 | 国产精品va在线播放 | 人妻aⅴ无码一区二区三区 | 国产色视频一区二区三区 | 丰满人妻一区二区三区免费视频 | 欧美精品国产综合久久 | 国产麻豆精品精东影业av网站 | 国产乱子伦视频在线播放 | 国产明星裸体无码xxxx视频 | 97精品人妻一区二区三区香蕉 | 99久久无码一区人妻 | 丰满人妻被黑人猛烈进入 | 亚洲午夜福利在线观看 | 国产区女主播在线观看 | 无套内谢老熟女 | 色综合久久88色综合天天 | 少女韩国电视剧在线观看完整 | 国产美女极度色诱视频www | 久久综合激激的五月天 | 亚洲一区二区三区播放 | 岛国片人妻三上悠亚 | 图片小说视频一区二区 | 人妻熟女一区 | 麻豆av传媒蜜桃天美传媒 | 内射爽无广熟女亚洲 | 亚洲区欧美区综合区自拍区 | 亚洲一区二区三区香蕉 | 亚洲欧美日韩国产精品一区二区 | 久久久久99精品成人片 | 精品厕所偷拍各类美女tp嘘嘘 | 性色av无码免费一区二区三区 | 久久综合九色综合97网 | 无码人妻精品一区二区三区不卡 | 成人性做爰aaa片免费看不忠 | 国产高清不卡无码视频 | 欧美亚洲日韩国产人成在线播放 | 精品欧洲av无码一区二区三区 | 99久久精品午夜一区二区 | 久久国产精品_国产精品 | 欧美老妇交乱视频在线观看 | 国产成人无码专区 | 激情五月综合色婷婷一区二区 | 日本一卡2卡3卡四卡精品网站 | 全黄性性激高免费视频 | 亚洲爆乳大丰满无码专区 | 无码成人精品区在线观看 | 久久精品国产亚洲精品 | 亚洲精品一区三区三区在线观看 | 97久久超碰中文字幕 | 欧洲欧美人成视频在线 | 国产人妻大战黑人第1集 | 超碰97人人做人人爱少妇 | 蜜桃臀无码内射一区二区三区 | 中文字幕人妻无码一区二区三区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 中文字幕日韩精品一区二区三区 | 图片小说视频一区二区 | 国产高清av在线播放 | 十八禁视频网站在线观看 | 亚洲综合色区中文字幕 | 天天拍夜夜添久久精品 | 欧美性生交活xxxxxdddd | 色五月五月丁香亚洲综合网 | 亚洲成av人综合在线观看 | 中文字幕人妻无码一区二区三区 | 丰满人妻一区二区三区免费视频 | 国产免费无码一区二区视频 | 精品国产乱码久久久久乱码 | 一区二区传媒有限公司 | 亚洲第一无码av无码专区 | 国产成人精品视频ⅴa片软件竹菊 | 成人亚洲精品久久久久 | 亚洲天堂2017无码 | 九九综合va免费看 | 久久久久人妻一区精品色欧美 | 永久免费观看美女裸体的网站 | a在线亚洲男人的天堂 | 国产午夜亚洲精品不卡下载 | 亚洲乱码日产精品bd | 中文无码精品a∨在线观看不卡 | 荫蒂被男人添的好舒服爽免费视频 | 少妇高潮一区二区三区99 | 欧美丰满熟妇xxxx | 欧美丰满老熟妇xxxxx性 | 国产午夜精品一区二区三区嫩草 | 大肉大捧一进一出视频出来呀 | 欧美黑人乱大交 | 精品一区二区三区波多野结衣 | 亚洲男女内射在线播放 | 秋霞成人午夜鲁丝一区二区三区 | 欧美一区二区三区视频在线观看 | 午夜精品一区二区三区的区别 | 国产精品沙发午睡系列 | 老熟妇仑乱视频一区二区 | 人妻体内射精一区二区三四 | 人人澡人人妻人人爽人人蜜桃 | 国产在线精品一区二区三区直播 | 久久97精品久久久久久久不卡 | 国产又粗又硬又大爽黄老大爷视 | 中文字幕乱码人妻无码久久 | 亚洲 欧美 激情 小说 另类 | 夜夜高潮次次欢爽av女 | 男女性色大片免费网站 | 亚洲精品综合一区二区三区在线 | 高清国产亚洲精品自在久久 | 日本熟妇大屁股人妻 | 成人免费视频视频在线观看 免费 | 熟妇人妻无码xxx视频 | 国产亚洲tv在线观看 | 国产精品久久国产精品99 | 久久久久国色av免费观看性色 | 国产精品-区区久久久狼 | 久久精品国产一区二区三区 | 国产片av国语在线观看 | 男人和女人高潮免费网站 | 日日摸天天摸爽爽狠狠97 | 国产成人无码区免费内射一片色欲 | 欧美激情一区二区三区成人 | 国产97人人超碰caoprom | 久久综合激激的五月天 | 最新版天堂资源中文官网 | 国产人妖乱国产精品人妖 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 成人试看120秒体验区 | 天堂а√在线地址中文在线 | 精品国产福利一区二区 | 久久国产劲爆∧v内射 | 日本va欧美va欧美va精品 | 老子影院午夜精品无码 | 日韩av无码中文无码电影 | 欧美喷潮久久久xxxxx | 国产深夜福利视频在线 | 四十如虎的丰满熟妇啪啪 | 熟女少妇在线视频播放 | 亚洲精品一区二区三区婷婷月 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产熟妇另类久久久久 | 亚洲一区二区三区香蕉 | 大肉大捧一进一出视频出来呀 | 久久综合香蕉国产蜜臀av | 国产精品毛片一区二区 | 国产人妻精品一区二区三区不卡 | 国产精品手机免费 | 国模大胆一区二区三区 | 亚洲国产精品无码久久久久高潮 | 国产精品美女久久久久av爽李琼 | 黑人巨大精品欧美一区二区 | 人妻少妇精品无码专区动漫 | 四虎国产精品一区二区 | 国产香蕉尹人综合在线观看 | 久久亚洲精品中文字幕无男同 | 激情爆乳一区二区三区 | 图片区 小说区 区 亚洲五月 | 嫩b人妻精品一区二区三区 | 精品日本一区二区三区在线观看 | 伊在人天堂亚洲香蕉精品区 | 亚洲无人区午夜福利码高清完整版 | 久久99精品国产.久久久久 | 日韩 欧美 动漫 国产 制服 | 亚洲熟女一区二区三区 | 久久精品一区二区三区四区 | 中文字幕乱码中文乱码51精品 | 国产香蕉尹人综合在线观看 | 色婷婷综合中文久久一本 | 鲁大师影院在线观看 | 粗大的内捧猛烈进出视频 | 自拍偷自拍亚洲精品10p | 麻豆国产97在线 | 欧洲 | 俺去俺来也在线www色官网 | 久精品国产欧美亚洲色aⅴ大片 | 国产真实乱对白精彩久久 | 无码人妻少妇伦在线电影 | 亚洲aⅴ无码成人网站国产app | 在线观看免费人成视频 | 日韩人妻无码一区二区三区久久99 | 午夜性刺激在线视频免费 | 亚洲色www成人永久网址 | 亚洲一区二区三区偷拍女厕 | 97久久精品无码一区二区 | 国产午夜福利100集发布 | 男女作爱免费网站 | 成人无码精品1区2区3区免费看 | 日日天干夜夜狠狠爱 | 青草青草久热国产精品 | 精品少妇爆乳无码av无码专区 | 欧美国产日韩亚洲中文 | 一二三四社区在线中文视频 | 国产精品内射视频免费 | 欧美人与物videos另类 | 野外少妇愉情中文字幕 | 国产人妖乱国产精品人妖 | аⅴ资源天堂资源库在线 | 国产99久久精品一区二区 | 熟妇人妻中文av无码 | 国产午夜亚洲精品不卡 | 亚洲爆乳精品无码一区二区三区 | 亚洲精品国偷拍自产在线麻豆 | 人人妻人人澡人人爽欧美一区九九 | 在线观看国产一区二区三区 | 少妇高潮一区二区三区99 | 久久综合九色综合欧美狠狠 | 一本色道婷婷久久欧美 | 久久久久久国产精品无码下载 | 毛片内射-百度 | 久久午夜无码鲁丝片秋霞 | 中国大陆精品视频xxxx | 国产片av国语在线观看 | 精品久久久久久亚洲精品 | 丁香啪啪综合成人亚洲 | 亚洲国产精品毛片av不卡在线 | 无码av中文字幕免费放 | 亚洲精品国产品国语在线观看 | 亚洲成a人一区二区三区 | 久激情内射婷内射蜜桃人妖 | 国产极品视觉盛宴 | 一本色道久久综合狠狠躁 | 国产成人无码区免费内射一片色欲 | 亚洲狠狠色丁香婷婷综合 | 国产一区二区三区精品视频 | 久久婷婷五月综合色国产香蕉 | 人妻有码中文字幕在线 | 久久久久成人精品免费播放动漫 | 久久99精品久久久久久动态图 | 亚洲国产精品一区二区第一页 | 亚洲精品一区二区三区婷婷月 | 无码中文字幕色专区 | 亚洲天堂2017无码中文 | 精品一区二区三区波多野结衣 | 免费无码一区二区三区蜜桃大 | 午夜福利不卡在线视频 | 永久黄网站色视频免费直播 | 一本久道久久综合狠狠爱 | 377p欧洲日本亚洲大胆 | 国产人妻精品午夜福利免费 | 少妇被黑人到高潮喷出白浆 | 国产精品.xx视频.xxtv | 欧美丰满熟妇xxxx | 久久97精品久久久久久久不卡 | 乱码午夜-极国产极内射 | 久久婷婷五月综合色国产香蕉 | 亚洲日韩一区二区 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 精品国产一区二区三区av 性色 | 欧洲精品码一区二区三区免费看 | 丰腴饱满的极品熟妇 | 最新国产乱人伦偷精品免费网站 | 夜夜躁日日躁狠狠久久av | 超碰97人人做人人爱少妇 | 精品国产精品久久一区免费式 | 97精品人妻一区二区三区香蕉 | 国精产品一区二区三区 | 成人片黄网站色大片免费观看 | 亚洲欧美日韩国产精品一区二区 | 久久久久成人片免费观看蜜芽 | 中文字幕乱码中文乱码51精品 | 少妇性l交大片欧洲热妇乱xxx | 国产精品亚洲一区二区三区喷水 | 一本久久伊人热热精品中文字幕 | 天堂亚洲免费视频 | 老太婆性杂交欧美肥老太 | av小次郎收藏 | 亚洲精品综合五月久久小说 | 成人亚洲精品久久久久软件 | 国产艳妇av在线观看果冻传媒 | 日本熟妇浓毛 | 丰满人妻翻云覆雨呻吟视频 | 国产免费久久久久久无码 | 麻豆国产丝袜白领秘书在线观看 | 真人与拘做受免费视频一 | 国内老熟妇对白xxxxhd | 亚洲爆乳大丰满无码专区 | 国产农村妇女高潮大叫 | 天堂在线观看www | 久久久久免费看成人影片 | 久久久久成人片免费观看蜜芽 | 国产午夜亚洲精品不卡下载 | 亚洲成a人片在线观看无码 | 欧美黑人性暴力猛交喷水 | 国产后入清纯学生妹 | 妺妺窝人体色www婷婷 | 网友自拍区视频精品 | 少妇无码一区二区二三区 | 国产色视频一区二区三区 | 久久人人97超碰a片精品 | 性色欲网站人妻丰满中文久久不卡 | a片在线免费观看 | 国产精品成人av在线观看 | 日韩亚洲欧美精品综合 | 中文无码精品a∨在线观看不卡 | 亚洲gv猛男gv无码男同 | 99国产精品白浆在线观看免费 | 国产精品无码成人午夜电影 | 国产麻豆精品一区二区三区v视界 | 少妇太爽了在线观看 | 成人性做爰aaa片免费看 | 中文字幕久久久久人妻 | 色五月丁香五月综合五月 | 中文精品无码中文字幕无码专区 | 亚洲国产午夜精品理论片 | 亚洲国产精品无码久久久久高潮 | 成人无码视频在线观看网站 | 激情内射日本一区二区三区 | 国内少妇偷人精品视频 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 久久久久99精品成人片 | 久久精品国产一区二区三区肥胖 | 国产人妻大战黑人第1集 | 宝宝好涨水快流出来免费视频 | 女人高潮内射99精品 | 成人av无码一区二区三区 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 精品国产一区二区三区av 性色 | 欧美国产日产一区二区 | 少妇高潮一区二区三区99 | 中文字幕无码日韩欧毛 | 沈阳熟女露脸对白视频 | 欧美精品免费观看二区 | 日日天干夜夜狠狠爱 | 无码成人精品区在线观看 | 亚洲精品一区三区三区在线观看 | 亚洲熟熟妇xxxx | 久久久中文字幕日本无吗 | 国产一区二区三区影院 | 四虎国产精品免费久久 | 曰本女人与公拘交酡免费视频 | 日韩欧美群交p片內射中文 | 亚洲一区二区三区在线观看网站 | 亚洲码国产精品高潮在线 | 免费无码肉片在线观看 | 女人和拘做爰正片视频 | 中文字幕人成乱码熟女app | 国产精品久久久久无码av色戒 | 少妇一晚三次一区二区三区 | 精品亚洲韩国一区二区三区 | 亚洲阿v天堂在线 | 天天拍夜夜添久久精品大 | 精品国产一区二区三区四区 | 国产三级久久久精品麻豆三级 | 中文字幕日产无线码一区 | 国产av无码专区亚洲awww | 中文字幕乱码人妻二区三区 | 亚洲熟妇色xxxxx欧美老妇y | 夜夜高潮次次欢爽av女 | 成人性做爰aaa片免费看不忠 | 成人综合网亚洲伊人 | 一本大道久久东京热无码av | 狂野欧美性猛xxxx乱大交 | 在线看片无码永久免费视频 | 人人妻人人澡人人爽欧美一区九九 | 国产精品无码永久免费888 |