期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

面向小微型企业的VPN跨域互联平台的设计

时间:2015-04-01 11:15 文章来源:http://www.lunwenbuluo.com 作者:陈泓等 点击次数:

  摘  要:文章研究一种跨域VPN互联方案并设计一个开放平台,让使用者用按需充值的方式使用VPN服务,为小微企业提供低成本的VPN方案。该平台在开源的OpenVPN平台基础上研发完成,由企业客户端、个人客户端、代理服务端和系统管理工具等四个部分组成,采用了虚拟网卡、虚拟网桥、隧道技术,并采用数据库技术实现系统管理功能。 

  关键词:VPN;虚拟网卡;虚拟网桥;隧道协议;OpenVPN 

  中图分类号:TP311     文献标识码:A      文章编号:1006-8937(2015)06-0059-03 

  VPN(Virtual Private Network,虚拟专用网络)是指利用密码技术和访问控制技术在公共网络(如Internet)中建立的专用通信网络。 

  本文以开源OpenVPN项目为基础,研究在互联网上部署一个开放的平台,提供跨域的VPN互联服务,让使用者用按需充值的方式使用VPN服务,为小微企业提供低成本的VPN方案。 

  1  工作基础 

  本文的研究基础是单域VPN代理机制与OpenVPN。 

  1.1  单域VPN代理机制 

  单域VPN代理是常见的VPN方案。每一个需要接受外部访问的企业网络,都在网络边缘部署一个VPN网关,这需要购买独立的设备,有一定的成本负担。 

  大公司的VPN的使用频率高,投入较高的成本购买VPN硬论文检测件服务器或者租用ISP提供的VPN服务是物有所值。但是小微企业对VPN的使用是偶发的,而且VPN访问的资源通常是企业网络内部的某台主机(如数据库服务器或Web服务器)而不是整个网络,因而投入专项资金去部署VPN网关成本上不合算,故希望有低成本的解决方案。 

  1.2  OpenVPN 

  OpenVPN是一个开源VPN项目,能在Linux、xBSD与Windows 2000/XP上运行,其核心技术是虚拟设备,包括虚拟网卡和虚拟网桥。 

  虚拟网卡是使用网络底层编程技术实现的一种驱动软件,安装后在主机上多出现一个网卡,可以像其它网卡一样进行配置。服务程序可以在应用层打开虚拟网卡:如果应用软件(如IE)向虚拟网卡发送数据,则服务程序可以读取到该数据;如果服务程序写合适的数据到虚拟网卡,应用软件也可以接收得到。虚拟网卡在很多操作系统下都有相应的实现,这也是OpenVPN能够跨平台一个很重要的理由。 

  在OpenVPN中,如果用户访问一个远程的虚拟地址(属于虚拟网卡配用的地址系列,区别于真实地址),则操作系统会通过路由机制将数据包发送到虚拟网卡上,服务程序接收该数据并进行相应处理后,通过物理网卡从外网上发送出去,远程服务程序通过物理网卡从外网上接收数据,并作相应处理后,发送给虚拟网卡,则应用软件可以接收到,完成了一个单向传输的过程。反之亦然。 

  虚拟网桥存在于VPN服务器端,表现为使用软件模拟一个真实的以太网交换机。它的作用是把一个以太网络接口和一个或多个虚拟网卡桥接在一个网桥接口上,就像它们在一个以太网子网内。其最重要的作用有两点: 

  ①MAC学习。像交换机一样建立MAC地址-端口的对照表。 

  ②报文转发。每发送一个数据包,网桥都会提取其目的MAC地址,从自己的地址-端口对照表中查找由哪个端口把数据包发送出去,使数据到达对应的虚拟网卡。 

  OpenVPN只提供了核心功能的支持。在实际应用中,需要进行一些修改和定制开发,方可满足具体需求,并提供辅助功能。 

  2  跨域VPN代理平台架构与工作机制 

  描述了跨域VPN代理平台的架构和工作机制如图1所示。图1中有三个关键实体:企业内部网络A中的FTP资料服务器、中间网络C中的VPN代理服务器、外地局域网B中的PC。图1中的虚线部分表示虚拟连接,一次VPN访问经过了三个不同的局域网,对于不同的外地PC和不同的公司局域网,都由同一代理服务器作为中继,体现跨域互联的特点。 

  2.1  平台架构 

  平台由三个逻辑部件构成:企业客户端(部署在资料服务器上)、个人客户端(部署在外地PC上)和代理服务端(含管理工具,部署在代理服务器上)。 

  企业客户端的主功能是为资料服务器申请VPN接入服务,个人客户端的主功能是登录VPN代理服务器,代理服务端的主功能是提供VPN代理服务并管理用户权限、流量、日志。 

  在使用VPN时,首先在资料服务器上调用企业客户端向VPN代理服务器发起注册,获得一个C网的IP地址,并保持连接,然后在外地PC上调用个人客户端登录VPN,也获得一个C网的IP地址,经过这两步建立起一个虚拟通道,使外地PC访问资料服务器。 

  2.2  工作机制 

  假设网络C的内部网段地址是10.0.0.0/8,资料服务器经过注册,得到了一个IP地址10.0.0.234。 

  下面从数据在三个逻辑部件中的流转过程来说明该平台的工作机制。 

  2.2.1  个人客户端上 

  PC构造出一个数据包,目标是10.0.0.234,数据包发送到虚拟网卡,用隧道协议对数据包进行封装,目标是VPN代理服务器,数据包通过物理网卡发到VPN服务器。 

  2.2.2  VPN代理服务器上 

  物理网卡接收到数据包,用隧道协议对其拆封得到原始数据包,目标是10.0.0.234,守护进程查询得到其对应的虚拟网卡MAC地址,通过虚拟网桥转发到虚拟网卡,虚拟网卡上用隧道协议封装,目标是资源服务器,物理网卡将数据包发到资料服务器。 

  2.2.3  资料服务器上

  物理网卡接收到数据包,经过TCP/IP传送到VPN进程上,VPN进程用隧道协议解包,并将数据包再次传入TCP/IP协议栈,TCP/IP协议栈将其数据包发到对应的应用进程。 

  3  平台设计 

  以下从VPN代理服务器、企业客户端、个人客户端、系统管理工具四个软件组建来说明平台的设计方法。所示图片是测试期产生的实际效果图。 

  3.1  VPN代理服务器 

  服务器系统将运行Centos6.4平台上,主要开发语言为c语言,辅助语言为python。含核心模块ppp/bridge+pptp和辅助模块:cloud+deduction+backpwd。 

  ppp/bridge是本系统的驱动部分,扮演着VPN数据传输介质的作用。 

  PPP扮演虚拟网卡的角色,用来接收来自TCP/IP协议栈的网络分包并发送或者反过来将接收到的网络分包传给协议栈处理以及将网络分包在内核与用户态之间传送,模拟物理链路的数据接收和发送;Bridge用来存储CHM表,CHM记录着拨号上来的客户端的详细信息。Bridge扮演着交换机角色,主要对接收的数据包进行封装处理以及对数据进行相应转发。 


  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15380085870
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15380085870
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
15380085870
微信号咨询:
lunwenbuluoli