摘要:通信工程师互联网技术考试实现方式:由于虚拟专用网的“虚拟”重点在于逻辑网络与物理网络的分离,所以VPN的种类很多,实现VPN的方法也可以有很多种。从VPN实现的层次来说,可以有网络层VPN、数据链路层VPN等。网络层VPN多采用IP协议,而数据链路层VPN则由ATM或帧中继虚电路实现。这里主要讨论网络层VPN的实现方法,控制路由选择、隧道和网络层封装等。
3.2.4.2 实现方式
由于虚拟专用网的“虚拟”重点在于逻辑网络与物理网络的分离,所以VPN的种类很多,实现VPN的方法也可以有很多种。从VPN实现的层次来说,可以有网络层VPN、数据链路层VPN等。网络层VPN多采用IP协议,而数据链路层VPN则由ATM或帧中继虚电路实现。这里主要讨论网络层VPN的实现方法,控制路由选择、隧道和网络层封装等。
(1)控制路由选择
控制路由选择(路由过滤)即控制路由的传递,只有一定的网络才能接受属于同一利益实体内其他网络的路由信息。与这组网络有关的路由信息被过滤,使之不被相连的其他网络得到,而其他非VPN的路由信息被隔绝在VPN网络之外。服务供应商路由器仅将来自属于VPNA的网络的路由信息传递到同样属于VPNA的网络。由于缺乏到达VPN外其他网络的路由信息,VPN主机无法响应源地址为VPN外结点的数据报,由此实现专有服务。
这种实现VPN的方法存在很多缺点。首先是实现从VPN内到VPN外的路由很困难。其次是这种环境假设使用一个公共的路由核心,这就会使得每个VPN使用的地址不能和这个公共网络结构上的其他VPN的地址发生冲突,即VPN不能使用任意的私有地址。另外,采用这种方法,两个VPN之间不能通过单点连接。VPN也不可能通过一个单一结点访问Internet,必须设置一个所谓“网关”,所有外部的数据流都经过这个控制点,可以加强访问控制,记录外部数据流。
实现VPN之间的互连,需要将初始数据报传输到VPN的互连点,如果允许这些数据报通过,同样的数据报再传送到最终的VPN目的地址。如果在VPN的人口点没有使用网络地址翻译(NAT)技术,将不支持这种通信结构。
总的来说,仅靠路由过滤来实现VPN只是一种初级的方法,它容易导致错误,降低网络的安全性和灵活性。
(2)随道(Tunneling)
通过隧道传送数据是实现VPN的另一种更有效的方法。普遍采用的隧道机制有:源路由器和目的路由器之间的GRE(Generic Routing Encapsulation)随道,路由器到路由器或主机到主机的隧道L2TP(Layer2Tunneling Protocol)和PPTP(Point-to-Point Tunneling Protocol)以及DVMRP(Distance VectorMulticast Routing Protocol)随道。
①传统的隧道模式
GRE隧道通常是建立在源(人口)路由器和目的(出口)路由器之间。在隧道的开始处,通过隧道传输的报文(已经按正常的IP协议定义加了报头)再被加上一个新的报头(GRE报头),目的地址为隧道终点路由器的地址。被封装后的报文在隧道中传输,当报文到达隧道终点时,GRE报头被去掉,报文再按照原来的IP报头中携带的目的地址,继续传送。
采用隧道实现VPN时,有许多优点:首先,每一个与公共网络相连接的连接点,被配置成使用公共网络和相关隧道寻址和路由的物理连接。隧道技术使用的隧道出口点地址,属于公共网络,而隧道内传输的报文,使用的是VPN的地址空间,这样就将VPN的路由与公共网络的路由隔离开来,多个VPN能够重复使用相同的私有地址空间,使VPN在一定程度上独立于公共网络。
其次,隧道能够封装许多不同的协议簇,这使得基于隧道的VPN可以模拟专有网络的许多功能。
隧道VPN的另一个优点是将公共路由环境与VPN路由环境分割开来。VPN可以通过虚拟网络使用符合VPN管理需要的路由协议同样,公共网络也可以根据网络的管理需要,选择路由协议,而不受VPN网络使用的路由协议的限制。
GRE隧道也并非VPN设计的万全之策,GRE隧道必须手工配置,每次隧道终点改变,都需要重新配置。当然,GRE隧道也可以自动配置,但会导致路由和性能方面的很多问题。最差的结果是导致形成路由配置环,即数据会在隧道中循环通过。
②虚拟专用拨号网络(VPDN)
VPDN可以使用户通过本地连接接人到公共Internet,就可以建立一条从客户系统到想要连接的远程服务点的隧道。在实现虚拟专用拨号网络的技术中?最常用的有两种L2TP和微软的PPTP隧道。L2TP融合了早期的L2F协议和PPTP协议。而PPTP包含在桌面计算机操作系统中,因而得到广泛的应用。
a.L2TP
使用L2TP隧道时,拨号用户拨人NAS,根据本地配置文件或NAS与配置服务器协商以及身份确认后,自动建立一条到达预定终点的L2TP隧道,而这个终点也是用户PPP会话的结束点。
b.PPTP
PPTP是允许端系统配置和建立到任意地点的PPTP服务器的点到点隧道,而不需要NAS参与PPTP协商和隧道的建立。拨号用户拨人到NAS,随后,在客户端系统和客户想要连接的任意PPTP服务器之间建立PPTP会话,这可以通过传统的路由信息实现,而用户也需在PPTP服务器上具备一定的权限。
与PPTP协议一起使用的有Microsoft Point-tc Point(MPPE)协议,以增加PPTP的安全性。它在标准的Microsoft拨号网络中增加了集成数据保密(封装)。
MPPE在PPP数据报进人PPTP隧道之前,在客户计算机上将PPP数据报进行封装。当客户计算机与隧道终点协商PPP时,封装会话初始化。隧道中的交换机无法解密PPP数据报。
c.L2TP与PPTP的区别
为了理解I.2TP和PPTP的区别,首先,比较一下客户发起的隧道和NSA(网络访问服务器)或拨号网络服务器发起的隧道。前者是指主动的隧道,即隧道的建立是根据用户特定的需要.而后者是指被动的隧道,即隧道的建立与用户的行为无关,不允许用户有任何选择。
PPTP是主动隧道模式,拨号用户有权在初始PPP协商之后选择PPTP隧道目的端,,PPTP隧道对于服务提供商来说是透明的,服务供应商不需保留PPTP服务器,只需像传送其他IP数据一样传送PPTP数据。
L2TP是被动隧道模式。服务供应商控制PPP会话的终结点。这在用户需要通过服务供应商拨人到内容供应商时,很有作用。
选择L2TP或PPTP实现VPDN的关键在于是由服务供应商还是用户掌握VPN的控制权。L2TP模型有大贵已配置的用户,使得VPN很像普通的拨号访问系统。L2TP的隧道开始于NAS。PPTP模型的客户是一个单独的端用户,所建立的VPN结构是端到端隧道。
(3)网络层封装
封装技术在提供为VPN连接所需的分段和虚拟时非常有效,它能够在协议找的任意层实现。正在制定的Internet网络层封装标准是IPSec(IPSecurity)。
网络层封装有两种主要方法。最安全的方法是主机之间端到端的数据报封装。另一种方法通常是指“隧道模式”,只是封装在中间设备(路由器)之间传输的数据,而端系统到第一跳路由器之间传输的是明文。如果在端系统和第一跳路由器之间传输的数据被截取.将会危及到VPN的安全。当VPN采用隧道方法实现时,对隧道的封装并不能改变隧道进出口的脆弱性,因为这些点逻辑上是公共网络的-部分,不是VPN网络的一部分。任何对这些的点破坏都会损坏专用网络的保密性。
在端到端封装策略中,VPN的安全粒度达到端系统层,而隧道策略中,VPN的安全粒度达到子网层,在路由器之间被封装传输的数据被认为是安全的。
可以说.包括IPSec,都不是实现VPN的独立的技术,它是VPN技术的一个子集。
返回目录:
编辑推荐:
通信工程师备考资料免费领取
去领取