代理服务器是什么用简单语言解释下
代理服务只是一个中介而已,请看以下文章
代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。形象的说:它是网络信息的中转站。在一般情况下,我们使用网络浏览器直接去连接其他 Internet站点取得网络信息时,须送出Request信号来得到回答,然后对方再把信息以bit方式传送回来。代理服务器是介于浏览器和Web服务器之间的一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,Request信号会先送到代理服务器,由代理服务器来取回你所需要的信息并传送给你的浏览器。而且,大部分代理服务器都具有缓冲的功能,就好像一个大的缓冲池,它有很大的存储空间,它不断将新取得数据储存到它本机的存储器上,如果你的浏览器所请求的数据就在它本机的存储器上而且是最新的,那么它就不重新从Web服务器取数据,而直接将存储器上的数据传送给用户的浏览器。一般用户的可用带宽都较小,但是通过带宽较大的代理服务器与目标主机相连能大大提高浏览速度和效率。更重要的是它所提供的安全功能。通过代理服务器访问目标主机,可以将用户本身的IP地址隐藏起来,目标主机能看到的只是代理服务器的IP地址而已。很多网络黑客就是通过这种办法隐藏自己的真实IP,从而逃过监视。
常用代理的类型可以按所采用协议类型分为http代理、socks4代理和socks5代理。不论采用哪种代理,都需要知道代理服务器的一些基本信息:
① 代理服务器的IP地址
② 代理服务所在的端口
③ 这个代理服务是否需要用户认证?如果需要,您要向提供代理的网络管理员申请一个用户和口令。
什么是HTTP代理 什么是socks代理
什么是HTTP代理:www对于每一个上网的人都再熟悉不过了,www连接请求就是采用的http协议,所以我们在浏览网页,下载数据(也可采用ftp协议)是就是用http代理。它通常绑定在代理服务器的80、3128、8080等端口上。HTTP CONNECT代理服务器则是一种能够允许用户建立TCP连接到任何端口的代理服务器,这意味着这种代理不仅可用于HTTP,还包括 FTP、IRC、RM流服务等,甚至扫描、攻击。
什么是socks代理:相应的,采用socks协议的代理服务器就是SOCKS服务器。是一种通用的代理服务器。Socks是个电路级的底层网关,是 DavidKoblas在1990年开发的,此后就一直作为Internet RFC标准的开放标准。Socks 不要求应用程序遵循特定的操作系统平台,Socks 代理与应用层代理、 HTTP 层代理不同,Socks 代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求)。所以,Socks代理比其他应用层代理要快得多。它通常绑定在代理服务器的1080端口上。
如果您在企业网或校园网上,需要透过防火墙或通过代理服务器访问 Internet就可能需要使用SOCKS。一般情况下,对于拨号上网用户都不需要使用它。注意,浏览网页时常用的代理服务器通常是专门的http代理,它和SOCKS是不同的。因此,您能浏览网页不等于 您一定可以通过SOCKS访问Internet。常用的防火墙,或代理软件都支持SOCKS,但需要其管理员打开这一功能。如果您不确信您是否需要SOCKS或是否有SOCKS可用,请与您的网络管理员联系。为了使用socks,您需要了解一下内容:
① SOCKS服务器的IP地址
② SOCKS服务所在的端口
③ 这个SOCKS服务是否需要用户认证?如果需要,您要向您的网络管理员申请一个用户和口令
知道了上述信息,您就可以把这些信息填入“网络配置”中,或者在第一次登记时填入,您就可以使用socks代理了。
在实际应用中SOCKS代理可以用作为:电子邮件、新闻组软件、网络传呼ICQ、网络聊天MIRC和各种游戏应用软件当中。
什么是socks4和socks5代理
socks4和socks5都属于socks协议,只是由于所支持的具体应用不同而存在差异。socks4代理只支持TCP应用,而socks5代理则可以支持TCP和UDP两种应用。不过由于socks5代理还支持各种身份验证机制,服务器端域名解析等,而socks4代理没有,所以通常对外开放的 socks代理都是socks4代理,因此,UDP应用通常都不能被支持。也就是说,socks4能干的socks5都可以干,反过来就不行了
socks5是一个代理协议,主要的作用就是代理客户端来访问远程服务器,起到一个中介作用。
一般情况下当代理客户端因为防火墙等原因访问不了远程服务器,而另一个服务器即可以访问远程服务器又可以被客户端访问到时,可以在这个服务器上部署socks5服务端,本地部署socks5客户端,让这个中介服务器来代理访问远程服务器。
下面介绍协议流程,可以简单分为握手阶段,准备阶段和代理阶段
客户端建立和代理服的tcp连接A,并发送第一帧数据:
VER:协议版本号,socks5情况下为0x05
代理服务器收到后,会鉴别VER,回应
METHOD:身份验证方法,不需要身份验证时为0x00,此时直接进入”准备阶段“(不为0x00时,需要走身份验证流程,参见 socks5身份验证 )
客户端发送第二帧数据:
CMD:命令,tcp代理0x01,udp代理0x03
RSV:保留字段
ATYP:地址类型 0x01:ipv4,0x03:域名,0x04:ipv6
DSTADDR:目标地址
DSTPORT:目标端口
比如数据 :0x05|0x01|0x00|0x03|0x0d7777772e62616964752e636f6d|0x01bb
代表需要代理的是tcp连接,目标地址类型是域名,真实解析出来目标地址就是" wwwbaiducom:443 ",即告诉代理服,帮我和" wwwbaiducom:443 "作代理吧
代理服收到后,就直接建立和DSTADDR的tcp连接B,回复
REP:状态位,0x00代表连接DSTADDR成功了
RSV:保留字段
ATYP:地址类型 0x01:ipv4,0x03:域名,0x04:ipv6
BNDADDR:绑定地址,连接B的本地地址
BNDPORT:绑定端口,连接B的本地端口
比如,返回0x05|0x00|0x00|0x01|0xc0a8c76a|0xcdf0,代表准备代理成功了,进入下一步吧
客户端把发给目标服的数据由连接A发给代理服,代理服将这些数据转由连接B发给目标服,同时代理服收到的目标服数据转由连接A返回给客户端
以上是整个socks5代理的tcp代理流程的简单流程,udp代理会复杂些,后面会单独写一篇,
想详细了解的可以参照我的golang实现 https://githubcom/0990/socks5
RFC1928-SOCKS Protocol Version 5
你是用SOCKS5 代理上外网吗??要注意的是,IE浏览器不支持SOCKS5 代理的方式,它只支持HTTP代理。设置方法和前面的 IE6、IE7浏览器一样的。是在IE浏览器的---》“工具”-----》“Internet选项”-----》“连接”----》“局域网设置”-----》里面进行设置。 如果你家浏览器是IE8,那就没办法使用SOCKS5 了,你可以下载一个SOCKS5 代理软件,然后用代理软件来实现代理上网。(另外,火狐浏览器支持直接代理SOCKS5 )火狐浏览器设置方法:在Firefox地址栏中,输入 about:config ,按确认,修改里面的一项数值,改成 networkproxysocks_remote_dns=true 就可以了。如下图所示: 然后,打开FireFox浏览器,选择菜单栏的“工具/选项…”。选择“高级/网络”,点设置,就出现下面的界面,就可以进行代理服务器的设置了,选中“手动配置代理”,然后在SOCKS主机上,填写相应的代理服务器地址和端口,SOCKS类型选择“SOCKS V5”,这时Firefox就配置结束。如下图所示:
http代理和SOCKS5代理的区别是:
1、socks包含https,https包含http。socks代理适用的范围最广。https协议只支持http/https,一般的ie代理用的http/https协议。如果是应用层协议一般不用http/https,有些应用程序只能使用socks代理。
2、SOCKS工作在会话层上,而HTTP工作在应用层上,SOCKS代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求),所以SOCKS代理服务器比应用层代理服务器要快得多。
一、http代理
1、介绍
代理客户机的http访问,主要代理浏览器访问网页,它的端口一般为80、8080、3128等。
2、协议
HTTP协议即超文本传输协议,是Internet上行信息传输时使用最为广泛的一种非常简单的通信协议。部分局域网对协议进行了限制,只允许用户通过HTTP协议访问外部网站。目前HTTP功能支持“直接连接”和通过”HTTP代理“形式的连接。选择其中的何种形式,要视用户所在的局域网(或其它上网环境)的具体情况。
二、SOCKS5代理
1、介绍
采用socks协议的代理服务器就是SOCKS服务器,是一种通用的代理服务器。Socks是个电路级的底层网关,是DavidKoblas在1990年开发的,此后就一直作为Internet RFC标准的开放标准。Socks 不要求应用程序遵循特定的操作系统平台,Socks 代理与应用层代理、 HTTP 层代理不同,Socks 代理只是简单地传递数据包,而不必关心是何种应用协议。
2、软件应用
(1)sockscap32中文版。
如果你设置了IE代理,结果还是不能进入某些聊天室或者语音聊天室。 如果你想用NetMeeting的Internet功能。 如果你想用IP电话软件。 某些没有代理服务器设置功能的客户端软件。 如果您想上外服的游戏而又不改变机器的IP地址。
(2)ProxyCap202汉化版。
socks5是代理协议意思。
它在使用TCP/IP协议通讯的前端机器和服务器机器之间扮演一个中介角色,使得内部网中的前端机器变得能够访问Internet网中的服务器,或者使通讯更加安全。SOCKS5 服务器通过将前端发来的请求转发给真正的目标服务器, 模拟了一个前端的行为。在这里,前端和SOCKS5之间也是通过TCP/IP协议进行通讯。
前端将原本要发送给真正服务器的请求发送给SOCKS5服务器,然后SOCKS5服务器将请求转发给真正的服务器。如果机器具有一个合法的 Internet IP 地址, 或者利用自己机器上的调制解调器拨号上网, 可以自由和 Internet 上任何主机沟通, 那么通常不必关心 SOCKS5 协议。SOCKS5 协议对于处在内部网络中的机器。
需要透过网络中某些可以联通外部 Internet 的机器访问外部时,有用。SOCKS5服务器在将通讯请求发送给真正服务器的过程中,对于请求数据包本身不加任何改变。SOCKS5服务器接收到真正服务器的响应后,也原样转发给前端。
SOCKS的主要区别:
SOCKS是一组由Internal工程工作小组(IETF)所开发出来的开放软件开放标准,用来处理网络安全的事宜。SOCKS像一堵墙被夹在 Internal服务器和客户端之间,对于出入企业网络的资讯提供流量和安全的管理。SOCKS这个名词并不是一组英文字头的缩写,而是一个和 TCP/IP的Socket端口有关的安全标准。
一般防火墙系统通常是象网关(Gateway)一样是作用在OSI模型的第七层也就是应用层上,对 TCP/IP的高级协议,如Telnet、FTP、HTTP和SMTP加以管制,而SOCKS作用在OSI模型的第五层也就是会话层上,像一个代理一样对客户端到服务器端或服务器和服务器之间的数据联系提供安全上的服务。由于SOCKS作用在会话层上。
因此它是一个提供会话层到会话层间安全服务的方案,不受高层应用程序变更的影响。 Socks代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求),所以Socks代理服务器比应用层代理服务器要快。
0条评论