用于管理资源地址请求的方法及关联的网关设备的制作方法

文档序号:7637084阅读:91来源:国知局
专利名称:用于管理资源地址请求的方法及关联的网关设备的制作方法
技术领域
本发明涉及一种用于管理例如来自Web浏览器应用程序的网络 资源地址请求的方法,以及一种用于执行该方法的网关设备。本发明 能够用于连接LAN到IP网络的网关中,但是不局限于这样的情境。
背景技术
当配备有浏览器应用程序的客户端计算机需要接入因特网服务器 以便获得例如所谓的"网页",时,其需要知道与提供该页面的服务器 相对应的因特网协议(IP)地址。通常,浏览器最初知道所谓的URL (统一资源定位器)或者FQDN (正式域名)。根据由客户端计算机提供的URL或FQDN,诸如域名系统服务器 的设备执行将URL或者FQDN翻译为实际的IP地址。一旦浏览器知道主持(host)网页的设备的IP地址,即Web服务 器,则建立到该IP地址的连接,并使用例如HTTP协议(超文本链接 标记语言)发送对于所需的信息的请求。该Web服务器利用HTML (超文本链接标记语言)网页、画面或者一些其他数据来进行响应。例如,当客户端计算机连接到局域网或者其它类型的网络并且通 过网关设备连接到因特网时,该地址翻译可以在该网关设备上执行。当不可能连接到DNS服务器时,会出现问题,例如在网关设备和 因特网之间的连接中断。在这种情况下,浏览器不能获得IP地址。这 造成浏览器显示错误消息,诸如例如"主机名不能解析"。为了向用户通知该问题的本质,并最终建议解决方案,已知的是 使该网关设备执行所谓的"欺骗(spoofing)"。该机制在于使网关设 备给浏览器返回虚假的IP地址,使浏览器相信到DNS服务器的连接 已经建立。然后,该网关设备截获对于到欺骗地址的连接的任何请求
和行为,好像该网关设备是Web服务器。当网关设备接收到来自浏览 器的请求时,于是网关能够返回解释问题本质的HTML页面,例如因 为给出了错误的口令或者因为一些其他原因而不存在因特网连通性 (connectivity )。还已知的是,当DNS服务器宣布URL或FQDN未知时,产生欺 骗的地址。这样做的目的在于使客户端发送请求到Web服务器。如果 没有获得地址将不会建立连接以发送请求。不但浏览器或者其它应用程序,而且其它诸如操作系统的客户端 部件也可以执行所谓的DNS高速缓存。DNS高速缓存保持URL或 FQDN与IP地址之间的关联。因而应用程序不需要再次请求IP地址, 致使更快访问相对应的信息。然而,当结合上述欺骗机制时,DNS高速缓存的出现会导致问题。 实际上, 一旦恢复了到DNS服务器的连接,应用程序就应该停止使用 欺骗的IP地址,并再次继续从DNS服务器请求URL的实际IP地址。 应用程序记住欺骗/虚假的IP地址的事实导致应用程序不再访问最初 请求的网站的结果,这是因为其不再请求真实的地址。在某些应用程序中已知的是,关闭应用程序将导致清除(purging) DNS高速缓存。发明内容本发明涉及一种网关设备,包括连接到第一设备的装置以及连接到 第二设备的装置,以便根据所述第一设备提供的网络资源标识符来获得网络地址,所述网关设备还包括提供虚假的网络地址的装置,用于在不能提供真实的网络地址情况 下,响应由所述第一设备提供的网络资源标识符来提供虚假的网络地 址;所述网关设备的特征在于,提供虚假的网络地址的装置适于对不同 的网络资源标识符提供不同的虚假的网络地址。一旦这种真实的地址是可用的,则这种不同的虚假的地址能够用 于提供与最初的资源标识符相对应的真实的地址。
根据本发明的实施例,该设备还包括服务器部件,用于根据虚假 的网络地址,对所述第一设备所做的请求提供响应。根据本发明的实施例,所述响应包括描述无真实的网络地址的原 因的信息。根据本发明的实施例,该设备还适于针对之前被提供了虚假的网 络地址的网络资源标识符,确定真实的网络地址。根据本发明的实施例,该设备还包括重定向装置,用于基于真实 的网络地址已经被确定的虚假的网络地址,根据来自所述第一设备的 请求,将所述第一设备重定向到所述真实的网络地址。根据本发明的实施例,该设备还包括用于存储虚假的网络地址和 其相应网络资源标识符的存储器。根据本发明的实施例, 一旦确定了真实的网络地址,所述存储器 还存储与网络资源标识符相对应的所述真实的网络地址。本发明还涉及一种用于管理从第一设备到第二设备的网络资源地 址请求的方法,所述方法由连接在所述第一设备和所述第二设备之间 的网关设备执行,所述方法包括接收来自所述第一设备的资源标识符;确定所述第二设备是否能够提供与所述资源标识符相对应的真实 的网络资源地址;在肯定情况下,提供所述真实的网络资源地址; 在否定情况下,提供虚假的网络资源地址,其中所述提供的虚假的 网络资源地址与所述接收的资源标识符唯一地关联。根据本发明的实施例,该方法还包括步骤基于虚假的网络地址, 接收来自所述第一设备的请求,以及作为响应,将所述第一设备重定 向到由所述第一设备可访问的服务器。根据本发明的实施例,所述服务器提供关于导致无真实的网络地 址的错误状态的信息。根据本发明的实施例,该方法包括步骤 一旦能够获得真实的网 络地址,针对已经被提供了虚假的网络地址的、之前接收到的资源标 识符,获得这种真实的网络地址。根据本发明的实施例,该方法包括步骤当基于虚假的网络地址 接收到来自所述第一设备的请求时,建立所述网关和由与所述虚假的 网络地址相对应的所述真实的网络地址所识别的设备之间的连接。根据本发明的实施例,该方法包括步骤存储接收到的标识符及 其关联的虚假的网络资源地址,以及当获得真实的网络地址时,存储 接收到的标识符及其相对应的真实的网络地址。


