p2p下载 与 网络proxy代理服务器proxy

常见NA丁穿越解决方案

    NAT技术在缓解IPv4哋址紧缺问题、构建防火墙、保证网络安全等方面都发挥了重要

作用然而,NAT设备的广一泛存在却给Internet上的主机特别是处于不同内网中的主机进行P2P通信带来了障碍,限制了P2P的应用NAT阻碍主机进行P2P通信的主要原因是NAT不允许公网主机主动访问内网主机,这使得Internet上具有公网IP地址的主机不能主动访问NAT之后的主机而位于不同NAT之后的主机之间更是无法相互识别因而不能直接交换信息。因此要在目前的网络环境中进行囿效的P2P通信,就必须研究相应的方案来穿越NAT 

的设备。在网络中增加了ALG设备可以很好地配合NAT完成应用协议消息中的地址字段翻

译NAT和NAPT只能對IP报文的头部地址和TCPILIDP头部的端口信息进行转换,对于报文的数据部分可能包含IP地址或端口信息的特殊协议(如H.323, SIP. MGCP等)则无法实现有效的转换,洏许多应用中需要对数据包负载中的数据进行分析转换例如一个FTP服务器处于内网中,只有内网IP地址该服务器在和公网主机建立会话的過程中,需要将自己的IP地址发送给对方而这个地址信息放在IP报文的数据部分,现有的NAT设备是无法对它进行地址转换的当公网主机接收箌这个私有地址并使用它时,是不可能建立连接的增加应用层网关ALG之后,就可以进一步分析数据包负载内的数据即应用层的数据。所鉯当网络中使用了NAT设备来屏蔽内部IP地址时,应用层网关ALG就可以同时实行对业务流对NAT的穿越了ALG可以是单独地连接于公网和内网之闻的设備,也可以内置于NAT或防火墙设备中

    ALG大部分的功能集成在NAT设备上,这导致了该方式的可扩展性不强因为在进行

应用升级时,需要对NAT设备吔进行升级这对目前我们所处的网络来说,将会是一项非常艰巨的任务在实际中很难实现。ALG方式的另一个不足就是ALG必须透彻地理解应鼡协议需要根据协议过程协调NAT的地址翻译过程,并同步修改数据包负载中的相关字段这将会加重网关的负担,对于NAPT来说情况更复杂處理开销过大,可能会影响了网络的正常运行形成网络瓶颈。而且ALG无法识别加密后的报文内容必须保证报文采用明文传送,使得在公網中传送时存在安全隐患

    M1DCOMproxy代理服务器方式与ALG方式在功能上基本相同,也需要了解相应的NAT的工作机制负责具体的应用处理,协助NAT一起对數据包进行处理不同之处在于MIDCOM的框架结构采用可信的第三方C MIDCaMproxy代理服务器)对NAT进行控制。

    MIDCaMproxy代理服务器的物理实体可以是proxy代理服务器服务器所以在升级应用服务器的时候,不需要更改NAT墓本特性通过对MIDCOMproxy代理服务器服务器的升级就可以支持更多的新业务,这是

MIDCCJM相对ALG方式的一个很夶的优势口但是MI DCQM技术的实施需要对服务器进行MIDCOM协议的升级扩展因此该方案的实施过程中也会遇到投入较大、实现周期较长等问题。而且目前的MIDCDMproxy代理服务器方式还在研究过程中并没有形成一种成熟的产品,所以现阶段使用MIDCDM实现NAT穿越的实际应用并不是很多

    STUN,即C1DP对NAT的简一单穿越方式这种解决方案的基本思路是,局域网接入用户通过某种机制预先得到其内网地址对应在出口NAT上的公网地址,然后在其报文中嘚地址信息处直接填写出口NAZ上的公网地址而不是用户的私有IP地址,这样报文中的内容在经过NAT时就无需被修改了只需按普通NAT流程转换报攵头部的IP地址即可,负载中的IP地址信息和报文头部地址信息是一致的STUN协议就是基于此思路来解决应用层地址的转换问题的。

    在穿越过程Φ内网主机向NAT外的STUN服务器发送STUN请求,STUN月浸务器收到请求消息产生响应消息,响应消息中包含请求消息的源端口地址即内网主机在NAT仁對应的外部端口地址。然后响应消息通过NAT发送给内网主机内网主机在以后的业务呼叫过程时,将该公网地址填入呼叫协议的报文负载中告知对方自己的RTP接收地址和端口号为NAT外的地址和端口号。由」几通过STiTN协议己在NAT . fr预先建立媒体流的NAT映射表故媒体流可以顺利穿越NAT 。

防火牆而且这些NATI防火墙不一定支持VoIP应用。如果采用MIDCOM或ALG方式则需要替换现有的NAT/防火墙,实施起来难度较大且MIDCDM方式无法实现对多级NAT

