分享
 
 
 

虚拟专用网VPN系列讲座(七)

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

VPN和网络地址译码

网络地址译码器NAT是一个可以在转发数据包的同时进行IP地址和TCP/UDP端口号转换的IP路由器。为了更好地理解NAT以及NAT的功能,我们可以设想一家小公司,有好几台主机需要连到Internet上,在这种应用系统中,一种可能的解决办法是为每一台需要上网的主机申请一个公共IP地址,但这么做,一方面公司需要承受较高昂的费用,另一方面由于IP地址的匮乏,申请新地址也不容易。利用NAT,这家公司则可以不必申请那么多公共IP地址,而是在公司内部网段上使用内部私用地址,当通过NAT路由器发送数据时,再使用NAT将私用地址转换成由ISP分配的合法注册的公共IP地址。通过这种方式,可以实现多台内部主机共享一个公共IP地址。

举例来说,假设这家小型公司有多台主机,在其内部网络中使用私用保留IP地址10.0.0.0/8,同时该公司申请了四个公共IP地址:w、x、y、z。那么当通过NAT路由器发送数据时,NAT可以采用静态方式或动态方式将10.0.0.0/8网络上所有私用IP地址映射成w、x、y、z这四个公共IP地址。

当有数据包需要外发时,源端IP地址和TCP/UDP端口号被映射成w、x、y、z和经过转换的TCP/UDP端口号。相反,当接收数据包时,目标IP地址和TCP/UDP端口号再被映射回私用IP地址和源TCP/UDP端口号。

在缺省情况下,NAT仅进行IP地址映射和TCP/UDP端口转换。某些协议数据流,如HTTP,其IP地址和端口信息只出现在IP报头和TCP/UDP报头中, NAT可以对其IP地址和端口号完成透明的的转换映射。

但是,另外有部分协议出于某些因素,将IP地址和TCP/UDP端口信息封装在协议自身报头中,如FTP将IP地址封装在FTP报头中。在这种情况下,如果NAT不能对FTP报头中的IP地址进行正确转换的话,就会引起连接错误。更有甚者,还有一些协议根本不用TCP或UDP报头,而是使用其他报头的某些字段来标识数据流。

当NAT需要对以上使用非IP、TCP、UDP报头的负载进行地址和端口转换时,就要用到一个特殊的组件--NAT编辑器。NAT编辑器的作用是对使用非IP、TCP、UDP报头的数据流进行适当的修改,以便它们能通过NAT路由器,同时得到正确的路由转发。

以下就PPTP协议和基于IPSec的L2TP协议分析在VPN环境中,NAT的适用情况。

一、PPTP数据流

PPTP数据流包括一条维持隧道的TCP连接和由GRE封装的隧道数据。其中,TCP连接属于可转换部分,直接由NAT对源TCP端口号进行透明翻译;而由GRE封装的隧道数据则属于我们在上面分析过的,其地址转换需要用到特定的NAT编辑器。 在隧道数据中,隧道是通过被封装在GRE报头中的源IP地址和CALL ID字段来标识的。假设现在有某公司,当其内部网络中有多台主机同时需要作为PPTP客户机与远程同一台PPTP服务器建立隧道连接时,这多台PPTP客户机经过NAT路由器,其内部不同的私有IP地址将被转换成同一个公共IP地址。同时,由于这些PPTP客户机本身意识不到它们的地址需要被转换,它们还可能在建立PPTP隧道时,采用相同的CALL ID。由此引发的后果是经过NAT转换后,发自多台不同PPTP客户机的隧道数据流具有完全相同的IP地址和CALL ID。

为了防止此类错误发生,针对PPTP协议的NAT编辑器必须对PPTP隧道的建立进行全程监控,并在每一台PPTP客户机的私用IP地址、CALL ID和公共IP地址以及PPTP服务器接收的CALL ID之间建立单独的映射关系。 NAT路由协议包含了一个PPTP编辑器,具有进行GRE报头中CALL ID转换功能,从而使得NAT在完成多私用地址到单公共地址的转换时,能在多条PPTP隧道之间进行有效区分。

二、基于IPSec 的L2TP数据流

基于IPSec 的L2TP数据流,其地址无法经NAT转换,因为UDP端口号经过加密处理,端口号的值受密码校验和的保护。不仅如此,由于以下两个因素,基于IPSec 的L2TP数据流甚至无法象PPTP数据流一样,通过特定编辑器来转译:

1)无法区分多路IPSec

ESP数据流 ESP报头中包含一个SPI--"安全参数索引"字段,该字段连接明文IP报头中的目标IP地址和诸如ESP 或认证报头AH 等IPSec安全协议,以此来标识某个IPSec安全关联SA。

对于经过NAT路由器出站的隧道数据,目标IP地址无须改变。相反,对于需要通过NAT路由器进入企业内部网的数据流,其目标地址必须映射成某个确定的私用IP地址,但此时我们会看到,进站的所有IPSec ESP数据流,其目标IP地址都是相同的,是同一个公共IP地址。为了能将多路IPSec ESP数据流彼此区分开,必须将目标IP地址和SPI映射成私有目标IP地址和SPI。但是,由于ESP认证报尾包含对ESP报头和有效载荷进行校验的密码校验和,如果修改SPI的话,会造成该密码校验和的失效,而不改变SPI,则无以区分多路IPSec ESP数据流。

2)无法改变TCP和UDP校验和

同样,在基于IPSec 的L2TP数据包中,UDP和TCP报头中也各自包含一个校验和,用于校验明文IP报头中源端和目标端IP地址。类似的,如果改变明文IP报头中地址,也会造成密码校验和的失效。而且,由于这两个密码校验和位于ESP有效载荷加密部分,因此我们无法试图在修改IP地址的同时,更新密码校验和。

由于上述原因,我们看到,使用基于IPSec 的L2TP协议的 VPN环境中,无法采用NAT实现网络地址转译。

结束语

随着经济全球化进程的日益加快,如今越来越多的公司、企业纷纷在全国各地乃至世界各地建立分支机构开展业务,开拓市场。办公场地和分支机构的分散化趋势,以及日渐庞大的移动办公大军的出现,使得所有这类企业都必须考虑同样一个问题:即如何在远程分部与公司总部以及用户之间建立快捷,安全、可靠的信息通信。

虚拟专用网VPN作为上述问题一个切实可行又经济节约的解决方案已经得到越来越广泛的重视和应用,这个系列讲座,对VPN的各个方面分别做了较详细的介绍,希望对想了解VPN的读者能有所帮助。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有