1. 程式人生 > >fiddler抓包出現Tunnel to

fiddler抓包出現Tunnel to

在抓包的時候,有時候會遇到很多的tunnel to,圖示是一把鎖的形狀,如下圖:

connect是為了建立http tunnel,connect是http眾多方法中的其中一種,它跟post、get、put、options方法是並列的。但是它的使用場景很特殊。只有在受限制的網路環境中(防火牆、NAT、代理器)並且是https通訊時,客戶端使用http connect請求代理伺服器,代理伺服器使用connect方法與目標伺服器建立http tunnel,通道建立後,客戶端與伺服器進行通訊,代理伺服器就像透明一樣,只是接收、轉發tcp stream。

為什麼要建立http tunnel呢?
這是因為,網路環境受限,客戶端無法直接訪問某些網路,所以只能通過代理伺服器訪問網路,然後,將內容轉發給客戶端,從巨集觀上看,客戶端與伺服器端就像建立了一條隧道一樣。
但是由於http tunnnel可控性不強,所以,伺服器通常會限制”可connect的埠”(一般只開放SSL的443埠)

那麼為什麼fiddler抓包時,出現大量connect連線?
因為fiddler是代理,訪問百度網頁(使用了https協議),滿足了使用connect條件,所以客戶端會使用connect方法與目標伺服器建立http tunnel,一旦connection建立完成,後續fiddler會轉發、接收所有的tcp stream。

隱藏:Rules->Hide Connects