在访问广域网期间维持为指定站点中的IPv6节点分配的唯一本地地址的机密性的制作方法

文档序号:7948748阅读:264来源:国知局
专利名称:在访问广域网期间维持为指定站点中的IPv6节点分配的唯一本地地址的机密性的制作方法
技术领域
本发明涉及在利用一个指定站点(例如一个虚拟专用网企业)内的IPv6节点例如经由诸如因特网之类的广域网与该指定站点外的节点通信期间,维持站点中的这些IPv6节点为了在该站点内通信而使用的唯一本地IPv6地址(即站点内地址)的机密性。
背景技术
为了保护对广域网(例如因特网)具有访问权限的计算机并同时保持这些计算机的基于网络的服务而进行了多种尝试。其中尤其感兴趣的是尝试维持网络节点使用的IP地址的机密性。
具体而言,扩展用于企业应用的私网的领域的努力正在进行中,其中大的私有站点可以基于私有(例如安全的)连接来形成并且在远程节点之间建立路由。较大私有站点的一个示例是虚拟专用网,如2003年5月公布的Rosen等人的因特网草案“BGP/MPLS IP VPNs”<draft-ietf-ppvpn-rfc2547bis-04.txt>所述。Rosen等人描述了一种方法,利用该方法,IPv4服务提供商可以使用IP骨干为其用户提供IPv4 VPN(虚拟专用网)。但是,Rosen等人还在第11章(“Accessing Internet from a VPN”)中建议私有路由将需要泄漏给全球因特网。因此,对私有路由的发现将使得非受信源能够分析IP地址,从而发现VPN的内部拓扑。
不幸的是,私网中的所有节点都需要使用全球源地址,以便执行经由广域分组交换网(例如因特网)与远程节点之间的任意通信。因此,VPN无法被用来隐藏VPN用户的全球源地址。
一种用于隐藏VPN用户的全球IPv4源地址的方法是部署网络地址翻译器。网络地址翻译器(NAT)最初开发是为了延迟由于基于IPv4的私网中的网络节点重复使用私有IPv4地址而导致的地址耗尽。NAT充当私网和广域网(例如因特网)之间的接口并将在指定的IPv4地址和作为到因特网的附接点的NAT所使用的公共IPv4地址之间进行翻译。具体而言,NAT执行IP地址的第3层翻译,以使得公共因特网地址映射到私有IP地址,如因特网工程任务组(IETF)公布的请求注释1918(RFC 1918)所详细描述的,该请求注释1918可在万维网www.ietf.org上获得。该映射允许企业将大量私有地址映射到有限数目的公共地址,从而限制因特网用户需要的公共地址的数目。
另外,私有IPv4网络中NAT的使用使得能够对因特网“隐藏”网络节点使用的私有IPv4地址,这是因为私有IPv4地址是因特网号码分配机构(IANA)为私网特别预留的。IANA为私网预留的示例性IPv4网络前缀包括10/8前缀(单个A类网络号)、172.16/12前缀(一组1个连续的B类网络号)和192.168/16前缀地址(一组256个连续的C类网络号)。
因此,NAT使得VPN用户能够隐藏它们的IPv4源地址,从而能够对外部实体隐藏VPN拓扑。
不幸的是,NAT会遇到各种问题,如IETF的多个公布(包括RFC2993)所详细描述的。因此,对于是否将针对RFC 2460定义的因特网协议版本6(IPv6)开发NAT存在疑问。
因此,对于部署IPv6网络的安全性和防止IPv6地址被分配到指定站点之外的需求越来越强烈。例如,2004年9月24日由Hinden等人提出的题为“Unique Local IPv6 Unicast Addresses”<draft-ietf-ipv6-unique-local-addr-06.txt>的因特网草案描述了一种IPv6单播地址格式,该格式是全球唯一的,并且希望用于站点边界内的本地IPv6通信,同时允许站点被组合起来或被私自互连。
虽然Hinden等人意识到唯一的本地IPv6单播地址可能被“泄漏”到站点边界外的因特网上,但是Hinden等人推荐实现边界路由器策略和防火墙过滤策略来防止本地IPv6单播地址被发送到因特网上。因此,Hinden等人意识到的缺陷在于无法利用当前的路由技术在全球因特网上路由本地IPv6前缀。

发明内容
存在对于以下布置的需求该布置使得IPv6节点能够在指定站点(例如虚拟专用网(VPN)企业)内安全性地通信,同时如果IPv6节点需要访问广域网,也可以维持机密性而无需使用NAT。
还存在对以下布置的需求该布置使得IPv6 VPN客户无需使用NAT就能够获得对广域网的访问权限,同时避免与VPN相关的寻址或拓扑信息的公开。
利用本发明实现了这些和其他需求,其中网络包括网络节点和网关。每个网络节点具有用于在指定站点内通信的相应的唯一的站点内IPv6地址,每个站点内IPv6地址都具有不在指定站点以外广告的第一IPv6地址前缀。所述网络节点可以从所述指定站点内获得用于移动或站点外通信的唯一的站点外IPv6地址。该站点外IPv6地址具有不同于第一IPv6地址前缀的第二IPv6地址前缀,该第二IPv6地址前缀被网关广告给指定站点和广域网。网关利用其相应的站点外IPv6地址与每个相应的IPv6节点建立安全连接(例如隧道),并创建指定相应的站点外IPv6地址和站点内IPv6地址的相应的绑定缓存条目。因此,网关在维持站点内IPv6地址的机密性的同时提供了广域网访问。
本发明的一个方面提供了一种在IPv6移动节点中的方法。该方法包括获取唯一的站点内IPv6地址以用于与指定站定内的至少一个第二IPv6网关节点通信,其中所述唯一的站点内IPv6地址只有所述指定站点内的节点可达,所述唯一的站点内IPv6地址具有不被广告到所述指定站点以外的第一地址前缀。该方法还包括从所述指定站点内获取具有不同于所述第一地址前缀的第二地址前缀的唯一的站点外IPv6地址,该站点外IPv6地址在所述指定站点内和外都被广告。该方法还包括将第一分组发送到指定站点外的对端节点。具体而言,具有第一头部的第一分组被生成,所述第一头部具有指定对端节点的IPv6地址的目的地地址字段和指定站点外IPv6地址的源地址字段。包括第一分组和用于第二IPv6网关节点接收和去除的第二头部的第二分组被生成,该第二头部具有指定第二IPv6网关节点的IPv6地址的目的地地址字段和指定站点内IPv6地址的源地址字段。具有第一和第二头部的第二分组被经由建立在IPv6节点和第二IPv6网关节点之间的安全连接输出到第二IPv6网关节点,从而第二IPv6网关节点将第一分组传输到指定站点外并传递到对端节点。
本发明的另一方面提供了一种在网关中被配置用于在指定站点和广域网之间提供连通性的方法。该方法包括仅在指定站点内广告第一IPv6地址前缀经由所述网关可达,所述第一地址前缀不被广告到所述指定站点以外;以及向所述指定站点和所述广域网广告第二IPv6地址前缀经由所述网关可达。该方法还包括基于具有包括第一IPv6地址前缀的唯一的站点内IPv6地址的第一IPv6节点,与指定站点中的第一IPv6节点之间建立安全连接。经由所述安全连接从所述第一IPv6节点接收第一分组,该第一分组具有指定所述站点内IPv6地址的源地址字段、指定所述网关的IPv6地址的目的地地址字段和第二分组。响应于指定所述网关的IPv6地址的所述第一分组的所述目的地地址字段向目的地节点转发所述第二分组。具体而言,网关通过以下步骤执行转发(1)从第一分组中恢复出第二分组,该第二分组具有指定具有所述第二IPv6地址前缀的唯一的站点外IPv6地址的源地址字段和指定所述目的地节点的IPv6地址的目的地地址字段,以及(2)在无需所述IPv6节点的站点内IPv6地址的情况下输出所述第二分组。绑定缓存条目被创建,其指示所述第一IPv6节点的站点外IPv6地址经由所述IPv6节点的站点内IPv6地址可达。
本发明的附加优点和新颖特征将部分在以下描述中提出,并且在浏览过以下描述之后,本领域技术人员将部分地发现这些优点和新颖特征,或者可以通过实施本发明来获知这些优点和新颖特征。本发明可以凭借所附权利要求书中具体指出的手段和组合来实现和达成。