的有效控淛。如果采用STLFN方式不但无需改动NATI防火墙,而且能够很好地适应多个NAT串联的网络环境

    TURN ,即采用中继的NAT穿越。该方式与STUN在技术机制上是相同嘚也来用了服务器/客户端模式,通过访问处于公网中的服务器得到内网中主机所分配得到的公共地址进而进行通信。不同的只是在STUN方式中得到的公共地址是由NAT分配的而在TURN模式中内网主机得到的公共地址是由TURN服务器分配的。TURN通过分配TURN Server的地址和端口作为客户端对外的接收哋址和端口即内网主机发出的报文都要经过TURN Server进行中继转发,这种方式除了具有STUN方式的优点外还解决了STAN应用无法穿越对称式NAT (Symmetric NAT ),同时支持基一于TCP的应用.

    然而由于服务器的存在,当数据量变得非常大时也会造成网络瓶颈,而且由于所有

报文都必须经过TURN服务器转发增大了報文的延迟和丢包的可能性,会给Qo5带来问题目前网络流行的是将TURN与STUN结合在一起使用。

    FullE'roxy方式的思路是利用转发设备将内网主机的所有数据信息进行处理和转发通过这种方式实现对NAT的顺利穿越,其关键之处在于同时完成对终端呼叫信令的proxy代理服务器转发和媒体中继内网主機产生的信令流与业务数据流一首先通过Proxy设备,由Proxy设备对其进行解析并将信息中的私有地址改为Proxy设备的公共IP地址与端u,完成修改后将信息发送到目的地

    在Fu1lProxy方式下,无需对现有的NAT设备做任何改动适应性非常强,同时私有网络中主机的应用程序也无需支持S Tz IN和TURN协议这是FuilProxy方式的一个优势。但是由于Proxy设备是所有信息的必经之处需要对数据包进行集中的分析与处理,对设备的要求很高而且FullPmxy方式会增加包的延時和丢包的可能性,可能会造成网络瓶颈而且如果该节点不能正常工作,那整个内网都无法与外界进行通信

首选的NAT穿越解决方案。ICE本身是一种方法它综合运用STUN、 TURN等协议来提供一个通用的解决方案,使之在最适合的情况下工作以弥补单独使用其中任何一种所带来的固囿缺陷。

    ICE的优势是支持各种NAT的穿越但是需要每一个终端都支持ICE穿越方法,在开发上显著地增加了复杂性而且网络还必须支持STUN, TURN等功能,實现起来较为复杂

    下面对上述几种方案进行一个小结,表7-1是各种方案在性能、可扩展性、对现有设备

改造、安全及QoS方面的比较

现在使用url访问您的本地Web服务:8080。

frps與上面的配置相同

frpc使用以下配置在计算机B上启动。此示例用于公开SSH服务(端口22)并注意sk预共享密钥的remote_port字段,并且该字段已在此处删除:

# #启用HTTP健康检查 

但是谈到Web服务器和HTTP请求,您的Web服务器可能依赖于HostHTTP标头来确定要访问的网站Host在转发HTTP请求时,frp可以使用以下host_header_rewrite字段重写標头:

尽管来自浏览器的请求可能具有但HTTP请求在到达实际的Web服务器时将具有Host重写的标头。Host: Host:

请注意带有前缀的参数header_将添加到HTTP请求标头中。

这是https服务的示例:

您可以在nginx中启用proxy代理服务器协议支持以在HTTP标头中公开用户的真实IP X-Real-IP,然后X-Real-IP在Web服务中读取真实IP的标头

要求HTTP基本身份验證(密码)的Web服务

仅当proxy代理服务器类型为http时才能启用。

在浏览器中访问现在提示您输入用户名和密码。

locations指定用于路由的URL的前缀frps首先搜索文字字符串给定的最特定的前缀位置,而不管列出的顺序如何

指定要与plugin参数一起使用的插件。插件的配置参数应以开头plugin_local_ip并且local_port不用于插件。

介绍当今最新下载技术前沿平p2p

图1-2proxy代理服务器服务器示意图

proxy代理服务器服务器(Proxy)【1l是一种特殊类型的Intemet服务器在传统的Web应用

Φ,proxy代理服务器服务器用于扩展用户对Internet的数据访问能力为提高proxy代理服务器服务器的

系统效率,缓存(Cache)技術被引入到proxy代理服务器服务器中proxy代理服务器服务器将一些频繁访问

的数据存贮在内存或硬盘中,当用户通过proxy代理服务器服务器用户访问時如果数据在代

理服务器的缓存中,proxy代理服务器服务器就无需访问远程的服务器而只需通过本地缓存

为用户服务。流媒体proxy代理服务器垺务器的重要作用表现在:

proxy代理服务器服务器承担了一部分用户访问有效的降低了主服务器的访问负载,可

以提高用户访问的响应速度降低启动延迟。

proxy代理服务器服务器离用户较近网络状况较好,可以提供更好的流媒体服务可以

提高服务器的鲁棒性及节省网络资源。

然而proxy代理服务器服务器的主要问题在于如何保证主服务器的内容于proxy代理服务器缓存中的

内容的一致性即当服务器的内容更新后,如果保证proxy代理服务器服务器中缓存的数据即

时更新对这些问题的研究就产生了更智能的CDN技术。4

我要回帖

更多关于 代理proxy 的文章

 

随机推荐