VPN隧道技术的研究和实现

时间:2022-10-11 10:40:01

VPN隧道技术的研究和实现

【摘 要】隧道技术是将一个数据包封装在另一个数据包中进行传输,从而达到在公共网络的两个节点之间传输私有数据的目的。本文主要描述VPN隧道技术,包括对于VPN隧道的一般技术要求,以及现在得到广泛应用的一些主要隧道协议。最后在与一些典型隧道技术进行比较之后,讲述我选择L2TP和IPsec隧道的理由,并且通过模拟工具实现了基于L2TP的远程拨号和安全的IPSec隧道。

【关键词】隧道;PPTP;L2TP;IPSec;VPN

Researching and Implementation of VPN Tunnel Technology

Chen qiang

(Center Hospital of Nanyang,Nanyang,China,473009)

Abstract: With the developing and improving of the Internet,more and more companies create their own private network used by Tunnel Technology.Tunneling is a method and mechanisms of encapsulate a packet within another packet,so as to accomplish transmission of private packet between two nodes.This article describes the VPN tunnel technolog, including the general technical requirements for VPN tunnel,and some tunneling protocols which is widely used.In the end I choose L2TP and IPSec by compare with some typical tunneling protocols,and implementation of remote dial-up Internet access based on L2TP by tools ,and setting security tunnel based on IPSec.

Key words: Tunneling;PPTP;L2TP;IPSec;VPN

1、VPN简介

VPN的英文全称是“Virtual Private Network”,翻译过来就是“虚拟专用网络”。虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。它是指在公用网络中建立专用的数据通信网络的技术,通过对网络数据的封包或加密传输,在公众网络上传输私有数据、达到私有网络的安全级别。它为我们提供了一种通过公用网络安全地对企业内部专用网络进行远程访问的连接方式。VPN实际上就是一种服务,用户感觉好象直接和他们的个人网络相连,但实际上是通过服务商来实现连接的。VPN还被被定义为通过一个公用网络(通常是因特网)建立一个临时的、安全的连接,是一条穿过混乱的公用网络的安全、稳定的隧道。

2、VPN隧道技术

当一个数据包被封装在另一个数据包的净荷中进行传送时,所经过的路径称为隧道。隧道(Tunneling)技术就是利用一种网络协议来传输另一种网络协议的技术,它是虚拟专用网所采用的一项关键技术。在虚拟专用网中,原有数据包首先要通过特殊的协议重新加密封装在另一个数据包中,然后再通过公共网络的传输协议(如TCP/IP)在公共网络中传输,当数据包到达虚拟专用网的 VPN设备时,VPN设备首先要对数字签名进行核对,核对无误后才能进行解包形成最初的形式。由于这种技术使用了一种网络传输协议来传输另一种网络传输协议,就像在公共网络中挖出了一条数据据传输的专用隧道一样,因此被称为隧道技术。

隧道技术非常有用。首先,一个IP隧道可以调整任何形式的有效负载。使用桌面或便携式计算机的用户能够透明地拨号上网来访问他们公司的网络。第二,隧道能够同时调整多个用户或多个不同形式的有效负载,这可以利用封装技术来实现。第三,使用隧道技术访问公司网时,公司网不会向Internet报告它的IP网络地址。第四,隧道技术允许接受者滤掉或报告个人的隧道连接。

3、隧道协议

为创建隧道,隧道的客户机和服务器双方必须使用相同的隧道协议。隧道技术可分别以第2层或第3层隧道协议为基础。第2层隧道协议对应于OSI模型的数据链路层,使用帧作为数据交换单位。PPTP(点对隧道协议)、L2F(第二层转发协议)和L2TP(第二层隧道协议)都属于第2层隧道协议,是将用户数据封装在PPP(点对点协议)帧中通过互联网发送。第3层隧道协议对应于OSI模型的网络层,使用包作为数据交换单位。IPSec(IP层安全协议)属于第3层隧道协议,是将IP包封装在附加的IP包头中,通过IP网络传送。无论哪种隧道协议都是由传输的载体、不同的封装格式以及用户数据包组成的。它们的本质区别在于,用户的数据包是被封装在哪种数据包中在隧道中传输。

