1、解读Tunnel to
在抓包的时候,有时候会遇到很多的tunnel to,图标是一把锁的形状,使用的方法是Connect,如下图:
connect是为了建立http tunnel,connect是http众多方法中的其中一种,它跟post、get、put、options方法是并列的。但是它的使用场景很特殊。
只有在受限制的网络环境中(防火墙、NAT、代理器)并且是https通信时,客户端使用http connect请求代理服务器,代理服务器使用connect方法与目标服务器建立http tunnel,
通道建立后,客户端与服务器进行通信,代理服务器就像透明一样,只是接收、转发tcp stream。
2、为什么要建立http tunnel呢?
这是因为,网络环境受限,客户端无法直接访问某些网络,所以只能通过代理服务器访问网络,然后,将内容转发给客户端,从宏观上看,客户端与服务器端就像建立了一条隧道一样。
但是由于http tunnnel可控性不强,所以,服务器通常会限制”可connect的端口”(一般只开放SSL的443端口)
tunnel to clients1.google.com:443
3、为什么要建立http tunnel呢?
因为fiddler是代理,访问百度网页(使用了https协议),满足了使用connect条件,所以客户端会使用connect方法与目标服务器建立http tunnel,
一旦connection建立完成,后续fiddler会转发、接收所有的tcp stream。
4、如何隐藏
如果你看着tunnel to不习惯的话,可以将其隐藏掉,Rules->Hide Connects