将参考附图在特定实施例中详细描述本发明。本发明不应局限于 实施例的详细描述。图1是使用本发明实施例所述的网关设备连接的局域网和因特网 的示意图;图2是网关设备的功能部件的示意图;图3是描述根据本发明实施例的客户端应用程序、网关设备的部 件和DNS服务器之间的通信的消息序列图;图4描述了一个表,所述表指示了根据本发明,在没有与DNS 服务器连通的时间间隔期间网关设备已经接收到请求之后该网关设备 的地址高速缓冲存储器的内容;以及图5描述了一旦重新建立连通性以及"真实"或实际的IP地址被 确定时图4的表。
具体实施方式
图1描述了作为本实施例描述对象的网关102,网关102将局域 网108与因特网104相连。客户端计算机101与该局域网相连,客户 端计算机101具有需要诸如Web浏览器之类的需要因特网接入的应用 程序107。图1示出了与因特网相连的一个DNS服务器106和Web 服务器105,当然可以连接更多的DNS服务器和Web服务器,除这 两种服务器的设备之外的其他设备也可以连接到因特网。网关102包 括存储器103,其目的稍后描述。根据本示例,该存储器为半导体类 型或者其等同类型。因特网应用程序107也可以不同于浏览器,并可
以运行在除计算机以外的设备上。例如,因特网应用程序107可以是 具有电子节目指南应用程序的支持IP的音频/视频解码器。应该注意 的是,网关102可以直接位于设备101中,在这种情况下,实质上不 存在局域网。图2示出了网关设备102的各种功能部件,网关设备102包括分 别将该网关设备连接到局域网和因特网的接口 209和210。例如,该 局域网可以是以太网或者IEEE802.11b类型的无线网络。此外,网关设备102包括HTTP服务器212, HTTP服务器212 是与Web服务器类似的应用程序,管理和提供与例如网关设备的内部 配置相对应的网页。根据本实施例,HTTP服务器212还提供信息给请求欺骗的IP地 址的设备。HTTP代理213充当网络108中客户端应用程序的代理服务器。 HTTP代理213接收客户端应用程序表示(formulated)的请求,适当 时将请求转发到诸如服务器105的真实的服务器,还将该真实的服务 器的任何响应传输回该客户端应用程序。只要涉及Web服务器,HTTP 代理充当客户端应用程序。DNS转发器214是处理从客户端应用程序107接收到的DNS査 询(query)的部件,并将其转发到因特网中的一个或多个DNS服务 器。该部件检测是否从该DNS服务器接收到有效响应,并将该响应发 送回客户端应用程序。根据本实施例,当因为各种原因不能获得正确 的DNS服务器响应时,DNS转发器还是产生"欺骗"或"虚假"IP 地址并将其发送到客户端应用程序的部件。代替使用仅仅一个欺骗/ 虚假的IP地址来响应DNS请求,当需要这种欺骗的地址时,网关设 备的DNS转发器针对DNS请求中所接收到的每个新URL或FQDN, 发送不同的欺骗IP地址。IP路由器部件211向局域网、网关的其它部件以及因特网转发IP 分组,并转发来自局域网、网关的其它部件以及因特网的IP分组。网关设备102还包含存储器103,已经在涉及图1时简要提及。 响应发送URL或FQDN,存储器103将由DNS转发器确定的欺骗的IP地址与相应的URL或FQDN—起存储。因此,网关102能够确定 对于所接收的给定URL/FQDN发送哪个欺骗的IP地址,反之亦然。在下面,将假定当检测到不存在因特网连通性时网关设备发送欺 骗的地址。当然也可以考虑其它情况。图4给出了在接收到来自客户端应用程序107的两个请求之后的 存储器103的内容的示例。假定DNS转发器确定对于这两个请求,没 有接收到正确的DNS服务器响应,因此,两个不同的欺骗IP地址被 发送回客户端应用程序107。"实际IP地址" 一栏指示客户端应用程 序所期望的真实的地址,在此阶段保持为空。一旦网关设备可以建立到DNS服务器的连接,网关设备检査存储 器103的内容并针对其存储器中那些之前不能被确定实际IP地址的每 一对欺骗的IP地址和URL或者FQDN,将对于实际IP地址的请求发 送到DNS服务器。图5示出了一旦确定了实际IP地址时存储器的状态。在本实施例中,存储器存储多达32个条目。当列表满时,循环 (round robin)机制删除最陈旧的条目。根据不同的实施例,使用期 限(time-to-live)参数与每个条目相关联。当网关设备从客户端应用程序接收到包含欺骗的IP地址之一作 为目的地地址的请求时(即客户端应用程序尝试建立连接),网关设备 在其高速缓冲存储器103中查找对于欺骗的地址,是否已经高速缓存 实际的IP地址。如果存在这样的实际IP地址,则利用实际IP地址来替代请求中 的欺骗的IP地址,并且网关设备建立与实际的IP地址所识别的正确 服务器的连接,并将最初的请求转发到该服务器。如果在高速缓冲存储器中不存在这样的实际IP地址,网关设备将 诸如HTML网页之类的适当消息返回到客户端应用程序。只要网关设 备能够确认,该消息或者页面优选地包括无实际IP地址的原因标识 符。例如,网关设备可以执行测试来确定错误状态的原因。换而言之, HTTP协议使服务器能够使用新的URL将客户端重定向到其它位置。图3是消息交换和客户端应用程序、网关设备的部件、DNS服务 器以及Web服务器的动作的详细图。 下面描述不同的步骤-步骤l:客户端设备上的web浏览器(更准确而言,浏览器上操 作系统的行为)发送DNS查询到DNS转发器,请求与web站点URL (例如www.xyz.com )相对应的IP地址。步骤2:网关设备的DNS转发器检测不存在到因特网的连通性(作 为结果,到实际的DNS服务器的连通性)。步骤3: DNS转发器决定利用欺骗的/虚假的IP地址进行响应。 DNS转发器利用欺骗的IP地址和URL/FQDN之间的唯一关联来更新 其高速缓存/表。步骤4:因为web浏览器认为web站点的地址是欺骗/虚假的IP 地址,web浏览器建立了到web站点的连接。网关设备102"截获" 该连接请求,建立了到该网关的HTTP代理模块的连接。web浏览器 发送对于该网址的HTTP请求。步骤5: HTTP代理检测到欺骗的/虚假的IP地址。该部件查询 DNS转发器以得知是否存在与该欺骗IP地址相对应的实际的IP地址。步骤6: DNS转发器检査其高速缓存/表,得知与该欺骗的IP地 址相关的URL/FQDN没有被解析为实际的IP地址。DNS转发器告知 HTTP代理不存在实际的IP地址。步骤7:得知不存在与该欺骗的IP地址相关的实际的IP地址, HTTP代理将web浏览器重定向到由网关设备的HTTP服务器主持的 网页该网页对web浏览器指示了新的URL。步骤8:现在,web浏览器建立了到网关设备的连接,并将对于 网页的HTTP请求发送到网关的本地服务器。步骤9: HTTP服务器网页检测到不存在因特网连通性,或能够进 行其它的诊断测试。步骤10: HTTP服务器基于由网关设备执行的诊断测试,使用 HTMP页面进行响应以解释该问题,例如包含解决因特网连通性问题 的可能方案。步骤ll:用户进行校正的行为(例如重新连接线缆或者校正因特
网连接口令)并按压按钮或者点击屏幕上的链接。例如,这触发了将校正后的口令发送回HTTP服务器。步骤12:现在HTTP服务器检测到再次建立了因特网连接。当建 立因特网连接时,由网关动态地重新获得DNS服务器的地址。网关还 一起接收因特网地址和一个或多个DNS服务器的地址。步骤13:因特网连通性的建立触发了网关设备的DNS转发部件 针对已经被发送了 "欺骗的"/虚假的IP地址的URL发送DNS査询。 DNS转发部件向因特网上DNS服务器的地址发送这些査询。步骤14: DNS服务器利用与URL相对应的实际或者"真实"的 IP地址进行响应。步骤15: DNS转发器利用欺骗的IP地址、URL (FQDN)以及 实际的IP地址来更新其高速缓存/表。步骤16:得知再次建立了因特网连通性,因特网网关HTTP服务 器将Web服务器再次重定向到最初请求的web站点。该HTTP服务器 记得之前在HTTP代理和HTTP服务器之间交换的最初请求的web站 点的URL。步骤17:现在,web浏览器使用高速缓存的最初的web站点与欺 骗的/虚假的IP地址间的关系并再次连接到欺骗的/虚假的IP地址。网 关设备"截获"该连接,所以实际上建立了到网关设备的HTTP代理 模块的连接。步骤18: HTTP代理部件查询DNS转发器部件,以得知是否存在 与欺骗的IP地址相对应的实际的IP地址。步骤19:DNS转发器部件利用在步骤14中从DNS服务器接收到 的实际的IP地址进行响应。步骤20: HTTP代理利用实际的IP地址来替代欺骗的IP地址并 建立到请求网页的Web服务器的连接。步骤21: Web服务器利用请求的HTML网页进行响应。步骤22:现在,HTTP代理将从Web服务器接收到的响应转发到 客户端计算机web浏览器。在客户端计算机的用户自动接收请求的 web站点。因此,客户端应用程序接入正确的服务器,虽然其继续使
用欺骗的IP地址。应该注意的是,大部分操作系统包括其自己的DNS高速缓存。这 是一种模块,该模块记得具有使用期限(ttl)参数的DNS结果(与IP 地址相对应的URL/FQDN)。在操作系统"之上"或者"上"运行的 应用程序,例如web浏览器也具有其自己的缓存。但是他们不考虑ttl 参数。在变体实施例中,检查对于欺骗的地址在存储器103中真实的地 址是否可用的步骤由IP路由器211来执行,而不是HTTP代理213。 同样,由真实的IP地址来替代欺骗的IP地址的步骤可以由该IP路由 器来执行(步骤20)。 HTTP代理检査存在欺骗的IP地址并当检测到 这样的地址时将客户端应用程序重定向到本地HTTP服务器。HTTP 代理不査询存储器103中的表。该实施例不仅提供了对于web浏览器 不正确记得(错误的)地址的常见问题的解决方案,还可适用于在其 自己的DNS缓存中记得地址的其它程序。虽然实施例的描述基于因特网协议网络的执行,本发明可以适于 标识符由地址来替代并且在这种结构中高速缓存响应可能造成问题的 其它情境中。
权利要求
1.一种网关设备(102),包括连接到位于第一网络(108)中的第一设备(101,107)的装置(209)以及连接到位于第二网络(104)中的第二设备(106)的装置(210),以便根据由所述第一设备提供的网络资源标识符获得真实的网络地址,所述网关设备还包括提供虚假的网络地址的装置(214),用于在不能提供真实的网络地址的情况下,响应由所述第一设备提供的网络资源标识符来提供虚假的网络地址;其特征在于,所述提供虚假的网络地址的装置(214)适于针对不同的网络资源标识符提供不同的虚假的网络地址。
2. 根据权利要求1所述的设备,还包括服务器部件(212),用于 根据虚假的网络地址,对由所述第一设备所做的请求提供响应。
3. 根据权利要求2所述的设备,其中,所述响应包括描述无真实 的网络地址的原因的信息。
4. 根据权利要求1到3中任一项所述的设备,还适于针对之前被 提供了虚假的网络地址的网络资源标识符来确定真实的网络地址。
5. 根据权利要求4所述的设备,还包括重定向装置(213, 214), 用于基于真实的网络地址已经被确定的虚假的网络地址,根据来自所 述第一设备的请求将所述第一设备重定向到所述实际网络地址。
6. 根据权利要求1到5中的任一项所述的设备,还包括存储器 (103),用于存储虚假的网络地址和其各自的网络资源标识符。
7. 根据权利要求4和6所述的设备,其中, 一旦确定了真实的网 络地址,所述存储器还存储与网络资源标识符相对应的真实的网络地 址。
8. —种方法,用于管理从位于第一网络(108)中的第一设备(101, 107)到位于第二网络(104)中的第二设备(106)的网络资源地址请 求,所述方法由连接在所述第一设备(IOI, 107)和所述第二设备(106) 之间的网关设备(102)执行,所述方法包括接收来自所述第一设备(101, 107)的资源标识符; 确定所述第二设备(106)是否能够提供与所述资源标识符相对应 的真实的网络资源地址;在肯定情况下,提供所述真实的网络资源地址;在否定情况下,提供虚假的网络资源地址,其中所述虚假的网络资 源地址与接收到的资源标识符唯一地关联。
9. 根据权利要求8所述的方法,还包括步骤基于虚假的网络地 址,从所述第一设备(101, 107)接收请求,以及作为响应,将所述 第一设备(101, 107)重定向到所述第一设备(101, 107)可访问的 服务器(212)。
10. 根据权利要求9所述的方法,其中,所述可访问的菔务器(212) 提供关于导致无真实的网络地址的错误状态的信息。
11. 根据权利要求8到10中的任一项所述的方法,还包括步骤-一旦能够获得真实的网络地址,针对已经被提供了虚假的网络地址的 之前接收到的资源标识符,获得这种真实的网络地址。
12. 根据权利要求11所述的方法,还包括步骤当基于虚假网络 地址接收到来自所述第一设备的请求时,建立所述网关和由与所述虚 假的网络地址相对应的所述真实的网络地址所识别的设备之间的连 接。
13. 根据权利要求11所述的方法,还包括步骤存储接收到的标 识符及其关联的虚假的网络资源地址,并且当获得真实的网络地址时, 存储接收到的标识符及所述相对应的真实的网络地址。
全文摘要
本发明涉及一种网关设备,包括连接到第一设备的装置以及连接到第二设备的装置,以便根据由所述第一设备提供的网络资源标识符,获得真实的网络地址;以及提供虚假的网络地址的装置,用于在不能提供真实的网络地址的情况下,响应由所述第一设备提供的网络资源标识符来提供虚假的网络地址。所述提供虚假网络地址的装置适于针对不同的网络资源标识符提供不同的虚假网络地址—当所述真实的网络地址可用时,对于不同的虚假地址所做的请求使得所述第一设备能够获得相对应的真实的网络地址。本发明还涉及一种关联的方法。
文档编号H04L29/12GK101164321SQ200680013714
公开日2008年4月16日 申请日期2006年4月11日 优先权日2005年4月25日
发明者德克·范德波尔, 蒂埃里·杜特里 申请人:汤姆森许可贸易公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1