扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
三、VPN的实现技术
VPN实现的两个关键技术是隧道技术和加密技术,同时QoS技术对VPN的实现也至关重要。
1.VPN访问点模型
首先提供一个VPN访问点功能组成模型图作为参考。其中IPSec集成了IP层隧道技术和加密技术。
2.隧道技术
隧道技术简单的说就是:原始报文在A地进行封装,到达B地后把封装去掉还原成原始报文,这样就形成了一条由A到B的通信隧道。目前实现隧道技术的有一般路由封装(Generic Routing Encapsulation,GRE)L2TP和PPTP。
(1)GRE
GRE主要用于源路由和终路由之间所形成的隧道。例如,将通过隧道的报文用一个新的报文头(GRE报文头)进行封装然后带着隧道终点地址放入隧道中。当报文到达隧道终点时,GRE报文头被剥掉,继续原始报文的目标地址进行寻址。 GRE隧道通常是点到点的,即隧道只有一个源地址和一个终地址。然而也有一些实现允许点到多点,即一个源地址对多个终地址。这时候就要和下一跳路由协议(Next-Hop Routing Protocol,NHRP)结合使用。NHRP主要是为了在路由之间建立捷径。
GRE隧道用来建立VPN有很大的吸引力。从体系结构的观点来看,VPN就象是通过普通主机网络的隧道集合。普通主机网络的每个点都可利用其地址以及路由所形成的物理连接,配置成一个或多个隧道。在GRE隧道技术中入口地址用的是普通主机网络的地址空间,而在隧道中流动的原始报文用的是VPN的地址空间,这样反过来就要求隧道的终点应该配置成VPN与普通主机网络之间的交界点。这种方法的好处是使VPN的路由信息从普通主机网络的路由信息中隔离出来,多个VPN可以重复利用同一个地址空间而没有冲突,这使得VPN从主机网络中独立出来。从而满足了VPN的关键要求:可以不使用全局唯一的地址空间。隧道也能封装数量众多的协议族,减少实现VPN功能函数的数量。还有,对许多VPN所支持的体系结构来说,用同一种格式来支持多种协议同时又保留协议的功能,这是非常重要的。IP路由过滤的主机网络不能提供这种服务,而只有隧道技术才能把VPN私有协议从主机网络中隔离开来。基于隧道技术的VPN实现的另一特点是对主机网络环境和VPN路由环境进行隔离。对VPN而言主机网络可看成点到点的电路集合,VPN能够用其路由协议穿过符合VPN管理要求的虚拟网。同样,主机网络用符合网络要求的路由设计方案,而不必受VPN用户网络的路由协议限制。
虽然GRE隧道技术有很多优点,但用其技术作为VPN机制也有缺点,例如管理费用高、隧道的规模数量大等。因为GRE是由手工配置的,所以配置和维护隧道所需的费用和隧道的数量是直接相关的——每次隧道的终点改变,隧道要重新配置。隧道也可自动配置,但有缺点,如不能考虑相关路由信息、性能问题以及容易形成回路问题。一旦形成回路,会极大恶化路由的效率。除此之外,通信分类机制是通过一个好的粒度级别来识别通信类型。如果通信分类过程是通过识别报文(进入隧道前的)进行的话,就会影响路由发送速率的能力及服务性能。 GRE隧道技术是用在路由器中的,可以满足Extranet VPN以及Intranet VPN的需求。但是在远程访问VPN中,多数用户是采用拨号上网。这时可以通过L2TP和PPTP来加以解决。
L2TP是L2F(Layer 2 Forwarding)和PPTP的结合。但是由于PC机的桌面操作系统包含着PPTP,因此PPTP仍比较流行。隧道的建立有两种方式即:“用户初始化”隧道和“NAS初始化”(Network Access Server)隧道。前者一般指“主动”隧道,后者指“强制”隧道。“主动”隧道是用户为某种特定目的的请求建立的,而“强制”隧道则是在没有任何来自用户的动作以及选择的情况下建立的。
L2TP作为“强制”隧道模型是让拨号用户与网络中的另一点建立连接的重要机制。建立过程如下:①用户通过Modem与NAS建立连接;②用户通过NAS的L2TP接入服务器身份认证;③在政策配置文件或NAS与政策服务器进行协商的基础上,NAS和L2TP接入服务器动态地建立一条L2TP隧道;④用户与L2TP接入服务器之间建立一条点到点协议(Point to Point Protocol,PPP)访问服务隧道;⑤用户通过该隧道获得VPN服务。
与之相反的是,PPTP作为“主动”隧道模型允许终端系统进行配置,与任意位置的PPTP服务器建立一条不连续的、点到点的隧道。并且,PPTP协商和隧道建立过程都没有中间媒介NAS的参与。NAS的作用只是提供网络服务。PPTP建立过程如下:①用户通过串口以拨号IP访问的方式与NAS建立连接取得网络服务;②用户通过路由信息定位PPTP接入服务器;③用户形成一个PPTP虚拟接口;④用户通过该接口与PPTP接入服务器协商、认证建立一条PPP访问服务隧道;⑤用户通过该隧道获得VPN服务。
在L2TP中,用户感觉不到NAS的存在,仿佛与PPTP接入服务器直接建立连接。而在PPTP中,PPTP隧道对NAS是透明的;NAS不需要知道PPTP接入服务器的存在,只是简单地把PPTP流量作为普通IP流量处理。
采用L2TP还是PPTP实现VPN取决于要把控制权放在NAS还是用户手中。L2TP比PPTP更安全,因为L2TP接入服务器能够确定用户从哪里来的。L2TP主要用于比较集中的、固定的VPN用户,而PPTP比较适合移动的用户。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。