参考附图,其中各图中具有相同标号的元件代表相同的元件,附图中图1是示出根据本发明实施例的包括一个站点的联网系统的图,该站点包括IPv6节点和被配置用于在该站点和广域网之间提供连通性的网关。
图2是根据本发明实施例详细示出图1中的IPv6主机节点的图。
图3是根据本发明实施例详细示出图1中的网关的图。
图4A、4B、4C和4D是根据本发明实施例示出在图1中的IPv6主机节点和网关之间发送和接收的经封装的IPv6分组的示例的图。
图5A、5B和5C是根据本发明实施例概括的在维持站点内IPv6地址的机密性的同时利用图1的IPv6主机节点和网关发送IPv6分组的方法的流程图。
具体实施例方式
图1是示出根据本发明实施例的联网系统10的图,该联网系统10被配置用于在指定站点14中的主机网络节点(“主机”)12a和对端节点(“CN1”和“CN2”)12b和18之间发送分组。主机网络节点(“主机”)12a和站点内对端节点(“CN1”)12b是同一站点14的一部分,它们在站点14中共享受信关系(例如共同安全性协定、供应商协定等等)。站点内网络节点12a和12b具有各自的分配的站点内IPv6地址“FB0E::C01A”16a和“FB0E::C101”16b,用于在指定站点14中通信。
这里使用的术语“站点”遵从RFC 3582中指定的定义根据因特网协议自治操作并具体确定该网络的寻址计划和路由方针的实体。这里使用的“站点”的该定义等同于RFC 1918中定义的术语“企业”。
术语“站点内IPv6地址”这里限定为只在该站点内可访问和可到达的IPv6地址。因此,“站点内IPv6地址”本质上等同于(并因此也被称为)“唯一的本地IPv6地址”,如以上Hinden等人提出的题为“UniqueLocal IPv6 Unicast Addresses”的因特网草案所定义的。
因此,节点12a和12b可基于互相的受信关系而利用它们各自的唯一的本地IPv6地址(即站点内IPv6地址)16a和16b通信。站点地址可从全球范围获得,如RFC 3513所述;可替换地,站点地址可从组织范围获得,如2003年12月8日Hain等人的题为“Goals for Organizational-ScopeCommunications”<draft-hain-templin-ipv6-localcomm-04.txt>的因特网草案所述。
但是,外部对端节点18与站点14中的任意节点12之间不具有这样的受信关系。因此,要求网络节点12能够对外部对端节点18隐藏它们唯一的本地IPv6地址16。具体而言,隐藏唯一的本地IPv6地址(例如16a)不仅保护了对应主机(例如12a)的身份,还隐藏了站点14的拓扑。
根据所公开的实施例,指定站点14包括被配置用于经由外部网络22(例如因特网)在主机网络节点(例如12a)和外部对端节点18之间传输数据的网关20。具体而言,网关20和主机网络节点12a基于该网络节点的唯一的本地地址16a使用安全连接(例如安全隧道)24。
根据所公开的实施例,网关20向网络节点12a分配相应的站点外IPv6地址26a。术语“站点外IPv6地址”这里被定义为全球可访问并且站点14中可达的IPv6地址,但该地址不被用于物理指向主机(例如12a)。相反,站点外IPv6地址26a是一个逻辑指示(类似于指针),其被动态映射(根据所公开的实施例)到提供连通性的第二地址。当主机节点12位于站点中时,第二地址是站点内地址(例如16a),当主机节点位于站点14外(即在广域网22中)时,第二地址是转交地址(例如26d)。站点外地址空间28被虚拟地置于站点网关处。
因此,网关20向网络节点12a分配相应的站点外地址作为公共的IPv6地址“ABCD::F0A0”26a,其具有被广告为经由网关20可达的IPv6地址前缀“ABCD::/64”28。网关20将地址前缀“ABCD::/64”28广告给指定站点14和广域网22两者。但是,网关20只在指定站点14内部而不在指定站点14外广告站点内IPv6地址16a、16b的IPv6地址前缀“FB0E::/64”30,因此,广域网22由于缺乏任意路由信息而无法路由具有站点内地址前缀“FB0E::/64”30的任意分组。因此,指定站点14内的唯一的本地地址16a、16b的机密性被维持。
所公开的实施例通过在站点14中部署“移动IPv6”协议的扩展版本而提供了对需要访问站点外相应节点“CN2”18的节点12a的可达性,例如由Johnson等人在2004年6月公布的题为“Mobility Support in IPv6”的RFC 3775所描述的。根据RFC 3775,移动IPv6协议使得移动节点能够从一条链路移动到另一链路并无需改变移动节点的IP地址。具体而言,移动节点被分配一个“归属地址”。该“归属地址”是在移动节点的归属链路上的归属子网前缀内分配给该移动节点的IP地址。既然移动节点被附接到其归属链路,寻址到其归属地址的分组利用传统的因特网路由机制被路由到该移动节点的归属链路。
RFC 3775的移动节点还被分配一个归属代理,该归属代理用于在移动节点离开其归属链路时,注册该移动节点在其到因特网的附接点处使用的任意转交地址。转交地址是与移动接点相关联的一个IP地址,该IP地址具有远离移动节点的归属链路的特定链路(即外地链路)的子网前缀。归属代理是移动节点的归属链路上的路由器,利用该路由器,移动节点注册了其当前转交地址。当移动节点远离其归属链路时,归属代理截获归属链路上想去往移动节点的归属地址的分组;归属代理封装这些分组并通过隧道发送分组到移动节点的已注册的转交地址。
因此,RFC 3775的移动节点通常可利用其“归属地址”来寻址无论移动节点到因特网的当前附接点是哪个,分组都可被路由到移动节点。移动节点还可以在移动到新链路之后继续与其他节点(固定的或移动的)通信。从而,移动节点远离其归属链路的移动对传输层和更高层的协议和应用而言是透明的。
根据所公开的实施例,“移动IPv6”协议通过使得站点内网络节点12a和12b能够利用它们的站点内地址16a和16b代替RFC 3775所述的转交地址而被扩展。站点内地址16a和16b还可被提供到内部域名服务(DNS)32a,从而使得DNS 32a能够将主机名“主机”和“CN1”解析成各自的站点内地址“FB0E::C01A”16a和“FB0E::C101”14b。
另外,充当RFC 3775所述归属代理的网关20被配置用于基于广域网22上公开广告的公共IPv6地址前缀“ABCD::/64”28将作为RFC 3775所述的“归属地址”的站点外地址,例如“ABCD::F0A0”26a,分配给节点12a,并将“ABCD::F102”26b分配给12b。站点外地址的分配可以根据需求而基于静态或动态分配。例如,如果站点14内的节点(例如12a)是移动IPv6节点,则可由外部DNS 32b(即与站点14分开的DNS,以确保站点14的安全性)规定和广告站点外地址(例如12a);如果节点(例如12b)需要到达因特网22,节点12b则可以例如通过RFC 3315所述的DHCPv6来动态获得站点外地址(例如26b)。
因此,所公开的实施例使得站点内节点12a、12b能够通过使用站点外地址26a、26b而对站点14外的节点18隐藏它们的站点内IPv6地址16a、16b。
另外,所公开的实施例与现有的IPv6协议兼容,从而使得主机节点12a在作为移动节点被实现时能够在其处于广域网22中时与任意节点通信;如下所述,移动节点12a向网关20使用的外部地址“ABCD::0010”26c发送绑定更新消息。该到网关20的绑定更新消息指定使用站点外地址“ABCD::F0A0”26a的移动节点12a是可经由网关20拥有的公共地址前缀“ABCD::/64”28中的外部转交地址“ABCD::C01A”26d到达的。因此,当移动节点12a处于广域网22中时,网关20能够与移动节点12a之间建立安全隧道,从而将任意想去往站点外地址“ABCD::F0A0”26a的分组封装到转交地址“ABCD::C01A”26d。
图2是示出根据本发明实施例的主机网络节点12(例如12a)的图。IPv6节点12包括地址获取资源,包括站点内地址获取资源40和站点外地址获取资源42。站点内地址获取资源40被配置用于获取使得能够与站点14内的其他节点(例如对端节点(CN1)12b或网关20)通信的唯一的站点内IPv6地址“FB0E::C01A”16a。获取资源40可被配置用于利用例如根据RFC 2462的无状态自动配置或可替换地根据RFC 3315的DHCPv6来获得站点内地址16a。
站点外地址获取资源42被配置用于从指定站点14获得具有地址前缀“ABCD::/64”28的唯一的站点外IPv6地址“ABCD::F0A0”26a,该地址前缀“ABCD::/64”28不同于站点内地址前缀“FB0E::/64”30。资源42可以根据应用而利用不同的技术来获取站点外地址26a。例如,可以根据RFC 2462分配永久站点外地址26a;或者可以基于网关20广告的前缀“ABCD::/64”28由资源42动态建立动态的站点外地址26a。可替换地,资源42可以根据RFC 3315中指定的DHCPv6协议来获取站点外IPv6地址26a。
获取的站点内地址16a和站点外地址26a被存储在各自的寄存器44和46中,以备分组发送和接收资源48使用。
分组发送和接收资源48被配置用于生成将利用网络节点12a和网关20之间的安全隧道24传输到指定站点14外的对端节点(CN2)18的分组。具体而言,分组发送和接收资源48包括具有路径选择资源52的分组生成资源50。分组发送和接收资源48还包括封装资源54、本地IP连接接口56和安全隧道接口58。
选择资源52被配置用于选择分组的路径,即利用由安全隧道接口58建立的安全隧道24或经由IP接口56的本地连接25(如图1所示)。根据所公开的实施例,如果IPv6节点12是移动节点,或者如果在固定节点的情况下分组的目的地(如目的地地址所指定的)在指定站点14外,路径选择资源52则选择安全隧道24。
图4A是示出由站点14中的主机节点12a输出的分组68的图,其中分组68封装了想去往对端节点“CN2”18的第一分组60。具体而言,分组生成资源50生成具有目的地地址字段62和有效载荷66的第一分组60,其中所述目的地地址字段62指定对端节点(CN2)18的IPv6地址“CACC::1001”36。在该示例中,假设主机节点12a是固定节点,路径选择资源52则由于目的地地址36不匹配所广告的地址前缀28或30而基于指定指定站点14外的地址36的目的地地址字段36选择站点外地址26a;因此,源地址字段64指定主机网络节点12a的站点外IPv6地址26a。封装资源54被配置用于将分组60封装成具有指定站点内IPv6地址“FB0E::C01A”16a的源地址字段70和指定网关20的站点内地址“FB0E::0010”16c的目的地地址字段72的第二分组68。
安全隧道接口58经由隧道24将分组68输出到网关20,从而使得网关能够解封装分组60并将分组60经由广域网22输出到对端节点18,而无需知道IPv6节点12a的站点内地址16a。如下所述,分组发送和接收资源48还被配置用于经由隧道24接收经封装的分组74和76,分别如图4B和4C所示。
图4B是示出从对端节点(CN2)18发起的分组78的网关20输出的分组74的图,该分组74将经由隧道24传输到站点14中的主机网络节点12a。网关20被配置用于以头部封装分组78,所述头部具有指定网关20的IPv6站点内地址“FB0E::0010”16c的源地址字段70和指定目的地主机节点12a的站点内IPv6地址“FB0E::C01A”16a的目的地地址字段72。
图4C是示出由网关20输出的分组76的图,其中分组76封装了已由站点内对端节点(CN1)12b发送的分组80,以备传递到站点14中的主机节点12a。如上所述,网关20被配置用于基于指定站点外地址“ABCD::F0A0”26a的目的地地址字段62将站点内分组80封装成经封装的分组76,其中网关20经由存储在网关中的相应绑定缓存条目来识别目的地。在此情况下,当主机节点12a在指定站点14中移动时,在主机移动节点12a和网关20之间的站点内隧道24在维持连通性方面是有效的。
图4D是示出由网关20输出的分组82的图,其中分组82封装了已由站点内对端节点(CN1)12b发送的分组80,其中移动节点12a不再处于站点14中,而是处于广域网22中。在此情况下,移动节点12a的分组发送和接收资源48被配置用于使用站点外地址26d作为根据移动IPv6协议的外部转交地址。如本领域中所知,分组发送和接收资源48可以利用不同手段在网关20的地址前缀“ABCD::/64”28中选择其外部转交地址。分组发送和接收资源48向网关20发送绑定更新消息以指示移动节点12a经由外部(即站点外)转交地址“ABCD::C01A”26d可达,并利用外部转交地址“ABCD::C01A”26d创建与网关20之间的安全隧道。因此,当移动节点12在广域网22中移动时,分组发送和接收资源48可以经由与网关20之间的安全隧道接收来自对端节点12b的分组80(如图4D所示)。
图3是示出根据本发明实施例的网关20的图。网关20包括被配置用于发送和接收站点14上的分组的进入接口90和被配置用于发送和接收广域网22上的分组的外出接口92。如图1所示,接口90和92中的每一个都可被连接到相应的防火墙94,以为指定站点14提供额外的安全性。
网关20包括广告资源94、分组转发资源96、被配置用于管理绑定缓存条目100的绑定缓存资源98、地址分配资源102和安全隧道生成资源104。广告资源94被配置用于只在指定站点14内广告站点内IPv6地址前缀“FB0E::/64”30。如上所述,站点内地址前缀“FB0E::/64”30不被广告到指定站点14外部,以确保指定站点内地址前缀“FB0E::/64”30的任意IPv6地址在广域网22中都不会被路由到。
广告资源94还在广域网22和指定站点14两者内广告站点外地址前缀“ABCD::/64”28。
安全隧道生成资源104被配置用于创建与指定站点14中的对应主机网络节点(例如12a)之间的安全隧道24。如上所述,网关20被配置用于生成与各个主机网络节点12之间的多个安全隧道24。例如在主机节点12a处于广域网22中并且使用其外部转交地址“ABCD::C01A”26d来通过安全隧道传递分组68、74的情况下,安全隧道生成资源104还被配置用于根据移动IP协议创建与广域网22中的移动节点之间的安全隧道。
绑定缓存资源98被配置用于创建和维持为每个分配的站点外地址26指定相应的转交地址的绑定缓存条目100,从而使得分组转发资源96能够针对各个隧道(例如站点内隧道24和站点外隧道)执行分组的封装和解封装。例如,如果主机节点12a在站点14内,绑定缓存资源98则更新相应的条目100以指定地址“ABCD::F0A0”是经由站点内地址“FB0E::C01A”16a可达的;相反,如果主机节点12a在广域网22中,绑定缓存资源98则更新相应的条目100以指定地址“ABCD::F0A0”是经由站点外地址“ABCD::C01A”26d可达的。
分组转发资源96被配置用于利用相应隧道24将接收自主机12的分组转发到适当的目的地。例如,分组转发资源96被配置用于接收来自主机网络节点12a的安全隧道24的图4A的分组68,删除头部部分70和72,并将恢复的分组60转发到广域网22,以备基于相应的目的地地址36传递到对端节点18。
分组转发资源96还被配置用于封装接收的分组,例如分别来自对端节点18和12b的分组78和80,并将各自封装的分组74和76输出到安全隧道24上,以传递到主机网络节点12a。如上所述,分组78是由分组转发资源96基于已由具有站点内地址前缀“FB0E::/64”30或站点外地址前缀“ABCD::/64”28之外的地址“CACC::1001”36的网络节点发起的分组78封装成的。相反,分组80是由分组转发资源96基于作为移动网络节点的主机网络节点12a来封装的。
但是,注意,在主机节点12a是移动网络节点的情况下,可以通过路由优化来优化站点内通信。路由优化的示例在RFC 3775中提供。因此,分组转发资源96被配置用于使得节点12a和12b之间能够进行路由优化。但是,分组转发资源96将防止在站点内IPv6节点12和任意站点外节点(例如对端节点(CN)18)之间发生任意路由优化。
图5A、5B和5C是根据本发明实施例概括在维持站点内IPv6地址的机密性的同时利用图1的IPv6主机节点和网关发送IPv6分组的方法的流程图。这里参考图5A、5B和5C描述的步骤可以作为存储在计算机可读介质(例如软盘、硬盘、EEPROM、CD-ROM等等)上或经由计算机可读传输介质(例如光纤线缆、导电传输线路介质、无线电磁介质等等)传播的可执行代码在各个移动路由器中实现。
方法开始于步骤110,其中广告资源94只在站点14内广告站点内地址前缀“FB0E::/64”30,并在指定站点14和广域网22两者内广告站点外地址前缀“ABCD::/64”28。
主机节点12(例如12a)的获取资源40在步骤112中利用根据RFC2462的无状态自动配置或根据RFC 3315的DHCPv6获得站点内IPv6地址16(例如“FB0E::C01A”16a)以用于站点内通信。如果需要,站点内IPv6资源40被配置用于在步骤112中将其站点内IPv6地址16和主机名发送到内部的域名服务器(DNS)32a。假设主机12a是固定节点,则在步骤114中,该固定节点可以开始与其他站点内IP地址通信并按需更新站点内DNS 32a。在此阶段,不需要使用站点外IPv6地址26,除非在步骤116中,主机网络节点12是移动节点,或者如果主机网络节点12是需要与指定站点14外的目的地节点18通信的固定节点。
在步骤116中假设主机节点12a由于移动或与外部节点18的通信而获取站点外IPv6地址26,站点外地址获取资源42则在步骤118中请求来自网关20的站点外IPv6地址。可替换地,资源42可以响应于检测到来自网关20的广告站点外地址前缀“ABCD::/64”28的路由器广告消息来生成其自己的站点外地址“ABCD::F0A0”26a。
假设主机12a发送请求到网关20,网关20的地址分配资源102则在步骤120中向主机12a提供站点外IPv6地址“ABCD::F0A0”26a,并且绑定缓存资源98在步骤120中更新其绑定缓存条目100,以指示站点外IPv6地址“ABCD::F0A0”26a是经由站点内地址“FB0E::C01A”16a可达的。
IPv6节点12a的安全隧道接口58在步骤122中创建与网关20的安全隧道生成资源104之间的安全隧道24。
在建立安全隧道24之后,主机网络节点12a能够开始向对端节点18发送分组。分组生成资源50在步骤124中生成第一IPv6分组60,该分组具有指定站点外IPv6地址26a的源地址字段64和指定对端节点18的IPv6地址36的目的地地址字段62。IPv6节点12a的封装资源54在步骤126中将分组60封装到第二分组68中,其中目的地地址字段72指定网关20的站点内IPv6地址16c。在步骤128中,安全隧道接口58将分组68经由安全隧道24输出到网关20。
参考图5B,如果在步骤130中主机网络节点12a是固定的,主机网络节点12a则可以在步骤132中经由不同于安全隧道24的路径25接收来自站点内节点12b的附加分组;在此情况下,主机网络节点12a接收如图4C所示的分组80而无需任意封装(即无需包含字段70和72的头部)。主机网络节点12a随后可以在步骤134中利用其站点内地址16a作为源地址并利用站点内地址16b作为目的地地址向站点内对端节点12b发送回复分组。
参考步骤136,假设网关20在步骤128中经由隧道24接收已由主机网络节点12a发送的分组68。分组转发资源96在步骤138中解析出第一分组60的目的地地址字段62,并在步骤140中确定目的地地址是否包含站点内地址前缀“FB0E::/64”30。如上所述,主机网络节点12a如果是移动节点,则将经由隧道24发送分组,无论目的地是位于指定站点14内还是站点14外(例如经由广域网22)。如果分组转发资源96确定目的地地址字段62指定站点内地址前缀“FB0E::/64”30(并假设目的地是固定节点),分组转发资源96则在步骤142中通过其内部路由表中指定的路径将解封装后的分组输出到站点14,否则就利用默认路径。另外,分组转发资源96可以按照需要在两个站点内节点之间发起路由优化。
如果在步骤140中目的地地址字段62没有指定站点内地址前缀“FB0E::/64”30,分组转发资源96则在步骤144中确定目的地地址字段62是否指定站点外地址前缀“ABCD::/64”28(例如针对目的地移动节点)。如果目的地地址字段62没有指定站点内地址前缀“FB0E::/64”30或站点外地址前缀“ABCD::/64”28,分组转发资源96则在步骤154中经由外出接口92将解封装后的分组60输出到广域网22上。
但是,如果目的地地址字段62指定站点外地址前缀“ABCD::/64”28,分组转发资源96则在步骤146中访问绑定缓存条目100,以获得与在目的地地址字段中指定的站点外地址26相对应的地址(例如针对站点内节点的站点内地址或针对站点外节点的站点外转交地址)。假设目的地节点在站点14中,分组转发资源96则在步骤148中将第一分组封装成第三分组,其中源地址字段70指定网关20的站点内地址16c,并且目的地地址字段72指定目的地网络节点12的站点内IPv6地址16。安全隧道生成资源14在步骤150中将封装后的分组输出到相应的隧道24上,以传递到相应的目的地;注意,如果没有隧道可用,例如由于传入的VoIP电话呼叫,安全隧道生成资源14则与相应的目的地节点12之间创建新隧道24。目的地节点12在步骤152中对接收的分组解封装,以便恢复原始分组。
图5C示出对从对端节点18输出的分组78的封装以传递到主机网络节点12a。外出接口92在步骤160中接收经由广域网22来自对端节点18的分组78,其中目的地地址字段62指定具有站点外地址前缀“ABCD::/64”28的站点外地址26a。响应于检测到站点外地址前缀“ABCD::/64”28,转发资源96在步骤162中访问绑定缓存条目100以获得相应的站点内地址16a。分组转发资源96在步骤164中将分组78封装成第四分组74,该第四分组74具有指定网关20的站点内IPv6地址16c的源地址字段70和指定主机网络节点12a的站点内IPv6地址16a的目的地地址字段72。
网关20的安全隧道生成资源104在步骤166中将第四分组74输出到隧道24上,以传递到目的地主机网络节点12a。如上所述,如果,不存在隧道24,例如由于来自对端节点18的传入VoIP呼叫,安全隧道生成资源104则与主机12a之间创建新隧道。主机网络节点12a在步骤168中对接收的分组74解封装,以便恢复分组78。
根据所公开的实施例,可以为指定站点内的IPv6网络节点提供全球可达性,同时在无需NAT的情况下维持站点内IPv6地址空间的机密性。因此,可以在不具有NAT通常遭遇的缺陷的情况下维持安全性。
注意,所公开的实施例还可以在不使用IPv6协议的情况下实现。例如,根据与IPv6技术相对的NEMO技术的移动路由器。换言之,移动路由器可以被部署来代表站点内节点执行移动性操作移动路由器不一定是“移动的”,而是可以在执行这里描述的移动性操作的同时是固定的。具体而言,移动路由器可以采用2004年10月11日Draves等人提出的因特网草案“Default Router Preferences and More-Specific Routes”中描述的技术,该草案的文件名为“draft-ietf-ipv6-router-selection-06.txt”并且可以在IETF的网站上获得。
具体而言,Draves等人描述了路由器广告可如何扩展以提供可达性信息。因此,移动路由器将在站点内将其自身广告为两个可经由各自不同的链路访问的路由器,其中一条链路被广告为可使用站点内前缀到达,另一条链路被广告为可利用站点外前缀到达;因此,固定节点可以基于站点内前缀获得地址。移动路由器在站点外只广告站点外前缀移动路由器针对该前缀将其自身标识为默认路由器。
因此,站点内节点可以是具有两个地址(站点内地址和站点外地址)的固定节点,并且移动路由器对该固定节点指定隧道操作,其中路由被建立,以使得该固定节点使用适当的地址来经由固定节点和移动路由器之间的隧道访问因特网。因此,Draves等人的因特网草案的实现使得移动路由器能够选择适当的前缀。
虽然已经结合当前作为优选实施例的内容描述了所公开的实施例,但是将会理解,本发明不局限于所公开的实施例,相反,本发明希望覆盖包括在所附权利要求的精神和范围内的各种修改和等同布置。
权利要求书(按照条约第19条的修改)33.如权利要求31所述的介质,还包括用于基于利用所述第二站点内IPv6地址的所述第二对端节点经由独立于所述安全连接的路径将第四分组发送到所述第二对端节点的指令,所述第四分组具有指定所述IPv6节点的站点内IPv6地址的相应源地址字段和指定所述第二站点内IPv6地址的相应目的地地址字段。
34.如权利要求29所述的介质,还包括用以下操作的指令经由所述安全连接接收第三分组,所述第三分组包括第三头部,该第三头部包括指定所述第二IPv6网关节点的IPv6地址的相应源地址字段,该第三头部还包括指定所述IPv6节点的站点内IPv6地址的相应目的地地址字段;从所述第三分组中恢复具有第四头部的第四分组,所述第四头部包括指定所述IPv6节点的站点外IPv6地址的相应目的地地址字段。
35.如权利要求34所述的介质,其中所述第四头部包括指定所述指定站点外的对端节点的IPv6地址的相应源地址字段。
36.如权利要求34所述的介质,其中所述第四头部包括指定所述指定站点中的第二对端节点的第二站点内IPv6地址的相应源地址字段。
37.如权利要求36所述的介质,还包括用于选择所述站点外IPv6地址作为将经由所述安全连接发送到所述第二站点内IPv6地址的第四分组的源地址,然后基于作为移动节点的所述IPv6节点,在指定所述IPv6节点的站点内IPv6地址的第五分组中封装为所述相应的源地址的指令。
38.如权利要求29所述的介质,其中所述获得步骤包括利用分配给所述IPv6节点的站点外IPv6地址和相应的主机名更新第一动态名称服务器,所述动态名称服务器被配置用于响应于来自所述指定站点外的请求针对分配给所述IPv6节点的主机名的可达地址的查询向所述指定站点外提供所述站点外IPv6地址。
39.如权利要求38所述的介质,其中所述获取步骤包括利用所述站点内IPv6地址和相应的主机名来更新第二动态名称服务器,该第二动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内
权利要求
1.一种用在IPv6节点中的方法,该方法包括获取唯一的站点内IPv6地址以用于与指定站定内的至少一个第二网关节点通信,其中所述唯一的站点内IPv6地址只有所述指定站点内的节点可达,所述唯一的站点内IPv6地址具有不被广告到所述指定站点以外的第一地址前缀;从所述指定站点内获取具有不同于所述第一地址前缀的第二地址前缀的唯一的站点外地址,该站点外地址在所述指定站点内和外都被广告;以及通过以下步骤向所述指定站点外的对端节点发送第一分组(1)第一生成所述第一分组,该第一分组具有第一头部,该第一头部具有指定所述对端节点的地址的目的地地址字段和指定所述站点外地址的源地址字段,(2)第二生成包括所述第一分组和用于所述第二网络节点接收和去除的第二头部的第二分组,所述第二头部具有指定所述第二IPv6网关节点的IPv6地址的目的地地址字段和指定所述站点内IPv6地址的源地址字段,以及(3)将具有所述第一和第二头部的所述第二分组经由在所述基于IP的节点和所述第二IPv6网关节点之间建立的安全连接输出到所述第二IPv6网关节点,以利用所述第二IPv6网关节点将所述第一分组传递到所述指定站点外部并传递到所述对端节点。
2.如权利要求1所述的方法,其中所述发送步骤还包括建立作为所述IPv6节点和所述第二IPv6网关节点之间的安全隧道的所述安全连接。
3.如权利要求1所述的方法,该方法还包括接收由所述指定站点中的第二对端节点生成的第三分组,该第三分组包括指定包括了所述第一地址前缀的所述第二对端节点的相应第二站点内IPv6地址的相应源地址字段,该第三分组还包括指定所述IPv6节点的所述站点内IPv6地址的相应目的地地址字段。
4.如权利要求3所述的方法,其中所述第三分组是经由独立于所述安全连接的路径接收的,所述IPv6节点是固定节点。
5.如权利要求3所述的方法,还包括基于利用所述第二站点内IPv6地址的所述第二对端节点经由独立于所述安全连接的路径将第四分组发送到所述第二对端节点,所述第四分组具有指定所述IPv6节点的站点内IPv6地址的相应源地址字段和指定所述第二站点内IPv6地址的相应目的地地址字段。
6.如权利要求1所述的方法,还包括经由所述安全连接接收第三分组,所述第三分组包括第三头部,该第三头部包括指定所述第二IPv6网关节点的IPv6地址的相应源地址字段,该第三头部还包括指定所述IPv6节点的站点内IPv6地址的相应目的地地址字段;从所述第三分组中恢复具有第四头部的第四分组,所述第四头部包括指定所述IPv6节点的站点外IPv6地址的相应目的地地址字段。
7.如权利要求6所述的方法,其中所述第四头部包括指定所述指定站点外的对端节点的IPv6地址的相应源地址字段。
8.如权利要求6所述的方法,其中所述第四头部包括指定所述指定站点中的第二对端节点的第二站点内IPv6地址的相应源地址字段。
9.如权利要求8所述的方法,还包括选择所述站点外IPv6地址作为将经由所述安全连接发送到所述第二站点内IPv6地址的第四分组的源地址,然后基于作为移动节点的所述IPv6节点,在指定所述IPv6节点的站点内IPv6地址的第五分组中封装为所述相应的源地址。
10.如权利要求1所述的方法,其中所述获得步骤包括利用分配给所述IPv6节点的站点外IPv6地址和相应的主机名更新第一动态名称服务器,所述动态名称服务器被配置用于响应于来自所述指定站点外的请求针对分配给所述IPv6节点的主机名的可达地址的查询向所述指定站点外提供所述站点外IPv6地址。
11.如权利要求10所述的方法,其中所述获取步骤包括利用所述站点内IPv6地址和相应的主机名来更新第二动态名称服务器,该第二动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内IPv6地址。
12.如权利要求1所述的方法,其中所述获取步骤包括利用分配给所述IPv6节点的站点内IPv6地址和相应的主机名来更新动态名称服务器,该动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内IPv6地址。
13.一种用在被配置用于在指定站点和广域网之间提供连通性的IPv6网关中的方法,该方法包括仅在所述指定站点内广告第一IPv6地址前缀经由所述网关可达,所述第一地址前缀不被广告到所述指定站点以外;向所述指定站点和所述广域网广告第二IPv6地址前缀经由所述网关可达;基于具有包括所述第一IPv6地址前缀的唯一的站点内IPv6地址的所述第一IPv6节点,与所述指定站点中的第一IPv6节点之间建立安全连接;经由所述安全连接从所述第一IPv6节点接收第一分组,该第一分组具有指定所述站点内IPv6地址的源地址字段、指定所述网关的IPv6地址的目的地地址字段和第二分组;响应于指定所述网关的IPv6地址的所述第一分组的所述目的地地址字段向目的地节点转发所述第二分组,该步骤包括(1)从所述第一分组中恢复出第二分组,该第二分组具有指定具有所述第二IPv6地址前缀的唯一的站点外IPv6地址的源地址字段和指定所述目的地节点的IPv6地址的目的地地址字段,以及(2)在无需所述IPv6节点的站点内IPv6地址的情况下输出所述第二分组,并创建指示所述第一IPv6节点的站点外IPv6地址经由所述IPv6节点的站点内IPv6地址可达的绑定缓存条目。
14.如权利要求13所述的方法,还包括确定所述目的地节点的IPv6地址包括所述第一IPv6地址前缀和所述第二IPv6地址前缀之一,以及基于包括所述一个IPv6地址前缀的所述目的地节点的IPv6地址,在所述指定站点中执行所述第一IPv6节点和所述目的地节点之间的路由优化。
15.如权利要求13所述的方法,还包括确定所述目的地节点的IPv6地址包括不同于所述第一IPv6地址前缀和第二IPv6地址前缀中任意一个的第三IPv6地址前缀,并且防止基于不同于所述第一地址前缀的第三IPv6地址前缀在所述第一IPv6节点和所述目的地节点之间进行任意路由优化。
16.如权利要求13所述的方法,还包括响应于所述第一IPv6节点的请求对其分配站点外IPv6地址,并响应于所述站点外IPv6地址的分配而创建所述绑定缓存条目。
17.如权利要求16所述的方法,还包括利用已经分配给所述IPv6节点的站点外IPv6地址和相应的主机名来更新动态名称服务器,该动态名称服务器被配置用于响应于请求针对分配给所述IPv6节点的主机名的可达地址的相应查询向所述广域网中的节点提供所述站点外IPv6地址。
18.如权利要求13所述的方法,其中所述安全连接是作为所述网关和所述第一IPv6节点之间的安全隧道建立的。
19.如权利要求13所述的方法,其中所述输出步骤包括以下步骤中的至少一个基于指定所述第一IPv6地址前缀的目的地节点的IPv6地址,将所述第二分组经由指定路由第一输出到所述指定站点;以及基于指定所述第二IPv6地址前缀的目的地节点的IPv6地址,将所述第二分组经由在所述网络和所述目的地节点之间建立的第二安全连接第二输出到所述指定站点。
20.如权利要求19所述的方法,其中所述输出步骤还包括基于指定不同于所述第一IPv6地址前缀和第二IPv6地址前缀中任意一个的地址前缀的所述目的地节点的IPv6地址,将所述第二分组第三输出到所述广域网上。
21.一种被配置用于与广域网通信的网络,该网络包括网络节点,其中每个网络节点具有用于在指定站点内通信的相应的唯一的站点内IPv6地址,每个所述站点内IPv6地址都具有不在所述指定站点以外广告的第一IPv6地址前缀,至少一个所述网络节点被配置用于从所述指定站点内获得具有不同于所述第一IPv6地址前缀的第二IPv6地址前缀的唯一的站点外IPv6地址;以及网关,该网关被配置用于(1)向所述指定站点和所述广域网广告所述第二IPv6地址前缀经由所述网关可达,(2)仅在所述指定站点内广告所述第一IPv6地址前缀经由所述网关可达,所述第一地址前缀不在所述指定站点外广告,(3)与使用具有所述第二IPv6地址前缀的相应站点外IDv6地址的每个相应的IPv6节点之间建立安全连接,所述网关被配置用于针对所述每个使用相应的站点外IPv6地址的IPv6节点,创建指定相应的站点外IPv6地址和站点内IPv6地址的相应绑定缓存条目,(4)解封装接收自所述安全连接之一的第一分组,该第一分组具有指定相应的站点内IPv6地址的源地址字段和第二分组,该第二分组具有指定相应的站点外IPv6地址的源地址字段,以及(5)在无需在所述第一分组的源地址字段中指定的相应站点内IPv6地址的情况下,针对指定的目的地节点输出所述第二分组。
22.如权利要求21所述的网络,其中每个安全连接是安全隧道。
23.如权利要求21所述的网络,其中所述网关还被配置用于接收具有指定具有所述第二IPv6地址前缀的目的地地址的目的地地址字段的第三分组;将所述第三分组封装成第四分组,该第四分组具有指定已基于指定目的地地址的相应绑定缓存条目识别出的目的地站点内IPv6地址的目的地地址字段;以及将所述第四分组输出到由具有所述目的地站点内IPv6地址的网络节点端接的相应安全连接上。
24.如权利要求21所述的网络,其中每个网络节点都被配置用于基于所述指定站点外可达的发送分组的目的地,选择相应的站点外IPv6地址作为该发送分组的源地址。
25.如权利要求24所述的网络,其中每个网络节点被配置为固定节点和移动节点之一,每个移动节点被配置用于选择相应的站点外IPv6地址,作为独立于目的地的相应源地址,以及每个固定节点被配置用于基于所述指定站点外可达的发送分组的目的地选择相应的站点外IPv6地址,作为该发送分组的源地址,并且基于所述指定站点内可达的目的地选择相应的站点内IPv6地址,作为该发送分组的源地址。
26.如权利要求24所述的网络,其中所述网关被配置用于在所述指定站点中的第一和第二网络节点之间执行路由优化并利用各自的安全连接。
27.如权利要求21所述的网络,还包括第一动态名称服务器,其被配置用于响应于指定分配给相应IPv6节点的相应主机名的查询来提供所述站点外IPv6地址之一,所述动态名称服务器被配置用于无论所述查询是否接收自所述指定站点内都提供所述站点外IPv6地址。
28.如权利要求27所述的网络,还包括第二动态名称服务器,其被配置用于响应于指定分配给相应IPv6节点的相应主机名的查询来提供所述站点内IPv6地址之一,该动态名称服务器被配置用于仅在所述指定站点内而不在所述指定站点外提供所述站点内IPv6地址。
29.一种存储有用于利用基于IP的节点向对端节点输出IPv6分组的指令序列的计算机可读介质,所述指令序列包括用于以下操作的指令获取唯一的站点内IPv6地址以用于与指定站定内的至少一个第二IPv6网关节点通信,其中所述唯一的站点内IPv6地址只有所述指定站点内的节点可达,所述唯一的站点内IPv6地址具有不被广告到所述指定站点以外的第一地址前缀;从所述指定站点内获取具有不同于所述第一地址前缀的第二地址前缀的唯一的站点外IPv6地址,该站点外IPv6地址在所述指定站点内和外都被广告;以及通过以下步骤向所述指定站点外的对端节点发送第一分组(1)第一生成所述第一分组,该第一分组具有第一头部,该第一头部具有指定所述对端节点的IPv6地址的目的地地址字段和指定所述站点外IPv6地址的源地址字段,(2)第二生成包括所述第一分组和用于所述第二网络节点接收和去除的第二头部的第二分组,所述第二头部具有指定所述第二IPv6网关节点的IPv6地址的目的地地址字段和指定所述站点内IPv6地址的源地址字段,以及(3)将具有所述第一和第二头部的所述第二分组经由在所述IPv6节点和所述第二IPv6网关节点之间建立的安全连接输出到所述第二IPv6网关节点,以利用所述第二IPv6网关节点将所述第一分组传递到所述指定站点外部并传递到所述对端节点。
30.如权利要求29所述的介质,其中所述发送步骤还包括建立作为所述IPv6节点和所述第二IPv6网关节点之间的安全隧道的所述安全连接。
31.如权利要求29所述的介质,还包括用于接收由所述指定站点中的第二对端节点生成的第三分组的指令,该第三分组包括指定包括了所述第一地址前缀的所述第二对端节点的相应第二站点内IPv6地址的相应源地址字段,该第三分组还包括指定所述IPv6节点的所述站点内IPv6地址的相应目的地地址字段。
32.如权利要求31所述的介质,其中所述第三分组是经由独立于所述安全连接的路径接收的,所述IPv6节点是固定节点。
33.如权利要求31所述的介质,还包括用于基于利用所述第二站点内IPv6地址的所述第二对端节点经由独立于所述安全连接的路径将第四分组发送到所述第二对端节点的指令,所述第四分组具有指定所述IPv6节点的站点内IPv6地址的相应源地址字段和指定所述第二站点内IPv6地址的相应目的地地址字段。
34.如权利要求29所述的介质,还包括用以下操作的指令经由所述安全连接接收第三分组,所述第三分组包括第三头部,该第三头部包括指定所述第二IPv6网关节点的IPv6地址的相应源地址字段,该第三头部还包括指定所述IPv6节点的站点内IPv6地址的相应目的地地址字段;从所述第三分组中恢复具有第四头部的第四分组,所述第四头部包括指定所述IPv6节点的站点外IPv6地址的相应目的地地址字段。
35.如权利要求34所述的介质,其中所述第四头部包括指定所述指定站点外的对端节点的IPv6地址的相应源地址字段。
36.如权利要求34所述的介质,其中所述第四头部包括指定所述指定站点中的第二对端节点的第二站点内IPv6地址的相应源地址字段。
37.如权利要求8所述的介质,还包括用于选择所述站点外IPv6地址作为将经由所述安全连接发送到所述第二站点内IPv6地址的第四分组的源地址,然后基于作为移动节点的所述IPv6节点,在指定所述IPv6节点的站点内IPv6地址的第五分组中封装为所述相应的源地址的指令。
38.如权利要求29所述的介质,其中所述获得步骤包括利用分配给所述IPv6节点的站点外IPv6地址和相应的主机名更新第一动态名称服务器,所述动态名称服务器被配置用于响应于来自所述指定站点外的请求针对分配给所述IPv6节点的主机名的可达地址的查询向所述指定站点外提供所述站点外IPv6地址。
39.如权利要求38所述的介质,其中所述获取步骤包括利用所述站点内IPv6地址和相应的主机名来更新第二动态名称服务器,该第二动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内IPv6地址。
40.如权利要求29所述的介质,其中所述获取步骤包括利用分配给所述IPv6节点的站点内IPv6地址和相应的主机名来更新动态名称服务器,该动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内IPv6地址。
41.一种存储有用于网关的指令序列的计算机可读介质,其中所述指令序列用于在指定站点和广域网之间提供连通性,所述指令序列包括用于以下操作的指令仅在所述指定站点内广告第一IPv6地址前缀经由所述网关可达,所述第一地址前缀不被广告到所述指定站点以外;向所述指定站点和所述广域网广告第二IPv6地址前缀经由所述网关可达;基于具有包括所述第一IPv6地址前缀的唯一的站点内IPv6地址的所述第一IPv6节点,与所述指定站点中的第一IPv6节点之间建立安全连接;经由所述安全连接从所述第一IPv6节点接收第一分组,该第一分组具有指定所述站点内IPv6地址的源地址字段、指定所述网关的IPv6地址的目的地地址字段和第二分组;响应于指定所述网关的IPv6地址的所述第一分组的所述目的地地址字段向目的地节点转发所述第二分组,该步骤包括(1)从所述第一分组中恢复出第二分组,该第二分组具有指定具有所述第二IPv6地址前缀的唯一的站点外IPv6地址的源地址字段和指定所述目的地节点的IPv6地址的目的地地址字段,以及(2)在无需所述IPv6节点的站点内IPv6地址的情况下输出所述第二分组,并创建指示所述第一IPv6节点的站点外IPv6地址经由所述IPv6节点的站点内IPv6地址可达的绑定缓存条目。
42.如权利要求41所述的介质,还包括用于以下操作的指令确定所述目的地节点的IPv6地址包括所述第一IPv6地址前缀和所述第二IPv6地址前缀之一,并且基于包括所述一个IPv6地址前缀的所述目的地节点的IPv6地址,在所述指定站点中执行所述第一IPv6节点和所述目的地节点之间的路由优化。
43.如权利要求41所述的介质,还包括用于以下操作的指令确定所述目的地节点的IPv6地址包括不同于所述第一IPv6地址前缀和第二IPv6地址前缀中任意一个的第三IPv6地址前缀,并且防止基于不同于所述第一地址前缀的第三IPv6地址前缀在所述第一IPv6节点和所述目的地节点之间进行任意路由优化。
44.如权利要求41所述的介质,还包括用于响应于所述第一IPv6节点的请求对其分配站点外IPv6地址,并响应于所述站点外IPv6地址的分配而创建所述绑定缓存条目的指令。
45.如权利要求44所述的介质,还包括用于利用已经分配给所述IPv6节点的站点外IPv6地址和相应的主机名来更新动态名称服务器的指令,该动态名称服务器被配置用于响应于请求针对分配给所述IPv6节点的主机名的可达地址的相应查询向所述广域网中的节点提供所述站点外IPv6地址。
46.如权利要求41所述的介质,其中所述安全连接是作为所述网关和所述第一IPv6节点之间的安全隧道建立的。
47.如权利要求41所述的介质,其中所述输出步骤包括以下步骤中的至少一个基于指定所述第一IPv6地址前缀的目的地节点的IPv6地址,将所述第二分组经由指定路由第一输出到所述指定站点;以及基于指定所述第二IPv6地址前缀的目的地节点的IPv6地址,将所述第二分组经由在所述网络和所述目的地节点之间建立的第二安全连接第二输出到所述指定站点。
48.如权利要求47所述的介质,其中所述输出步骤还包括基于指定不同于所述第一IPv6地址前缀和第二IPv6地址前缀中任意一个的地址前缀的所述目的地节点的IPv6地址,将所述第二分组第三输出到所述广域网上。
49.一种基于IP的节点,包括用于获取唯一的站点内IPv6地址以用于与指定站定内的至少一个第二IPv6网关节点通信的装置,其中所述唯一的站点内IPv6地址只有所述指定站点内的节点可达,所述唯一的站点内IPv6地址具有不被广告到所述指定站点以外的第一地址前缀;用于从所述指定站点内获取具有不同于所述第一地址前缀的第二地址前缀的唯一的站点外IPv6地址的装置,该站点外IPv6地址在所述指定站点内和外都被广告;以及用于通过以下步骤向所述指定站点外的对端节点发送第一分组的装置(1)第一生成所述第一分组,该第一分组具有第一头部,该第一头部具有指定所述对端节点的IPv6地址的目的地地址字段和指定所述站点外IPv6地址的源地址字段,(2)第二生成包括所述第一分组和用于所述第二网络节点接收和去除的第二头部的第二分组,所述第二头部具有指定所述第二IPv6网关节点的IPv6地址的目的地地址字段和指定所述站点内IPv6地址的源地址字段,以及(3)将具有所述第一和第二头部的所述第二分组经由在所述基于IP的节点和所述第二IPv6网关节点之间建立的安全连接输出到所述第二IPv6网关节点,以利用所述第二IPv6网关节点将所述第一分组传递到所述指定站点外部并传递到所述对端节点。
50.如权利要求49所述的IPv6节点,其中所述用于发送的装置被配置用于建立作为所述IPv6节点和所述第二IPv6网关节点之间的安全隧道的所述安全连接。
51.如权利要求49所述的IPv6节点,其中所述发送装置被配置用于接收由所述指定站点中的第二对端节点生成的第三分组,该第三分组包括指定包括了所述第一地址前缀的所述第二对端节点的相应第二站点内IPv6地址的相应源地址字段,该第三分组还包括指定所述IPv6节点的所述站点内IPv6地址的相应目的地地址字段。
52.如权利要求51所述的IPv6节点,其中所述第三分组是经由独立于所述安全连接的路径接收的,所述IPv6节点是固定节点。
53.如权利要求51所述的IPv6节点,其中所述用于发送的装置被配置用于基于利用所述第二站点内IPv6地址的所述第二对端节点经由独立于所述安全连接的路径将第四分组发送到所述第二对端节点,所述第四分组具有指定所述IPv6节点的站点内IPv6地址的相应源地址字段和指定所述第二站点内IPv6地址的相应目的地地址字段。
54.如权利要求49所述的IPv6节点,其中所述用于发送的装置被配置用于经由所述安全连接接收第三分组,所述第三分组包括第三头部,该第三头部包括指定所述第二IPv6网关节点的IPv6地址的相应源地址字段,该第三头部还包括指定所述IPv6节点的站点内IPv6地址的相应目的地地址字段;从所述第三分组中恢复具有第四头部的第四分组,所述第四头部包括指定所述IPv6节点的站点外IPv6地址的相应目的地地址字段。
55.如权利要求54所述的IPv6节点,其中所述第四头部包括指定所述指定站点外的对端节点的IPv6地址的相应源地址字段。
56.如权利要求54所述的IPv6节点,其中所述第四头部包括指定所述指定站点中的第二对端节点的第二站点内IPv6地址的相应源地址字段。
57.如权利要求56所述的IPv6节点,其中所述用于发送的装置被配置用于选择所述站点外IPv6地址作为将经由所述安全连接发送到所述第二站点内IPv6地址的第四分组的源地址,然后基于作为移动节点的所述IPv6节点,在指定所述IPv6节点的站点内IPv6地址的第五分组中封装为所述相应的源地址。
58.如权利要求49所述的IPv6节点,其中所述用于获得的装置被配置用于利用分配给所述IPv6节点的站点外IPv6地址和相应的主机名更新第一动态名称服务器,所述动态名称服务器被配置用于响应于来自所述指定站点外的请求针对分配给所述IPv6节点的主机名的可达地址的查询向所述指定站点外提供所述站点外IPv6地址。
59.如权利要求58所述的IPv6节点,其中所述用于获取的装置被配置用于利用所述站点内IPv6地址和相应的主机名来更新第二动态名称服务器,该第二动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内IPv6地址。
60.如权利要求49所述的IPv6节点,其中所述用于获取的装置被配置用于利用分配给所述IPv6节点的站点内IPv6地址和相应的主机名来更新动态名称服务器,该动态名称服务器被配置用于响应于来自所述指定站点内的请求针对分配给所述IPv6节点的主机名的可达地址的查询而仅在所述指定站点内提供所述站点内IPv6地址。
61.一种被配置用于在指定站点和广域网之间提供连通性的网关,该网关包括用于仅在所述指定站点内广告第一IPv6地址前缀经由所述网关可达的装置,所述第一地址前缀不被广告到所述指定站点以外;用于向所述指定站点和所述广域网广告第二IPv6地址前缀经由所述网关可达的装置;用于基于具有包括所述第一IPv6地址前缀的唯一的站点内IPv6地址的所述第一IPv6节点,与所述指定站点中的第一IPv6节点之间建立安全连接的装置;用于经由所述安全连接从所述第一IPv6节点接收第一分组的装置,该第一分组具有指定所述站点内IPv6地址的源地址字段、指定所述网关的IPv6地址的目的地地址字段和第二分组;用于响应于指定所述网关的IPv6地址的所述第一分组的所述目的地地址字段通过以下操作向目的地节点转发所述第二分组的装置(1)从所述第一分组中恢复出第二分组,该第二分组具有指定具有所述第二IPv6地址前缀的唯一的站点外IPv6地址的源地址字段和指定所述目的地节点的IPv6地址的目的地地址字段,以及(2)在无需所述IPv6节点的站点内IPv6地址的情况下输出所述第二分组,并创建指示所述第一IPv6节点的站点外IPv6地址经由所述IPv6节点的站点内IPv6地址可达的绑定缓存条目。
62.如权利要求61所述的网关,其中用于转发的装置被配置用于确定所述目的地节点的IPv6地址包括所述第一IPv6地址前缀和所述第二IPv6地址前缀之一,并且基于包括所述一个IPv6地址前缀的所述目的地节点的IPv6地址,在所述指定站点中执行所述第一IPv6节点和所述目的地节点之间的路由优化。
63.如权利要求61所述的网关,其中用于转发的装置被配置用于确定所述目的地节点的IPv6地址包括不同于所述第一IPv6地址前缀和第二IPv6地址前缀中任意一个的第三IPv6地址前缀,并且防止基于不同于所述第一地址前缀的第三IPv6地址前缀在所述第一IPv6节点和所述目的地节点之间进行任意路由优化。
64.如权利要求61所述的网关,还包括用于响应于所述第一IPv6节点的请求对其分配站点外IPv6地址,并响应于所述站点外IPv6地址的分配而利用用于创建的装置来创建所述绑定缓存条目的装置。
65.如权利要求64所述的网关,其中所述用于分配的装置被配置用于利用已经分配给所述IPv6节点的站点外IPv6地址和相应的主机名来更新动态名称服务器,该动态名称服务器被配置用于响应于请求针对分配给所述IPv6节点的主机名的可达地址的相应查询向所述广域网中的节点提供所述站点外IPv6地址。
66.如权利要求61所述的网关,其中所述安全连接是作为所述网关和所述第一IPv6节点之间的安全隧道建立的。
67.如权利要求61所述的网关,其中所述用于转发的装置被配置用于基于指定所述第一IPv6地址前缀的目的地节点的IPv6地址,将所述第二分组经由指定路由第一输出到所述指定站点;以及基于指定所述第二IPv6地址前缀的目的地节点的IPv6地址,将所述第二分组经由在所述网络和所述目的地节点之间建立的第二安全连接第二输出到所述指定站点。
68.如权利要求67所述的网关,其中所述用于转发的装置被配置用于基于指定不同于所述第一IPv6地址前缀和第二IPv6地址前缀中任意一个的地址前缀的所述目的地节点的IPv6地址,将所述第二分组第三输出到所述广域网上。
全文摘要
一种网络包括网络节点(12a和12b)和网关(20)。每个网络节点(12a)具有相应的唯一的站点内IPv6地址(16a)用于与站点(14)通信,其中每个站点内地址具有不在站点外广告的第一IPv6地址前缀。网络节点可以从站点获得唯一的站点外IPv6地址,用于移动或站点外通信(26a)。站点外IPv6地址具有不同于第一IPv6地址前缀的第二IPv6地址前缀,该第二IPv6地址前缀被网关(20)广告给指定站点(14)和广域网(22)。网关利用站点外和站点内IPv6地址以及指定地址的绑定缓存条目来建立到每个站点内节点(12a)的隧道(24)。
文档编号H04L12/54GK101019381SQ200580030889
公开日2007年8月15日 申请日期2005年11月1日 优先权日2004年11月2日
发明者帕斯卡尔·蒂贝尔, 艾里克·M·莱韦-阿贝诺里 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1