代理服务器
我们做Web安全的学习者还有一些爬虫的学习者对于代理服务器一定不陌生吧。在这里讲一下代理服务器的分类。
看一下基本请求代理服务器的一个过程
此图来自百度百科
通过代理服务器共享上网从技术实现角度来说可以分为硬件共享上网和软件共享上网两种方式,从代理服务器工作的层次的角度来说可以分为应用层代理、传输层代理和SOCKS代理。
应用层代理工作在TCP/IP模型的应用层之上,它只能用于支持代理的应用层协议(如HTTP,FTP)。它提供的控制最多,但是不灵活,必须要有相应的协议支持。如果协议不支持图中所示的代理服务器实现模型(如SMTP和POP),那就只能在应用层以下代理,也即传输层代理。最后一种代理需要改变客户端的IP栈,即SOCKS代理。它是可用的最强大、最灵活的代理标准协议。以下将从代理服务器工作的层次的分类角度上介绍几种不同层次的代理服务器。
应用层代理
- 这里主要介绍基于HTTP协议的代理服务器。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。根据HTTP协议规定,当客户端使用代理模式时,发送的请求命令格式如下:methodhttp://hostname/path/⋯/fiIename。
当客户端同网络代理服务系统建立连接后,代理服务器将收到请求命令,这时代理服务器应该截取主机名部分进行域名解析,并同该主机建立连接,将去掉主机名部分的请求命令转发给它,等待