网站首页/网络技术列表/内容

虚拟专用网络详细说明

网络技术2024-01-05阅读
网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。 当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。

虚拟专用网络的基本概念
专用网络指的是企业内部的局域和广域网络。在过去,大型企业为了网络通讯的需求,往往必须投资人力、物力及财力,来建立企业专用的广域网络通讯管道,或采用长途电话甚至国际电话的昂贵拨接方式。在Internet蓬勃发展的现在,企业为了维持竞争力,通常需要将专用网络与Internet间适当地整合在一起,但是又必须花费一笔Internet连接的固定费用。基本上Internet是建立在公众网络的基础之上,如果企业可以将专用网络中的广域网络连结与远程拨号连接这两部份,架构在Internet这一类的公众网络之上,同时又可以维持原有的功能与安全需求的话,则将可以节省下一笔不算小的通讯费用支出。这个问题的解决方法,可以通过所谓的虚拟专用网络(Virtual Private Network, VPN)来达成。
虚拟专用网络的用途
VPN技术可以让公司员工在家或在公司外,通过公众网络(例如Internet)来和远程的公司服务器建立连接。从远程用户的观点来看,VPN是其计算机与公司服务器两者之间的点对点连接。

VPN技术也可以让公司通过公众网络(例如Internet)连接到分公司或其它公司。从公司网络的观点来看,VPN是两个公司计算机网络之间的广域网络连结。

在这两种状况下,虽然通讯的过程事实上是通过公众网络进行的,但若经过特别设计,其安全性就可以像专用网络通讯一样可以信赖,甚至更好。
当然,VPN技术也可以应用在Intranet之上,以便将在公司内部中具备有极机密性质的部门网络,和公司内其它网络之间隔离开来。使用VPN技术,系统管理员可以确保只有在公司网络上具有适当凭证的用户,才能通过VPN服务器来建立和该机密部门网络之间的VPN连接,并且获得访问该部门机密资料的权限。除此之外,通过VPN进行的所有通讯均可以加密。未具备适当凭证的用户,是无法查看这些资料与通讯的。
虚拟专用网络的基本需求
VPN是Client/Server架构的技术,一个VPN解决方案至少必须提供下列功能︰
· 用户验证 - 这个解决方案必须验证用户的身份,以及严格限制只有经过授权的用户才可以通过VPN访问服务器端的资源和信息。另外,这个解决方案也必须提供审核及记录,以便显示何人在何时访问何种信息。
· 地址管理 - 这个解决方案必须指派一个专用网络上的地址给客户端,同时必须确保这些私人地址的机密性。
· 资料加密 - 在公众网络上传送的资料,必须经过处理,让网络上其它未经授权的人无法访问。
· 钥匙管理 - 这个解决方案必须能够产生及更新客户端及服务器端的加密钥匙。
· 多重协议支持 - 这个解决方案必须能够处理公众网络上所常使用的通讯协议。这些协议包括 Internet Protocol (IP)、Internet Packet Exchange (IPX) 等等。
Windows 2000中,提供了数种解决方案,其中以Point-to-Point Tunneling Protocol (PPTP)或Layer 2 Tunneling Protocol (L2TP)为基础的Internet VPN解决方案,不但能符合以上所有基本需求,同时还可充分享受到Internet普及所带来的好处。另外IP Security Protocol (IPSec) Tunnel Mode的解决方案,虽然只符合以上所说明的部份需求,但在某些特定情况下,仍然是可以适用的。下面就为大家介绍其观念。
隧道(Tunneling)
隧道的概念
隧道就是使用网络的基础设施,将一个网络上的资料通过另一个网络传送的方法。如前面所提到的虚拟专用网络的不同应用中,在两端之间所建立起来的虚拟专用网络,就是一种隧道技术的运用。
举例来说,若A网络在B网络上建立一条隧道(tunnel)。A网络上在隧道两端的计算机之间要互相传递资料,就必须有一致的通讯协议,但资料在通过隧道传送的过程中,却必须使用B网络所用的通讯协议。我们称要传送的资料为载量(payload),对B网络来说,载量可以是A网络所用通讯协议的帧(frame)或数据包(packet)。为了让载量可以在B网络上的隧道端点(tunnel endpoint)之间传送,隧道协议(tunneling protocol)必须将该帧或数据包加上一个额外的标头再封装起来。这个额外标头会提供路径选择的信息,让封装后的载量可以在B网络上传送到隧道的另一端点去。载量到达隧道的另一端点时,就会解除封装,还原成原来的帧或数据包,继续传送到A网络另一端最终的目的地去。隧道(tunneling)技术包括了上述的封装、传输及解除封装整个过程。
B网络在其中所扮演的是一个传输网络,它可以是Internet这个目前最为人所知,最普及且经济的网络服务,但也可以用其它任何可以当作传输网络的公众或专用网络替代。
隧道技术的发展已有一段时间。成熟的隧道技术范例包括︰
· 通过IP网络的SNA隧道 (SNA tunneling over IP internetworks) - System Network Architecture (SNA)的帧会被封装上UDP及IP标头,再通过公司的IP网络传送。
· 通过IP网络的IPX隧道 (IPX tunneling for Novell NetWare over IP internetworks) - IPX数据包会被封装上UDP及IP标头,再通过IP网络传送。
最近几年又推出了许多新的隧道技术。包括︰
· 点对点隧道协议 (Point-to-Point Tunneling Protocol, PPTP) - PPTP可以为IP、IPX或NetBEUI传输加密,然后封装上IP标头,再通过公司IP网络或公众IP网络如Internet传送。
· 第二层隧道协议 (Layer 2 Tunneling Protocol, L2TP) - L2TP可以为IP、IPX或NetBEUI传输加密,封装上适当标头后,将它们通过任何支持点对点资料流传送的网络,例如IP、X.25、Frame Relay或ATM传送。
· IPSec隧道模式 (Internet Protocol Security (IPSec) Tunnel Mode) - IPSec隧道模式可以为IP载量加密,然后封装上IP标头,再通过公司IP网络或公众IP网络如Internet传送。
隧道的运作
隧道是由客户端及服务器端构成,两端必须使用相同的隧道协议(tunneling protocol)工作。大部份的隧道上,使用隧道传输协议来传送数据,而隧道维护协议则可视为一种管理隧道的机制。隧道技术可以以第二层或第三层的隧道协议为基础,这里所谓的层是对应到Open Systems Interconnection (OSI) 参考模型的。
第二层对应到数据链路(Data-Link)层,以帧(frame)为单元交换资料。PPTP、 L2TP及 Layer 2 Forwarding (L2F)都是第二层的隧道协议,这些协议都会将载量封装在「点对点通讯协议 (PPP)」帧中,再以隧道协议封装,再通过网络传送。因为第二层隧道协议是以PPP通讯协议为基础,因此也就继承了一些很有用的功能,例如用户验证、动态地址指派、数据压缩、数据加密等。若再配合使用Extensible Authentication Protocol (EAP),就可以支持各种先进的用户验证方法,如一次性密码及智能卡等。
第三层对应到网络(Network)层,以数据包(packet)为资料交换单位。IP-over-IP及IPSec隧道模式,就是第三层隧道协议的范例,这些协议会先将IP数据包处理(如压缩、加密)后,封装上额外的IP标头,然后再将它们通过IP网络传送。
对于第二层隧道技术来说,隧道就像是一个session。隧道的两个端点必须同意该隧道的建立,并协商两者间的设定,例如地址的指派或加密、压缩的参数等。隧道必须具有建立、维护,然后终止的过程。
第三层隧道技术通常会假设所有关于设定方面的问题,并非在通讯过程中协商,而会在事前以手动方式处理。对于这些协议来说,可能就没有隧道维护阶段。
一但隧道建立之后,就可以开始传送数据。隧道的客户端或服务器端会使用隧道传输协议来准备要传送的资料,当资料到达另一端之后,就会移除隧道传输协议的标头,再将资料转送到目标网络上。
隧道的类型
依隧道建立方式的不同,我们可以分为自愿型隧道及义务型隧道两种类型。
自愿型隧道 (Voluntary Tunneling)
当用户使用隧道客户端软件,发出建立虚拟连接的请求,来连接到目标隧道服务器时,由于用户的计算机就是隧道的端点之一,且自愿作为隧道的客户端,所以称为自愿型隧道。为了达到此功能,客户端计算机上必须安装适当的隧道协议。
在拨接的情况下,客户端必须在建立隧道之前,先建立一个拨号连接到网络。这是最常见的隧道类型。最佳的例子,就是拨接到Internet的用户,他们必须先拨接到ISP连上Internet,才能建立通过Internet的隧道。