4、隧道的实现

4.1选择L2TP和IPSec协议

L2TP允许远程用户通过Internet安全地访问企业网络,同时结合了PPTP和L2TP的特点,特别适合组建远程接入的VPN。而IPSec可以建立一条安全的隧道,对隧道传输中的数据进行加密,保证数据传输过程中的安全。

4.2基于L2TP的远程拨号

由于企业用户的移动性,通常采用远程拨号的L2TP连接到企业内部网络。在此用Vmware和DynamipsGUI模拟实现第二层VPN(l2tp)。路由器采用Cicso 3640-JK.BIN,实验拓扑如图1所示。

连接说明:R1的e0/3接口桥接在主机“本地连接”网卡上,通过该网卡接入互联网,R2的e0/3接口和“VMware Virtual Ethernet Adapter for VMnet1”桥接。然后Vmware上的主机拨号到R1上,通过R1连入Internet。

在做完Vmware虚拟机的设置后,使用DynamipsGUI 模拟网络环境:打开DynamipsGUI,路由器个数选2个,交换机个数0,桥接到PC,设备类型选3640,根据实验拓扑图,端口连接设置:Router1 E0/0 Router2 E0/0;Router1 E0/3 XPC P0/0;Router3 E0/3 XPC P0/1。

根据图1的网络拓扑图,配置路由器R1和R2,使之能够进行通讯,在配置过程中,要注意利用vpdn enable命令启动L2TP拔号。在配置好路由器以后,就要在windows中进行拔号连接,首先要修改注册表项,Windows2000/xp/2003 的L2TP缺省启动证书方式的IPSEC,因此必须向Windows 添加ProhibitIpSec 注册表值,并将该值修改为“1”以防止创建用于 L2TP/IPSec 通信的自动筛选器。然后新建L2TP拨号连接。在VPN服务器输入要拔号的IP地址。一条用于远程拨号上网的L2TP隧道建立完成。

4.3基于IPSec的安全隧道

虽然采用L2TP的远程拨号连接可以更好的使企业用户连接到企业内部网路,但是由于l2TP在传输数据过程中的不安全性,容易导致一些重要信息被窃取。因而通常采用IPSec保证VPN隧道的安全。网络拓扑图如图5所示。

将RA的e0/0接口桥接在主机“本地连接”网卡上,RB的e0/0接口和虚拟机的网卡“VMnet1”桥接。根据实验拓扑图,连接对应端口

Router1 E0/0 XPC P0/0

Router2 E0/0 XPC P0/1

Router1 E0/1 Router2 E0/1

然后配置图中的RA和RB两个路由器使之连通,在配置过程中使用md5等加密算法来加密隧道数据传输,并且要启动ipsec,配置好以后,在Windows下配置IPSec策略,完成在Windows下IPSec策略的配置,当配置好所有路由后,进行全网互通测试。测试成功后,一条基于的IPSec的安全隧道建立完成。

5、结论

隧道机制的实现是VPN技术的一个核心组件。可以说,没有隧道机制,也就不存在所谓的VPN技术。除了VPN外,隧道机制还被应用在许多其它的场合,例如移动IP。因此,必须深入研究隧道机制的实现和部署。

参考文献

[1] 郭聃.L2TP构建VPN[J].通讯世界,2002.

[2] 戴宗坤, 唐三瓶.VPN与网络安全[M].北京:金城出版社,2000.

[3] 张世永.网络安全原理与应用[M].北京:科学出版社,2002.

[4] W. Richard Stevens.TCP/IP详解[M].北京:机械工业出版社,2000.

[5] Davis Carlton RIPSec.VPN的安全实施[M].北京:清华大学出版社,2002.

[6] 陈淑荣.拨号虚拟专用网采用的L2TP及其相关技术分析[J].《数据通信》,1999.

[7] 翁亮,陈依群,诸鸿文.基于IPSec的网络层VPN技术[J].《通信技术》,1999.

上一篇:对无线网络优化的实践剖析 下一篇:希尔伯特-黄变换在微震信号分析中的应用