背景技术
虚拟专用网络(Virtual Private Network,以下简称VPN)是一种可利用广域网络(如因特网)将一远程使用者计算机与一本地网络的服务器建立专用的网络信道,进行数据传输,并提供就像在封闭的私人局域网络内部一样安全。
VPN为了确认安全性因此具有下列基本要求:
1.用户验证:VPN必须能够验证使用者身份并严格控制只有经注册授权的使用者才能登录。
2.地址管理:VPN必须能够为使用者分配专用网络上的地址,并确保地址安全性。
3.数据加密:对于通过因特网传输的数据必须经过加密,以确保因特网上的其它未授权使用者无法读取数据信息。
4.密钥管理:VPN必须能够产生并更新使用者端计算机与服务器的加密金钥。
5.支持多种协议:VPN必须能够支持因特网上普遍使用的基本协议,包括IP、IPX、PPTP(点对点信道协议)、L2TP(第2层通道协议)或因特网通信安全协议...等等。
因特网通信协议(IP)是一种在计算机网络(如因特网)上传输数据所使用的通信协议,然而IP并未定义任何的安全性机制。因此,因特网工程任务组(Internet Engineering Task Force,以下简称IETF)在Request for Comments(RFC)2401通信标准中定义一种因特网通信安全协议,是一种将IP流量加密的方法,可以保护网络通信,以防止数据修改、第三者检视、模拟,以及被撷取及回放的标准。
但由于无线网络技术的迅速发展,因此针对无线传输网络如何建立移动式VPN已成为相当重要的研究课题,而应用无线技术的移动式VPN,在IETF也定义了一Mobile IPv4(IETF RFC 3344)协议标准,但在该Mobile IPv4标准仍有一些的问题需要解决。
例如,当一移动节点(Mobile Node,以下简称MN)(如装设有无线网络设备的移动计算机),在一个内部网络(Intranet)漫游时,会由一个本地代理器(Home Agent,HA)分配一个移动IP(Mobile IP,以下简称MIP)给该MN,而当MN由该内部网络漫游至一外部网络(Internet)时,如在家中或外地分公司,MN会由当地的一外地代理器(Foreign Agent,FA)进入一个以因特网通信安全协议为安全基础的VPN网关器(VPN Gateway)向本地代理器(HA)进行注册,使VPN网关器对外地代理器(FA)建立因特网通信安全协议通道。
而MN在所漫游的外部网络中会得到一个新的转接地址(C areof Address,以下简称CoA),并要求VPN网关器为MN在每次漫游到一新的子网络时更新因特网通信安全协议信道。然而,所有进入该VPN网关器的数据封包信息都会被因特网通信安全协议安全标准加密,而外地代理器并无法解密这些加密过的数据封包,因此外地代理器(FA)并无法传输IP信息。
为了解决上述的问题,IETF的Mobile IPv4的工作小组(Working Group,WG)提出一种利用一部固定的机器(Mechanism)去支持VPN用户作国际无缝漫游(International Seamless Roaming,ISR)的方法。
该方法是在将内部网络中的本地代理器(HA)定义为一内部本地代理器(Internal Home Agent,以下简称i-HA),而在外部网络(External Network)中建置一外部本地代理器(External HomeAgent,以下简称x-HA),i-HA是作为内部网络管理(MobilityManagement)MN的漫游状况之用,而x-HA则是当MN漫游至外部网络时,作为管理MN的漫游状况之用。
而多出的x-HA可将已建立的因特网通信安全协议通道(Ipsectunnel)包覆在外部移动通信数据通信(x-MIP tunnel)之下,不需变更到已建立的因特网通信安全协议通道,因此当该MN由VPN网关器获得一新的转接地址(CoA)后,VPN网关器所建立的因特网通信安全协议通道则不会被破坏,也因此该外部代理器(FA)就可以解密该外部移动IP(x-MIP)的信道信息,故而用此方法可不必修改Mobile IPv4标准及因特网通信安全协议标准,只改变一些移动节点所必需要的转接地址(CoA)。
如图1所示,即为IETF所定义的移动式VPN标准架构示意图。在图1中有一MN 1通过一i-HA 11漫游在一内部网络10内,而当MN1由内部网络10移至一外部网络20时,MN 1必须向一个x-HA21进行注册,以获得一个新的CoA,而x-HA 21再向一VPN网关器22要求建立因特网通信安全协议通道连接至x-HA 21。最后VPN网关器22再向i-HA 11注册MN 1的VPN-TIA(VPN Tunnel InnerAddress),以便将所建立该因特网通信安全协议通道连接该i-HA11,形成由外部网络20及内部网络10皆可漫游的虚拟专用网络。
而图2所示,为移动式VPN的所建立信道的信息结构示意图,是MN1由内部网络10漫游到外部网络20的信道信号数据封包30,其中包含一层原始数据封包(Original Packet)31,在原始数据封包31前包覆一层内部移动IP(i-MIP)的信道信息32(由i-HA 11到VPN网关器22),而在内部移动IP信道信息32外更包覆一层因特网通信安全协议信道信息33(由VPN网关器22到x-HA 21),又在因特网通信安全协议信道信息33外再包覆一层外部移动IP(x-MIP)的信道信息34(由x-HA 21到MN1的转接地址)。
但是在这些公知IETF的方法中,会产生两个问题,第一是x-HA21应该被放置于何处最为适当?第二是可否相信x-HA是安全的?
由于在这些公知IETF的方法中是在外部网络20中建置一个固定(Static)的x-HA 21,若外部网络20中有包含若干个子网络(Subnet)时,则如何安排x-HA 21的放置地点,将会影响到漫游子网络间外部代理器(FA)与x-HA 21间的转接传递(Handoff)时间延迟,以及漫游子网络间的端至端(End-to-End)时间延迟问题。且由于x-HA 21是VPN网关器22无法控制的外部网络20中,因此是否能相信x-HA 21是否真的符合因特网通信安全协议的安全标准?
发明人为解决上述现有移动式VPN的需求以及问题,提出一种移动式VPN动态代理器(x-HA)分配方法及系统,可动态分配接近MN的本地代理器(HA)作为x-HA,因此可将漫游网络间的转接传递(Handoff)延迟及端至端(End to End)延迟降到最小,且可完全结合VPN的因特网通信安全协议安全控制,是一合理且能有效改善上述缺点的发明。
附图说明
图1为因特网工程任务组所定义的移动式虚拟专用网络标准架构示意图;
图2为该移动式虚拟专用网络的所建立信道的信息结构示意图;
图3为本发明移动式虚拟专用网络的是统架构示意图;
图4为该移动节点在内部网络漫游的注册流程图;
图5为该移动节点在内部网络漫游的时态示意图;
图6为该移动节点在外部网络漫游的注册流程图;
图7A、图7B是为该移动节点在外部网络漫游的时态示意图。
图号说明
1 移动节点(移动节点) 11 内部本地代理器(i-HA)
10 内部网络 20 外部网络
21 外部本地代理器(x-HA) 22 虚拟专用网络网关器
30 信道讯号数据封包 31 原始数据封
32 内部移动IP信道信息 33 IPsec信道信息
34 外部移动IP信道信息 80 移动节点(MN)
54 外部本地代理器(x-HA) 40 内部网络
41 DHCP服务器 42 内部路由器
43 子网络(subenet) 44 无线基地台(WAP)
45 内部本地代理器(i-HA) 46 内部外地代理器(i-FA)
50 外部网络 51 外部路由器
53 外地AAA服务器(AAAF) 54 外部本地代理器(x-HA)
55 外部外地代理器(x-FA) 56 DHCP服务器
57 无线基地台(WAP) 60 非管制区(DMZ)
61 本地AAA服务器(AAAH) 62 VPN网关器
具体实施方法
为了使贵审查委员能更进一步了解本发明为达成预定目的所采取的技术、手段及功效,请参阅以下有关本发明的详细说明与附图,相信本发明的目的、特征与特点,当可由此得一深入且具体的了解。如图3所示,为本发明移动式VPN的系统架构示意图。本发明主要是可动态分配一外部网络中最接近一移动节点80的本地代理器(HA)作为一外部本地代理器(x-HA)54,以便让MN80向x-HA54进行注册,完成移动式虚拟专用网络(Mobile VPN)因特网通信安全协议信道的建立。
本发明可利用在外部网络领域内所使用的DHCP服务器、AAA(Authentication,Authorization and Accounting)服务器或DNS服务器...等,都可以用来动态分配x-HA,以选择在外部网络中最接近MN 80的本地代理器(HA)分配成为x-HA 54,且由于x-HA 54最接近MN 80,因此x-HA 54与MN 80间的延迟能够被降到最低。而在外部网络中子网(inter-subnet)间的端至端转接传递(Handoff)也将变的更为快速,另外亦可将在外部网络中的另一本地代理器(HA)作为负载平衡之用。
虽然如此,但最重要的仍是x-HA 54的安全机制问题,因此较佳地可使用AAA服务器来分配x-HA 54,例如我们可以采用Diameter基础协议(Diameter Base on Protocol)(IETF RFC 3588)作为AAA服务器,不仅能分配x-HA,更能够在漫游时移动变化的若干个代理器(Agents)之间,建立安全连接(Security Association以下简称SA),并作为金钥分发中心(Key Distribution Center,KDC)。
如图3所示有一内部网络(Intranet)40及至少一外部网络(Internet)50,内部网络40是一个受保护的私人网络(ProtectedPrivate Network),连接设有一DHCP服务器41及一内部路由器(Interior Router)42,内部路由器42连接一非管制区(DMZ)60,非管制区(DMZ)60是因特网后面的实体区域,面对防火墙位于保护后端系统和数据的第二层防火墙前面,而非管制区(DMZ)60又连接有一本地AAA服务器(以下简称AAAH)61、一VPN网关器62及一外部路由器(Exterior Router)51,而外部路由器51则连接至外部网络50(Internet)。
而在内部网络40中又可能包含了若干个的子网络(Subnet)43,每一子网络43都连接至少一无线基地台(Wireless Access Point,WAP)44,用以无线连接至少一个MN80。而在内部网络40中更设置有一个i-HA 45及一内部外地代理器(Internal Foreign Agent,以下简称i-FA)46,如图3中显示i-HA45是连接于第一子网络(Subnet1)上,而i-FA46则连接于第二子网络(Subnet 2)上,而DHCP服务器41则连接于第三子网络(Subnet 3)上。
如图4及图5所示,是为MN 80在内部网络40漫游的注册流程图及时态示意图。由于DHCP服务器41的功能主要是用以动态分配网络内每一部计算机的IP地址,故而DHCP服务器41会不断发出一个广播和查询信息100,侦测网络上是否有新计算机联机(S200)。
因此当MN 80漫游至内部网络40的其它子网络时中漫游时,如从第二子网络(Subnet 2)漫游至第三子网络(Subnet 3)时,此时DHCP服务器41会发现MN 80,而MN 80会发出一IP地址的要求信息105给DHCP服务器41,而DHCP服务器41即会分配一新的动态IP地址110给MN 80(S205)。
而MN 80即可利用新的IP地址作为一转接地址(CoA),向内部本地代理器(i-HA)45发出一个注册请求(Registration Request以下简称Reg-Req)信息115(S210),由于i-HA 45原本就能识别MN 80,故而会进行注册,并会回复MN 80一注册回复(Registration Reply,以下简称Reg-Reply)信息120(S215),以完成内部网络的漫游注册程序。
如图3所示,外部网络(Internet)50是一个不受保护的公众网络(Unprotected Public Network),其中可能包含有若干个外部网络所组成,图3所显示有一个第一外部网络及一个第二外部网络,而在每一外部网络中又可能包含有若干个子网络,且可分别连接有一外地AAA服务器(Foreign AAA Server,以下简称AAAF)53、一x-HA 54、一外部外地代理器(External Foreign Agent,以下简称x-FA)55、一DHCP服务器56及至少一无线基地台(WAP)57。
如图6及图7A、图7B所示,是为MN 80在外部网络50漫游的注册流程图及时态示意图。当MN 80从内部网络40漫游至外部网络50时,同样地,当地DHCP服务器56自动分配一动态IP地址给MN 80(S400),MN 80利用IP地址作为一转接地址(CoA)300,并向x-HA 54发出一Reg-Req信息305(S405)。
而在Reg-Req信息305中应包含有一本地地址(Home Address,以下简称HoA)、一个HA地址、一个需被AAAH 61授权的认证信息以及一MN的网络接收标识(Network Access Identifier,NAI)...等等的请求。
且在x-HA 54所收到的Reg-Req信息305中,HoA与HA地址都应被设为0.0.0.0,表示MN 80是想要在外部网络中获得一外部本地地址(External Home Address,以下简称x-HoA),因此x-HA 54会产生一个特征向量(MIP-Feature-Vector)属性值对(AttributeValue Pair,以下简称AVP),其中设置有MN 80的本地地址请求(Home-Address-Requested以下简称HAR),以及本地代理器请求(Home-Agent-Requested)和一个共同地址请求(以下称Co-Located-Mobile-Node-Requested)标识符(Flag)为”1”。
此时x-HA 45会将MIP-Feature-Vector AVP设置在一个授权确认请求(AA-Mobile-Node-Request,以下简称AMR)信息310中,从Reg-Req信息中取得必要的信息加到相关的AVP中,并将AMR信息310发送至当地的AAAF 53(S410)。
AAAF53会先检查在MIP-Feature-Vector AVP中的本地代理器请求标识位(Flag bit)是否为”1”。
若为”1”时,AAAF 53会要求AAAH 61允许分配在漫游的外部网络中的一个x-HA 54作为MN 80的本地代理器(HA),因此AAAF53会在所收到的AMR信息310中MIP-Feature-Vector AVP内设置一个外地的本地代理器(Foreign-Home-Agent-Available)标识,并且在一候选本地代理器主机(MIP-Candidate-Home-Agent-ost)AVP中填入至少一个候选x-HA 54的网络接收标识(NAI),然后AAAF53再把AMR讯息310传送至AAAH 61(S415)。
当AAAH 61接收到AAAF 53所传来的AMR信息310后,必需进行授权MN 80的Reg-Req信息305,因此AAAH 61可通过该AMR信息310中所设置的一个授权工作指标(MN-AAA-SPI,SecurityParemeters Index)来确定MN80是使用那一种的安全性策略,如加密算法和长期分享金钥。
如果AAAH 61授权成功则会检查AMR信息310的MIP-Feature-Vector AVP中的Home-Agent-Requested的标识位以及Foreign-Home-Agent-Available的标识位是否都等于为”1”,若是,则表示MN要求动态分配一x-HA 54在所漫游的外部网络区域中,而AAAH 61也会在漫游的外部网络区域中建立x-HA 54与MN的间的安全连接连接(SA)(S420)。
因此AAAH 61会产生一个至少128位随机数的金钥组件(KeyMaterials),一般统称为Nonces,利用Nonces可计算产生一个通信金钥(Session Key),以确该安全连接(SA)的安全性。
而在x-HA 54及AAAF 53所发送的AMR信息310中的MIP-Feature-Vector AVP也包含有MN 80与本地代理器(HA)间的金钥请求(Key-Requested)。而通信金钥(Session Key)可通过以Diameter协议(Diameter Protocol)的AAA服务器被安全地传输到x-HA54上。
这是因为因特网通信安全协议标准或是运输层安全(Transport Layer Security,TLS)标准(IETF RFC 2246)即是强制应用在保护Diameter节点(包括服务器、客端与代理器)之间的通信数据。但该通信金钥(Session Key)并不会直接传递到MN 80上,因为如此将会使该通信金钥暴露在没有保护网络协议中,而只给MN80金钥组件(Nonces)。
因此AAAH61会再产生一个本地代理器请求(Home-Agent-MIP-Request,以下简称HAR)信息315,把通信金钥(Session Key)及Reg-Req信息封装在HAR信息315的相关的AVP中,通过AAAF 53传送给候选的x-HA 54(S425),AAAF 53主要是扮演代理服务器(Proxy)的角色。因此x-HA54能够从HAR讯息315中的相关AVP中取得x-HA 54与MN80的金钥组件(Nonces)。
而x-HA54在所接收到的HAR信息315中如果没有包含MN 80的地址(以下称MIP-Mobile-Node-Address),且在特征向量属性值对中的Home-Agent-Address-Requested的标识位是被设为”1”时,则x-HA 54将自动为MN 80分配一x-HoA设置在MIP-Mobile-Node-Address AVP中,并且x-HA 54会自动将它本身的地址设置到MIP-Home-Agent-Address AVP中。
接着,x-HA 54会将MN 80与x-HA 54间的通信金钥储存起来,并将金钥组件复制到一注册回复(Reg-Reply)上,然后x-HA 54产生一本地代理器回复(Home-Agent-MIP-Answer,以下简称HAA)信息320通过通过AAAF 53再传送至该AAAH 61(S430),而HAA信息320中至少包括了一个包含有该金钥组件(Nonces)的注册回复(以下称MIP-Reg-Reply)AVP、一个结果码(Result-ode)AVP、一个包含有MN 80x-HoA的MIP-Mobile-Node-address AVP,以及一个包含x-HA 54地址的MIP-Home-Agent-Address AVP。
AAAH 61在接收到x-HA 54通过该AAAF 53所送出的HAA信息320后,AAAH 61会从MIP-Mobile-Node-Address AVP中获得MN 80的x-HoA,以及从MIP-Home-Agent-Address AVP中获得x-HA 54的地址。
然后AAAH 61会建立一新的HAR信息325,并将x-HoA及x-HA地址分别填入MIP-Mobile-Node-Addre ss及MIP-本地代理器地址AVP,接着AAAH 61发送HAR信息325向i-HA 45进行注册(S435)。
当i-HA 45接收到HAR信息325后,i-HA 45从HAR信息325中的AVP获得x-HoA后,会将所获得x-HoA 54的地址注册为MN 80的公共CoA,使i-HA45识别HAR信息325后建立出一新的HAA信息330传送至AAAH 61(S440)。
然后,AAAH 61在接收i-HA 45所发出的HAA信息330后,可由其中的结果码(Result-Code)AVP显示出已授权成功。因此AAAH61会建立一授权确认回复(AA-Mobile-Node-Answer,以下简称AMA)信息335通过AAAF 53传送至x-HA 54(S445),而在AMA信息335中包括一DIAMETER成功的结果码(Result-Code)、该MIP-Home-Agent-Address AVP、该MIP-Mobile-Node-Address AVP以及MIP-Reg-Reply AVP,而这些AVP可从所接收到的HAA信息330中被复制出来。
当x-HA 54接收到由AAAH 61所传来的AMA信息335后,可从结果码(Result-Code)AVP中显示出已授权成功,则x-HA 54会从AMA信息335的MIP-Reg-Reply AVP中获得一个Reg-Reply信息340,并将该Reg-Reply信息340转送至MN 80(S450)。否则x-HA 54会悄悄地将AMA信息335丢掉。
一旦MN 80接收到Reg-Reply信息340,则MN80即可取得新的x-HoA、x-HA地址以及金钥组件(Nonces),然后MN80使用所接收到的金钥组件(Nonces)和相同于AAAH 61的散列算法及长期分享金钥(Longterm Shared Key)计算出正确的通信金钥(SessionKey)。
因此,当MN80经过AAAH 61授权,以及通过x-HA 54及i-HA45以Mobile IPv4安全标准注册后,即可使用x-HoA与VPN网关器连结,使MN 80与VPN网关器之间建立因特网通信安全协议通道345(S455),恢复像在内部网络一样的安全通信。
而在完成x-HA 54的分配后,在漫游的外部网络内各个当地的本地代理器(HA)间的安全连接(SA)也将被建立完成。此后,MN 80即可直接使用MIPv4标准与当地的x-HA 54进行注册通信,而不需要再通过该AAA服务器,当MN 80在外部网络内获得一个新的转接地址(CoA)后,即可如同在内部网络内漫游般,只需要向被分配的x-HA 54注册即可,而不必再向i-HA 45进行注册。
而且在相同的外部网络内并不需再重建因特网通信安全协议通道,不过通信金钥(Session Key)是有寿命的,如果寿命终止,则仍需通过Diameter基础的AAA服务器产生一新通信金钥(Session Key),另外若MN 80再移动至另外一个外部网络时,又必须向当地的一个新的x-HA请求注册时,则上述的整个过程将再次被执行,x-HA再次被分配,而因特网通信安全协议通道也将再被重建。
本发明提供一种使用动态分配x-HA替换静止x-HA的技术,因而漫游时的本地代理器(HA)间传递转接延迟以及端至端的延迟都将被显著的降低,而且本发明是以Diameter MIPv4应用在转接的本地代理器之间建立的安全连接(SA),因此x-HA是可以被相信的,且对x-HA及i-HA的注册动作是同时被完成的。故而本发明实现了一个移动式VPN的系统平台,迥然不同于公知者的设计,能提高整体的使用价值。
上述所揭露的附图、说明,仅为本发明的实施实例而已,凡精于此项技术者当可依据上述说明作其它种种改良,而这些改变仍属于本发明发明精神及所界定的权利要求中。