对于和LAN连接的计算机来说,客户端已经与网络连接,而该网络已提供将资料传送到隧道服务器端的服务。这种情况通常发生在公司LAN上的用户,公司LAN已连上Internet,因此他们不需要拨号连接,就能直接建立通过Internet的隧道。认为VPN需要拨号连接是很常见的错误观念。事实上它只需要IP网络,使用拨号连接到Internet,是准备建立隧道的预备动作,但并不属于隧道协议本身的一部份。

义务型隧道 (Compulsory Tunneling)
某些具备VPN能力的远程访问服务器(Remote Access Server),可以被设定作为隧道的客户端,它与隧道服务器端间建立隧道,且义务为远程拨接用户服务,所以称为义务型隧道。用户的计算机不再是一个隧道端点,取而代之的是位于用户计算机及隧道服务器之间的远程访问服务器。用户计算机上不需要安装隧道客户端软件,也不需要隧道协议,因此我们也可以说,用户被迫(被迫与义务是同义的)使用远程访问服务器所代为建立的隧道。
随着支持隧道协议的不同,这种设备也有不同的名称,如PPTP的Front End Processor (FEP)、L2TP的L2TP Access Concentrator (LAC)或IPSec的IP Security Gateway。下图是以Internet、PPTP为例。

FEP可被设定成利用隧道来处理所有的拨接客户端。或者,FEP也可被设定成根据用户名称或目的地不同,利用隧道来处理个别的拨接客户端。FEP与隧道服务器之间的隧道,可以被多个拨接客户端所共享,因此该隧道会等到最后一位隧道用户中断连接之后才终止。


(出处:viphot)
网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。

相关阅读