当前位置: 首页 > 图文教程 > 网络编程 > ASP > VPN技术详解(下)

ASP
ASP调用ORACLE存储过程并返回结果集
用ASP实现网页BBS
关于Global.asa文件的深入研究与session变量失效提示的具体方法
简易ASP+注册系统
防护手册:如何防止ASP木马在服务器上运行
用Visual Basic实现多画面播放功能之二
如何增强ASP程序性能(1)
如何增强ASP程序性能(2)
如何增强ASP程序性能(3)
ASP备份数据库
二十八条改善 ASP 性能和外观的技巧
在Form域中Post大于100K的数据
如何使用ASP制作模似动态生长的表单?
Microsoft IIS 真的如此「不安全」吗?(1)
Microsoft IIS 真的如此「不安全」吗?(2)
Microsoft IIS 真的如此「不安全」吗?(3)
Microsoft IIS 真的如此「不安全」吗?(4)
Microsoft IIS 真的如此「不安全」吗?(5)
关于页面和代码分离
ServerVariables 对路径的操作

ASP 中的 VPN技术详解(下)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 53 ::
收藏到网摘: n/a

  (紧接中篇)

数据传输阶段

一旦完成上述4阶段的协商,PPP就开始在连接对等双方之间转发数据。每个被传送的数据报都被封装在PPP包头内,该包头将会在
到达接收方之后被去除。如果在阶段1选择使用数据压缩并且在阶段4完成了协商,数据将会在被传送之间进行压缩。类似的,如果
如果已经选择使用数据加密并完成了协商,数据(或被压缩数据)将会在传送之前进行加密。

点对点隧道协议(PPTP)

PPTP是一个第2层的协议,将PPP数据桢封装在IP数据报内通过IP网络,如Internet传送。PPTP还可用于专用局域网络之间的连
接。RFC草案“点对点隧道协议”对PPTP协议进行了说明和介绍。该草案由PPTP论坛的成员公司,包括微软,Ascend,3Com,和
ECI等公司在1996年6月提交至IETF。可在如下站点http://www.ietf.org http://www.ietf.org参看草案的在线拷贝.PPTP使用
一个TCP连接对隧道进行维护,使用通用路由封装(GRE)技术把数据封装成PPP数据桢通过隧道传送。可以对封装PPP桢中的负载数
据进行加密或压缩。图7所示为如何在数据传递之前组装一个PPTP数据包。
第2层转发(L2F)
L2F是Cisco公司提出隧道技术,作为一种传输协议L2F支持拨号接入服务器将拨号数据流封装在PPP桢内通过广域网链路传送到L2F
服务器(路由器)。L2F服务器把数据包解包之重新注入(inject)网络。与PPTP和L2TP不同,L2F没有确定的客户方。应当注意
L2F只在强制隧道中有效。(自愿和强制隧道的介绍参看“隧道类型”)。

第2层隧道协议(L2TP)
L2TP结合了PPTP和L2F协议。设计者希望L2TP能够综合PPTP和L2F的优势。
L2TP是一种网络层协议,支持封装的PPP桢在IP,X.25,桢中继或ATM等的网络上进行传送。当使用IP作为L2TP的数据报传输协议
时,可以使用L2TP作为Internet网络上的隧道协议。L2TP还可以直接在各种WAN媒介上使用而不需要使用IP传输层。草案RFC“第2
层隧道协议”对L2TP进行了说明和介绍。该文档于1998年1月被提交至IETF。可以在以下网站http://www.ietf.org
http://www.ietf.org获得草案拷贝。
IP网上的L2TP使用UDP和一系列的L2TP消息对隧道进行维护。L2TP同样使用UDP将L2TP协议封装的PPP桢通过隧道发送。可以对封装
PPP桢中的负载数据进行加密或压缩。图8所示为如何在传输之前组装一个L2TP数据包。
PPTP与L2TP

PPTP和L2TP都使用PPP协议对数据进行封装,然后添加附加包头用于数据在互联网络上的传输。尽管两个协议非常相似,但是仍存
在以下几方面的不同:

1.PPTP要求互联网络为IP网络。L2TP只要求隧道媒介提供面向数据包的点对点的连接。L2TP可以在IP(使用UDP),桢中继永久虚
拟电路(PVCs),X.25虚拟电路(VCs)或ATM VCs网络上使用。

2.PPTP只能在两端点间建立单一隧道。L2TP支持在两端点间使用多隧道。使用L2TP,用户可以针对不同的服务质量创建不同的隧
道。

3.L2TP可以提供包头压缩。当压缩包头时,系统开销(overhead)占用4个字节,而PPTP协议下要占用6个字节。

4.L2TP可以提供隧道验证,而PPTP则不支持隧道验证。但是当L2TP或PPTP与IPSEC共同使用时,可以由IPSEC提供隧道验证,不需
要在第2层协议上验证隧道。

IPSec隧道模式

IPSEC是第3层的协议标准,支持IP网络上数据的安全传输。本文将在“高级安全”一部分中对IPSEC进行详细的总体介绍,此处仅
结合隧道协议讨论IPSEC协议的一个方面。除了对IP数据流的加密机制进行了规定之外,IPSEC还制定了IPoverIP隧道模式的数据
包格式,一般被称作IPSEC隧道模式。一个IPSEC隧道由一个隧道客户和隧道服务器组成,两端都配置使用IPSEC隧道技术,采用协
商加密机制。

为实现在专用或公共IP网络上的安全传输,IPSEC隧道模式使用的安全方式封装和加密整个IP包。然后对加密的负载再次封装在明
文IP包头内通过网络发送到隧道服务器端。隧道服务器对收到的数据报进行处理,在去除明文IP包头,对内容进行解密之后,获的
最初的负载IP包。负载IP包在经过正常处理之后被路由到位于目标网络的目的地。

IPSEC隧道模式具有以下功能和局限:

1.只能支持IP数据流

2.工作在IP栈(IPstack)的底层,因此,应用程序和高层协议可以继承IPSEC的行为。

3.由一个安全策略(一整套过滤机制)进行控制。安全策略按照优先级的先后顺序创建可供使用的加密和隧道机制以及验证方式。
当需要建立通讯时,双方机器执行相互验证,然后协商使用何种加密方式。此后的所有数据流都将使用双方协商的加密机制进行加
密,然后封装在隧道包头内。
关于IPSEC的详细介绍参看本文稍后的“高级安全”部分。

隧道类型
可以创建不同类型的隧道。
1.自愿隧道(Voluntarytunnel)
用户或客户端计算机可以通过发送VPN请求配置和创建一条自愿隧道。此时,用户端计算机作为隧道客户方成为隧道的一个端点。
2.强制隧道(Compulsorytunnel)
由支持VPN的拨号接入服务器配置和创建一条强制