CN102427484B - 基于dns来确定设备是否处于网络内部的方法和装置 - Google Patents
基于dns来确定设备是否处于网络内部的方法和装置 Download PDFInfo
- Publication number
- CN102427484B CN102427484B CN201110423043.7A CN201110423043A CN102427484B CN 102427484 B CN102427484 B CN 102427484B CN 201110423043 A CN201110423043 A CN 201110423043A CN 102427484 B CN102427484 B CN 102427484B
- Authority
- CN
- China
- Prior art keywords
- dns
- computing equipment
- network
- equipment
- intranet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/58—Caching of addresses or names
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/69—Types of network addresses using geographic information, e.g. room number
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在计算设备中产生和发送域名系统(DNS)查询,并且检查是否接收到经过核实的针对所述DNS查询的DNS响应。如果接收到经过核实的DNS响应,则确定计算设备处于特定网络内部,如果没有接收到经过核实的DNS响应,则确定计算设备处于该特定网络外部。如果DNS响应具有预期值并且所述DNS响应是经过可信机构数字签名的,则可以确定DNS响应是经过核实的,否则可以确定该DNS响应是没有经过核实的。
Description
背景技术
很多计算设备是能被很容易地运送到不同的位置的移动设备。这些移动设备有时可以根据其是否被认为处于特定网络内而以不同的方式工作。但是,在任何特定时间可靠确定移动设备何时处于特定网络内部是很困难的。
发明内容
本发明内容是为了以简化形式引入精选概念而被提供的,并且在以下的具体实施方式部分中将会进一步描述这些概念。本发明内容的目的既不是识别所要求保护主题的关键特征或必要特征,也不是用来限制所要求保护的主题的范围。
根据一个或多个方面,产生一个域名系统(DNS)查询并促使其被发送。执行关于是否接收到针对该DNS查询的经过核实的DNS响应的检查。如果接收到经过核实的DNS响应,则确定计算设备处于特定网络内部,如果没有接收到经过核实的DNS响应,则确定计算设备处于特定网络外部。
根据一个或多个方面,对DNS查询的域名系统(DNS)响应将被接收。关于DNS响应是否具有预期值以及DNS响应是否由可信机构进行了数字签名的检查将被执行。如果DNS响应具有预期值并且DNS响应是经过可信机构数字签名的,则确定计算设备通过核实且处于特定网络内部,否则确定计算设备未经核实且处于特定网络外部。
附图说明
在所有附图中,相同的数字被用于引用相同的特征。
图1图示了根据一个或多个实施例来实现基于DNS确定设备是否处于网络内部的例示系统。
图2图示了根据一个或多个实施例来实现基于DNS确定设备是否处于网络内部的另一个例示系统。
图3是图示了根据一个或多个实施例用于计算设备基于DNS确定其是否处于特定网络内部的例示过程的流程图。
图4是图示了根据一个或多个实施例用于计算设备核实DNS响应的例示过程的流程图。
图5图示了可以被配置成根据一个或多个实施例来实现基于DNS确定设备是否处于网络内部的例示计算设备。
具体实施方式
在这里讨论了基于DNS来确定设备是否处于网络内部。计算设备产生一个请求解析特定名称的域名系统(DNS)查询,并且将这个DNS查询发送到DNS服务。如果计算设备处于特定网络(例如公司网)内部,那么计算设备预期将接收到具有特定值的DNS响应,并且还会预期所述DNS响应是由可信机构进行了数字签名的。如果DNS响应具有预期的特定值,并且是经过可信机构数字签名的,那么计算设备确定其处于特定网络内部。但是,如果DNS响应没有预期的特定值和/或未经过可信机构的数字签名,或者如果没有接收到DNS响应,那么计算设备确定其处于特定网络以外。
在这里将会参考数字签名和数字证书。虽然数字签名和数字证书对于本领域技术人员来说是众所周知的,但是在这里包含了对它们的简要概述来为读者提供帮助。数字签名和数字证书通常是使用公钥密码术(cryptography)产生的。在公钥密码术中,实体(例如用户、硬件或软件组件、设备、域等等)具有与之关联的公钥/私钥对。公钥可以是可公开获得的,但是实体会将私钥保密。在没有私钥的情况下,使用公钥加密的数据在计算上是很难解密的。因此,数据可以由任一实体使用公钥来进行加密,并且只能由具有相应私钥的实体进行解密。此外,用于数据的数字签名可以使用数据和私钥来产生。在没有私钥的情况下,计算上很难创建可以使用公钥核实的签名。通过对公钥、签名以及带有签名的数据执行适当的数字签名核实算法,具有公钥的任何实体都可以使用公钥来核实数字签名。数字证书也是可以创建的,其中该数字证书包括实体的标识符和用于该实体的公钥,以及用实体私钥签名的数字证书,以便将实体的标识符绑定到该实体的公钥。
可替换地,数字签名和数字证书可以使用对称密钥密码术来产生。在对称密钥密码术中,两个实体知道共享密钥(也被称为对称密钥)并将其保密。任何具有共享密钥的实体通常都能对使用共享密钥加密的数据进行解密。在没有共享密钥的情况下,计算上很难对使用共享密钥加密的数据进行解密。因此,如果两个实体全都知道共享密钥,那么每一个实体都可以加密数据,并且所述加密数据可以被另一个实体解密,但是如果其他实体不知道共享密钥,那么所述实体是不能解密该数据的。同样,具有共享密钥的实体可以对数据进行加密,并且该数据可以被该相同的实体解密,但是如果其他实体不知道共享密钥,那么所述其他实体是不能解密该数据的。此外,数字签名可以是基于对称密钥密码术产生的,例如使用带有密钥的散列(keyed-hash)消息验证(authentication)码机制。任何具有共享密钥的实体都可以产生和核实数字签名。例如,可信第三方可以基于特定实体的身份来产生对称密钥,然后可以为这个特定实体产生和核实数字签名(例如通过使用对称密钥加密或解密数据)。数字证书可被创建,其中该数字证书包含了实体的标识符和用于该实体的公钥,以及经过数字签名的数字证书(例如由可信第三方),以便将实体的标识符绑定到该实体的公钥。
图1图示了根据一个或多个实施例来实现基于DNS确定设备是否处于网络内部的例示系统100。系统100包括网络102,该网络是借助通信网络耦合在一起的一个或多个设备。通信网络可以包括有线和/或无线通信,并且允许网络102中的多种不同设备与网络102中的多种不同的其他设备进行通信。举例来说,通信网络可以是局域网(LAN)、公共电话网、专用电话网、其他公共和/或专有网络、这些网络的组合等等。
网络102包括多种不同的设备,这其中包括一个或多个路由器104、一个或多个实现DNS服务106的设备、一个或多个网关108以及一个或多个其他设备110。路由器104在网络102的多种不同设备之间路由数据分组或其他信息。如下文中更详细论述的那样,DNS服务106将名称解析成网络地址。DNS服务106通常是在一个或多个服务器上实现的,但是可替换地,DNS服务106也可以在其他类型的设备上实现。网关108管理将网络102连接到其他网络(例如因特网)或网络102之外的其他设备。从网络102内部的设备到网络102外部的设备的通信以及从网络102外部的设备到网络102内部的设备的通信是由网关108管理的。
设备110可以是多种不同类型的设备,这其中包括计算设备,例如台式计算机、服务器计算机、膝上或上网本计算机、平板或笔记本计算机、移动站、数据库或其他存储设备、娱乐电器、可通信地耦合到显示设备的机顶盒、电视或其他显示设备、蜂窝电话或其他无线电话、游戏控制台、汽车用计算机等等。设备110还可以是多种不同类型的输入设备,例如扫描仪、相机或其他图像捕获设备等等。设备110还可以是多种不同类型的输出设备,例如打印机、传真机、投影仪或其他显示设备等等。
通常,网络102包括多个设备,这其中包括至少一个路由器104、实现DNS服务106中的至少一部分的至少一个设备、至少一个网关108以及至少一个设备110。然而应该指出的是,网络102可以包括任何数量的路由器104、用于实现DNS服务106的至少一部分的任何数量的设备、任何数量的网关108以及任何数量的设备110。此外还应该指出,并不是所有这些设备都必须包含在网络中(例如,在网络中可以不包含设备110)。此外还应该指出,网络102的一个或多个这样的设备可以组合成单个设备。例如,路由器104和网关108的功能可以由单个设备提供。
在例示系统100中,网络102还包括具有网内/网外确定模块122的计算设备120。计算设备120也可以是设备110中的一个。该计算设备120可以是多种不同类型的计算设备,例如台式计算机、服务器计算机、膝上或上网本计算机、平板或笔记本计算机、移动站、数据库或其他存储设备、娱乐电器、可通信地耦合到显示设备的机顶盒、电视或其他显示设备、蜂窝电话或其他无线电话、游戏控制台、汽车用计算机等等。计算设备120通常是可以很容易移动到网络102内部的不同位置以及可以很容易在网络102内部的位置与网络102外部的位置之间移动的移动计算设备,例如蜂窝电话或其他无线电话、膝上或笔记本计算机等等。因此,网络102有时可以包括计算设备120(当计算设备120处于网络102内部的时候),而在其他时候则不包括计算设备120(当计算设备120处于网络102外部的时候)。虽然在系统100中示出的是单个计算设备120,但是应该指出,在网络102中可以包括具有相同或不同设备类型的多个计算设备120。
网络102中包含的设备被配置成彼此经由通信网络来进行通信。这种设备配置可以在将设备添加到网络102中的时候执行,并且还可以在设备已被包含作为网络102的一部分之后的多种不同时间执行。网关108允许基于特定的策略和/或规则而在网络102包含的设备与网络102不包含的设备之间进行通信。网关108遵循的特定策略和/或规则可以基于网络102的所有者和/或设计人员、网络102的管理人员等等而改变。
诸如计算设备120之类的计算设备通过连接到网络102来与网络102中的其他设备进行通信。连接到网络102指的是在计算设备与网络102之间建立通信链路。建立通信链路包括下列各项中的一项或多项:为计算设备获取网络地址(例如从网络102的动态主机配置协议(DHCP)服务器那里),向网络102的域控制器验证计算设备或计算设备的用户(例如使用用户名和口令,使用数字证书等等),与作为网络102的一部分包含的设备协商协议(例如与路由器104或网关108),与作为网络102的一部分包含的设备(例如网关108)建立安全的(例如加密)通信信道等等。
在计算设备与网络102之间建立通信链路可以由计算设备或别的设备(例如作为网络102的一部分包含的设备)启动。一旦建立了通信链路,则计算设备可以与网络102中的其他设备进行通信(服从网络02中任何适当的访问控制策略)。
诸如计算设备120之类的设备可被称为处于网络内部或网络外部。处于网络以内(也被称为处于网络内部)的设备是一个包含在网络中并且因此能在不必访问该网络以外的设备的情况下与该网络中包含的其他设备进行通信的设备。因此举例来说,路由器104、网关108、设备112以及在系统100中实现服务106的设备处于网络102内部,并且被配置成彼此之间经由网络102的通信网络来进行通信,而不必访问网络102以外的设备。处于网络102内部的设备可以经由网关108来与不在网络102内部的其他设备进行通信。此外还应该指出,虽然网络102内部的设备彼此之间可以经由通信网络进行通信,但是对于网络102内部的哪些设备可以访问网络102内部的其他哪些设备(或是访问方式)的多种不同访问控制限制也是可以实现的。
处于网络以外(也被称为处于其外部)的设备是一个不在网络以内的设备。这种设备可以经由该网络的网关来与该网络内部的设备进行通信。因此举例来说,路由器104、网关108、设备112和实现服务106的设备可以经由网关108接收来自网络102外部的设备的通信(并且向其发送通信),以及服从网关108使用的策略和/或规则。
哪些设备包括在网络102中可以采用不同的方式定义,并且可以至少部分基于实现网络102的实体和/或网络102的管理员的希望。在一个或多个实施例中,网络是由DNS服务106服务的设备定义的。网络102内部的设备向DNS服务106提交DNS查询,并且接收来自该服务的DNS响应。网络102外部的设备不能访问DNS服务106(例如,网关108使用的策略和/或规则阻止该设备访问DNS服务106)。
在一个或多个其他实施例中,网络102是由能在不通过防火墙(例如由网关108或别的设备实现)进行通信或是没有访问因特网的情况下彼此访问的设备定义的。网络102内部的设备是那些能在没有通过防火墙通信或是接入因特网的情况下彼此访问的设备(服从网络102中任何适当的访问控制策略)。经由防火墙或因特网来与网络102内部的设备通信的设备则处于网络102的外部。
此外,在一个或多个实施例中,网络102是一个由特定企业实体(例如特定公司,公司的特定部门或单位等等)管理或是为该特定企业实体管理的网络,因此被称为公司网。可替换地,网络102可以是其他类型的网络,例如家庭网络,教育网络,游戏网络等等。
在系统100的示例中,计算设备120处于网络102之内。然而也有可能出现计算设备120变成处于网络外部的情形。例如,计算设备120可以移动到不同的位置,并且计算设备120在该位置不能以使得计算设备120处于网络102内部的方式来与网络102建立通信链路。应该指出的是,在使用计算设备120的所有地方,计算设备120可以多次在网络102的内部与网络102的外部之间移动。
图2图示了根据一个或多个实施例实现基于DNS确定设备是否处于网络内部的另一个例示系统200。系统200与图1的系统100相似,其包括网络102、一个或多个路由器104、DNS服务106、一个或多个网关108以及一个或多个其他设备110。系统200还包括计算设备120。虽然在系统200中示出了单个计算设备120,但是应该指出,在系统200中可以包括具有相同或不同设备类型的多个计算设备120。
图2的计算设备120是图1的计算设备120。在图1中,计算设备120包含在网络102内部。然而在图2中,计算设备120处于网络102外部,并且经由网关108来与网络102建立通信链路。在计算设备120与网关108之间可以经由多种其他设备或通信网络来建立通信链路,例如经由因特网、经由蜂窝网络或其他公共网络等等。
计算设备120可以基于所述计算设备120确定其处于网络102的内部还是网络102的外部而以不同的方式工作。例如,计算设备120可以基于该计算设备120是否处于网络102的内部来决定是否使用加密通信,计算设备120可以基于该计算设备120是否处于网络102的内部来允许或禁用某个功能,计算设备120可以基于该计算设备120是否处于网络102的内部来允许或拒绝访问存储在计算设备120上的文件等等。基于计算设备120是否处于网络102的内部,例如基于计算设备120和/或运行在计算设备120上的软件或固件的设计,计算设备120可以可选地做出多种不同的其他决定或是执行多种不同的其他操作或功能。
计算设备120包括用于在任何特定时间确定计算设备120处于网络102的内部还是网络102的外部的网内/网外确定模块122。为了执行这种判定,网内/网外确定模块122利用(leverage)DNS系统和DNS服务106。DNS系统允许使用域名(例如包含在统一资源定位符(URL)中)来识别设备或服务,其中与网络地址(例图网际协议(IP)v4或v6地址)相比,域名通常更易于用户使用和引用。一个或多个DNS服务106通过操作来将诸如域名之类的特定名称映射到可被计算设备120用以访问特定设备或服务的对应的网络地址。这种名称到对应网络地址的映射也被称为DNS解析。
在一个或多个实施例中,这里论述的DNS系统指的是符合众所周知的DNS协议(例如在网络工作组请求注释1034(1987年11月)以及网络工作组请求注释1035(1987年11月)中论述的协议)的系统。然而应该指出的是,这里论述的基于DNS来确定设备是否处于网络内部的技术可以与执行类似功能的其他系统或协议结合使用。
DNS服务106还支持多种不同安全功能,因此保护DNS服务106能够提供的多种不同信息或数据的安全。这种功能包括支持用于DNS响应的数字签名,其中该响应是DNS服务响应于DNS查询返回的。用于DNS响应的数字签名可以由DNS服务106本身产生(例如使用DNS服务的私钥),或者可替换地可以由另一个设备或组件产生(例如使用DNS服务106信任的另一个实体的私钥)。
在一个或多个实施例中,DNS服务106支持众所周知的DNS安全扩展(DNSSEC)协议。关于DNSSEC协议的附加信息可以在网络工作组请求注释4033(2005年3月)、网络工作组请求注释4034(2005年3月)以及网络工作组请求注释4035(2005年3月)中找到。
通常,网内/网外确定模块12通过向DNS服务发送DNS查询来确定计算设备120处于网络102的内部还是网络102的外部。这个DNS查询是一个请求解析特定名称(例如域名或其他名称)的请求。如果计算设备120处于网络102内部,那么DNS查询将被路由至DNS服务106。然而,如果计算设备120处于网络102的外部,那么DNS查询将被路由至另一个DNS服务(未显示),例如因特网上可以公开获得的DNS服务。网内/网外确定模块122可以被配置成具有DNS查询将被送抵的DNS服务的网络地址,或者可以采用别的方式来获取DNS服务的网络地址(例如从网关108)。可替换地,模块122可以将DNS查询转发到另一个模块或服务,例如本地DNS解析器,其中所述模块或服务知道(或获取)DNS服务的网络地址,并且代表模块122来将DNS查询转发到DNS服务。
DNS服务106维护关于DNS查询中的特定名称所映射到的特定值的记录,或者可以采用其他方式来访问该记录。该特定名称通常被映射到一个特定的值,但是作为替换,它也可以被映射到多个不同的特定值。用于该特定名称的映射通常是由DNS服务106秘密地或者私下里维护,并且该映射不会被暴露给网络102外部的DNS服务。例如,用于这个特定名称的映射并未在因特网上或者向网络102外部的其他DNS服务注册。但是,网内/网外确定模块122还知道用于该特定名称的映射。所述网内/网外确定模块122可以被配置成具有或以其他方式获取用于该特定名称的映射。
DNS服务向网内/网外确定模块122返回DNS响应。如果DNS响应是由DNS服务106生成或返回的,那么DNS响应包括DNS查询中的特定名称所映射到的特定值。然而,如果DNS响应是由网络102外部的DNS服务生成或返回的,那么DNS响应将会包括一个表明不能映射DNS查询中的特定名称的指示(或者包括不正确的映射),例如包括一个“DNS名称不存在”错误的指示。可替换地,如果计算设备120处于网络102的外部,那么网络102外部的DNS服务都不能返回响应,因此网内/网外确定模块122不会接收到DNS响应。
此外,DNS服务106返回的DNS响应是由可信机构数字签名的。由可信机构数字签名的DNS响应可以指被可信机构数字签名的整个DNS响应,或者可替换地是由可信机构数字签名的DNS响应的一部分(例如DNS查询中的特定名称被映射到的特定值)。网内/网外确定模块122可以采用多种不同的方式验证或已经验证了数字签名(例如通过使用可信机构的公钥)。该可信机构是计算设备120和/或网内/网外确定模块122信任的实体。所述可信机构可被包含作为网络102的一部分,或者可替换地可以处于网络102的外部。该可信机构可以是产生或返回DNS响应的DNS服务106。可替换地,该可信机构可以是另一个实体,例如用于网络102的根证书机构。如果DNS响应是由DNS服务106产生或返回的,那么DNS响应将会由可信机构数字签名。但是,如果DNS响应是由网络102外部的DNS服务产生或返回的,那么DNS响应不会被可信机构数字签名。
网内/网外确定模块122使用DNS响应(或该响应的缺失)来确定计算设备120是否处于网络102内部。如果计算设备120处于网络102内部,那么DNS响应将会包括DNS查询中的特定名称被映射到的特定的值,并且DNS响应也会由可信机构数字签名。模块122知道DNS查询中的特定名称应该映射到的特定值,并且这个值也被称为预期值(模块122预期包含在DNS响应中的值)。
因此,如果DNS响应同时包括预期值并由可信机构数字签名,那么网内/网外确定模块122确定计算设备120处于网络102的内部。但是,如果DNS响应不包括预期值和/或未经过可信机构数字签名,或者如果没有接收到DNS响应,那么网内/网外确定模块122确定计算设备120处于网络102的外部。
在替换实施例中,如果DNS响应包括预期值,那么无论DNS响应是否经过可信机构数字签名,网内/网外确定模块122都会确定计算设备120处于网络102内部。在其他替换实施例中,如果DNS响应是经过可信机构数字签名的,那么无论DNS响应是否包括预期值,网内/网外确定模块122都会确定计算设备120处于网络102内部。
图3是图示根据一个或多个实施例的可供计算设备用来基于DNS来确定其是否处于特定网络内部的例示过程300的流程图。过程300可以在软件、固件、硬件或是其组合中实现。图3的左侧示出的过程300的动作是由计算设备执行的,例如图1和2的计算设备120,并且通常由该计算设备上的网内/网外确定模块(例如图1的模块122)执行的。在图3的右侧示出的过程300的动作是由DNS服务执行的,例如图1和2的DNS服务106。过程300被显示成是一组动作,并且不局限于所显示的用于执行多种不同动作的操作的顺序。过程300是一个供计算设备用来确定其是否处于特定网络内部的例示过程;在这里通过参考不同的附图包含了关于计算设备确定其是否处于特定网络内部的附加论述。
在过程300中,计算设备产生DNS查询(动作302)。该DNS查询是一个要求解析特定名称的查询,并且如果计算设备处于特定网络内部,那么该计算设备预计一个特定值会返回。这个特定名称可以是URL或可替换地是别的名称。例如,这个特定名称可以采用“insideoutside.<domain-name>”的形式,其中“insideoutside”将DNS查询标识成是用以确定计算设备是否处于特定网络内部的查询,并且“<domain-name>”标识该特定的网络。
网内/网外确定模块促使DNS查询被发送到DNS服务(动作304)。该网内/网外确定模块可以通过发送DNS查询或可替换地促使别的模块或组件发送DNS查询来促使所述DNS查询被发送。
所述DNS查询由DNS服务接收(动作306)。接收这个DNS查询的DNS服务可以基于计算设备的位置而改变,例如基于计算设备是否处于特定网络内部。
DNS服务产生对接收到的DNS查询的DNS响应(动作308)。在一个或多个实施例中,如果DNS服务处于特定网络内部,那么DNS响应包括计算设备预期的并由可信机构数字签名的特定值。但是,如果DNS服务处于特定网络外部,那么DNS响应不会包括特定值和/或不会经过可信机构数字签名。
DNS服务向计算设备发送DNS响应(动作310)。该DNS服务可以发送DNS响应或者可替换地促使别的设备或组件发送DNS响应。可替换地,如果DNS服务处于网络外部,那么DNS服务可以不在动作308和310产生和返回DNS响应。
网内/网外确定模块检查是否接收到经过核实的DNS响应(动作312)。有可能发生这样的情形,其中包含网内/网外确定模块的计算设备处于网络的外部,并且因此不会接收到DNS响应或者接收到未通过核实的DNS响应。如果接收到DNS响应,那么网内/网外确定模块可以通过自己接收DNS响应,或者可替换地通过调用或者促使别的模块或组件接收DNS响应来促使DNS响应被接收。此外,如果接收到DNS响应,那么会在动作312核实DNS响应。DNS响应可以用不同的方式核实,例如通过检查DNS响应是否包含用于包含在DNS查询中的特定名称的预期值,和/或DNS响应是否经过可信机构数字签名。
过程300基于是否接收到经过核实的DNS响应的检查来进行(动作314)。如果接收到经过核实的DNS响应,则确定计算设备处于特定网络内部(动作316)。
然而,如果没有在阈值时间量以内接收到DNS查询,那么网内/网外确定模块超时,并且计算设备被确定为处于特定网络外部(动作318)。这个阈值时间量是可以改变的(例如1秒、5秒等等)。此外,如果接收到DNS响应但是该DNS响应没有通过核实,则确定该计算设备处于特定网络以外(动作318)。
然后,计算设备处于特定网络内部还是特定网络外部的判定可被转发或以其他方式使得对于计算设备的其它多种不同的组件或模块是可得到的。之后,这些其他组件或模块可以基于计算设备处于特定网络内部还是特定网络外部来以多种不同的方式进行操作。
该过程300可以在特定的间隔重复进行,包括规则或不规则的间隔。例如,过程300可以大约每五分钟、大约每小时等等执行一次。另举一例,过程300可以响应于特定事件而执行,例如响应于计算设备从节能模式(例如从休眠或冬眠模式中)中恢复操作,响应于检测(例如通过计算设备的全球定位系统(GPS))到计算设备的移动超出阈值数量(例如100码、1英里等等),响应于计算设备的网络接口的建立或移除(例如计算设备的网络接口被使能),响应于计算设备确定该计算设备处于新的无线网络范围以内或者不再处于其先前所处的无线网络的范围以内等等。
图4是示出了根据一个或多个实施例来供计算设备用来核实DNS响应的例示过程300的流程图。过程400可以在软件、固件、硬件或是其组合中实现。过程400是由计算设备100执行的,例如图1和2中的计算设备120,并且通常是由该计算设备上的网内/网外确定模块(例如图1和2的模块122)执行的。举例来说,过程400可以是图3的动作312和314。过程400被显示成是一组动作,并且其不受所显示的用于执行多种不同动作的操作的顺序的限制。过程400是一个供计算设备用来核实DNS响应的例示过程;在这里通过参考不同的附图包含了关于计算设备核实DNS响应的附加论述。
在过程400中,DNS响应将被接收(动作402)。该DNS响应是从DNS服务(或可替换地是下文中更详细论述的DNS缓存)或是从实现过程400的设备的其他模块或组件(例如由网内/网外确定模块调用或是促使接收DNS响应的别的模块或组件)那里接收的。
检查DNS响应是否包括一个作为预期值的值(动作404)。如上所述,如果计算设备是特定网络的一部分,那么DNS响应将会包括用于DNS查询中的特定名称的预期值,其中所述DNS响应是针对所述DNS查询的响应。此外,在动作404中可以使用多个不用的预期值,并且在这里将会检查DNS响应是否包括所述多个不同的预期值中的一个或多个预期值。
如果DNS响应不包括预期值,那么DNS响应未经核实的或是没有通过核实(动作406)。
然而,如果DNS响应包括预期值,则检查DNS响应是否经可信机构数字签名(动作408)。这个可信机构可以是DNS服务或是如上所述的其他可信实体。
如果DNS响应没有经过可信机构的数字签名,那么DNS响应是未经核实或是没有通过核实(动作406)。但是,如果DNS响应是经过可信机构数字签名的,那么DNS响应是经过核实的(动作410)。
回到图1和2,在一个或多个实施例中,计算设备120维护DNS缓存。这个DNS缓存是特定名称到已经被DNS服务解析并返回给计算设备120的特定值的映射的本地拷贝。因此可能出现这样的情形,其中网内/网外确定模块122发送DNS查询来解析特定名称,并且用于所述特定名称的映射被包含在DNS缓存内。在这种情形下,网内/网外确定模块122是基于DNS缓存中的映射而不是来自DNS服务的映射来接收DNS响应。举个例子,参考图3,动作304中的DNS查询将被发送到DNS缓存,并且动作312中的DNS响应是从DNS缓存接收的。
在一个或多个实施例中,计算设备120被配置成避免出现网内/网外确定模块122由于以DNS缓存中的映射为基础的DNS响应而不正确地确定计算设备120是否处于特定网络内部这样的情形。这种情形可以采用不同的方式来避免。
在一个或多个实施例中,DNS缓存中的每一个映射都具有相关联的生存时间(TTL),对于DNS缓存中的不同映射来说,该生存时间既可以是相同的,也可以是不同的。在用于DNS缓存中的映射的生存时间期满之后,用于解析包含在过期映射中的特定名称的DNS查询将被转发到DNS服务,以便解析而不是仅仅基于DNS缓存中的映射来返回DNS响应。对用于确定计算设备120是否包含在特定网络中的特定名称的映射来说,其生存时间被设置成了一个很小的值(例如零值,小于5分钟的值等等)。因此,通过对于DNS缓存中的这种映射具有很短的生存时间,网内/网外确定模块122不会在过长的时段中依赖于DNS缓存中的不正确的过期数据。
可替换地,DNS缓存可以不维护用于确定计算设备120是否处于特定网络内部的特定名称的映射,并且在DNS缓存中不维护包含了这种映射的针对DNS查询的DNS响应。这也可以被视为是用于确定计算设备是否处于特定网络内部的特定名称的映射具有大小为零的生存时间。例如,DNS缓存可以不维护格式为“insideoutside.<domain-name>”的映射。因此,通过在DNS缓存中不具有这种映射,网内/网外确定模块122不会依靠DNS缓存中的不正确数据。
应该指出的是,虽然所示出的是单个网络102,但是这里论述的确定设备是否处于网络内部的技术可以与多个不同的网络一起使用。计算设备120可以被配置成具有或以其他方式获取用于多种不同网络中的每一个网络的可信机构的指示(并且可选地获取DNS服务的网络地址)。网内/网外确定模块122因此能够很容易在任何特定时间确定计算设备120处于那些不同网络中的任一网络的内部还是外部。
此外,应该指出的是,虽然网内/网外确定模块122被显示成是计算设备120的一部分,但是可替换地,网内/网外确定模块122的多种不同功能可以实现在其他设备上。例如,计算设备120可以与可以是网络120或别的网络的一部分的一个或多个其他设备或服务进行通信,其中这些设备或服务可以执行这里论述的用于确定设备是否处于网络内部的技术的多种不同方面。
因此,这里论述的基于DNS来确定设备是否处于网络内部的技术允许计算设备在任何特定时间精确和可靠地确定计算设备是否处于特定网络内部。通过使用DNS系统,这里论述的基于DNS来确定设备是否处于网络内部的技术使用了已有的可靠系统来做出判定。DNS系统用已经作为一个可靠的系统工作,其通过酌情提供复制、备份等来保持DNS功能的高可用性。因此,不需要构造和保持可用性很高的附加可靠系统来实现这里论述的基于DNS确定设备是否处于网络内部的技术。
更进一步,这里论述的基于DNS确定设备是否处于特定网络内部的技术是在不同类型的网络部署中工作的。例如,这里论述的基于DNS确定设备是否处于特定网络内部的技术可以与网际协议(IP)版本4(IPv4)网络地址、IP版本6(IPv6)网络地址、站内自动隧道寻址协议(ISATAP)地址和机制、其他协议和/或机制、上述各项的组合等等一起使用。
这里论述的基于DNS确定设备是否处于特定网络内部的技术支持多种不同的使用场景。例如,计算设备可以在“始终启动”访问模式中工作,在该模式中,无论是否移动到在特定网络内部和特定网络外部之间变化的不同位置,计算设备都保持与特定网络(例如企业网)的连接。计算设备可以继续工作,因此在任何时间确定该计算设备处于网络内部还是外部,并且基于该判定来酌情采用不同的方式工作。
图5图示了可以根据一个或多个实施例被配置成实现基于DNS确定设备是否处于网络内部的例示计算设备500。举例来说,计算设备500可以是图1和2的计算设备120,或是图1和2的一个或多个路由器104、DNS服务106、网关108和/或设备110。
计算设备500包括一个或多个处理器或处理单元502,可以包括一个或多个存储器和/或存储组件506的一个或多个计算机可读媒体504,一个或多个输入/输出(I/O)设备508,以及允许多种不同的组件和设备彼此通信的总线510。计算机可读媒体504和/或一个或多个I/O设备508可被包含作为计算设备500的一部分,或者可替换地它也可以耦合到计算设备500。总线510代表了若干种类型的总线结构中的一种或多种,包括使用了多种不同总线架构的存储器总线或存储器控制器,外设总线,图形加速端口,处理器或本地总线等等。总线510可以包括有线和/或无线总线。
存储器/存储组件506代表一个或多个计算机存储媒体。组件506可以包括易失媒体(例如随机存取存储器(RAM))和/或非易失媒体(例如只读存储器(ROM)、闪存、光盘、磁盘等等)。组件506可以包括固定媒体(例如RAM、ROM、固定硬盘驱动器等等)以及可移除媒体(例如闪存驱动器、可移除硬盘驱动器、光盘等等)。
这里论述的技术可以在软件中利用由一个或多个处理单元502运行的指令实现。应该了解的是,不同的指令可以存储在计算设备500的不同组件中,例如存储在处理单元502,处理单元502的多种不同缓存存储器,设备500的其他缓存存储器(未显示)或是其他计算机可读媒体等等中。此外,应该了解的是,在计算设备500中存储指令的位置是可以随时间改变的。
一个或多个输入/输出设备508允许用户在计算设备500中输入命令和信息,并且还允许将信息呈现给用户和/或其他组件或设备。输入设备的示例包括键盘、光标控制设备(例如鼠标)、麦克风、扫描仪等等。输出设备的示例包括显示设备(例如监视器或投影仪)、扬声器、打印机、网卡等等。
在这里,多种不同的技术可以是在软件或程序模块的上下文中描述的。通常,软件包括执行特定任务或实现特定抽象数据类型的例程、应用、程序、对象、组件、数据结构等等。这些模块和技术的实现方式可以存储在某种类型的计算机可读媒体上,或是经过此类媒体来传送。计算机可读媒体可以是能被计算设备访问的任何可用介质或媒体。作为示例而不是限制,计算机可读媒体可以包括“计算机存储媒体”和“通信媒体”。
“计算机存储媒体”包括通过任何用于存储信息的方法或技术实现的易失和非易失、可移除和不可移除媒体,所述信息例如是计算机可读指令、数据结构、程序模块或其他数据。计算机存储媒体包括但不局限于RAM,ROM,EEPROM,闪存或其他存储器技术,CD-ROM,数字多用途盘(DVD)或其他光学存储器,磁带盒,磁带,磁盘存储器或其他磁存储设备,或是其他任何可以用于存储期望信息并能被计算机访问的介质。
“通信媒体”通常会将计算机可读指令、数据结构、程序模块或其他数据包含在诸如载波或其他传输机制之类的调制数据信号中。通信媒体还包括任何信息递送媒体。术语“调制数据信号”指的是这样的信号,其一个或多个特性以在该信号中编码信息的方式而被设置或改变。作为示例而不是限制,通信媒体包括诸如有线网络或直接线路连接之类的有线媒体以及诸如声学、RF、红外以及其他无线媒体之类的无线媒体。上述各项的任何组合都包含在计算机可读媒体的范围以内。
一般来说,这里描述的任何功能或技术都可以使用软件、固件、硬件(例如固定逻辑电路)、手动处理或是这些实现方式的组合来实现。这里使用的术语“模块”和“组件”通常代表的是软件、固件、硬件或是其组合。在软件实施方式的情况下,模块或组件代表当在处理器(例如一个或多个CPU)上运行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储设备中,对它更进一步的描述可以参考图5找到。这里论述的基于DNS确定设备是否处于网络内部的技术的特征是不依赖于平台的,这意味着这些技术可以在具有多种处理器的多种商业计算平台上实现。
虽然通过特定于结构特征和/或方法动作的语言描述了本主题,但是应该理解,附加权利要求中的主题未必局限于上述具体特征或动作。相反,以上描述的具体特征和动作是作为用于实现权利要求的例示形式公开的。
Claims (10)
1.一种用于在计算设备中确定该计算设备是否处于内联网内部的方法,包括:
产生(302)域名系统(DNS)查询;
促使(304)所述DNS查询被发送;
检查(312)是否从位于所述内联网内部的DNS服务接收到针对该DNS查询的经过核实的DNS响应;
如果从所述DNS服务接收到经过核实的DNS响应,则确定(316)计算设备处于所述内联网内部;以及
如果没有从所述DNS服务接收到经过核实的DNS响应,则确定(318)计算设备处于所述内联网外部。
2.如权利要求1所述的方法,其中产生DNS查询包括产生包含特定名称的DNS查询,以及其中检查是否接收到经过核实的DNS响应包括检查DNS响应是否具有用于该特定名称的预期值。
3.如权利要求1所述的方法,其中经过核实的DNS响应是从支持DNS安全扩展(DNSSEC)协议的DNS服务接收的。
4.如权利要求1所述的方法,其中检查是否接收到经过核实的DNS响应包括检查接收到的DNS响应是否经过可信机构的数字签名。
5.如权利要求4所述的方法,其中可信机构是内联网的根证书机构。
6.如权利要求1所述的方法,其中确定计算设备处于内联网之外包括:如果在阈值数量的时间以内没有接收到针对DNS查询的DNS响应,则确定计算设备处于内联网外部。
7.如权利要求1所述的方法,还包括按照特定的间隔重复:促使DNS查询被发送,检查是否接收到经过核实的DNS响应,以及确定计算设备处于内联网内部还是内联网外部。
8.一种计算设备,被配置为确定该计算设备是否处于内联网内部,包括:
接收单元,适于接收(402)针对域名系统(DNS)查询的DNS响应;
第一检查单元,适于检查(404)DNS响应是否具有预期值,该预期值指示DNS查询被位于所述内联网内部的DNS服务解析;
第二检查单元,适于检查(408)DNS响应是否经过可信机构数字签名;以及
确定单元,适于如果DNS响应具有预期值并且DNS响应是经过可信机构数字签名的,则确定(410)计算设备通过核实且处于内联网内部;否则确定(406)计算设备未经核实并处于内联网外部。
9.如权利要求8所述的计算设备,其中预期值是基于DNS查询中的特定名称到计算设备已知的特定值的映射而被预期的值。
10.如权利要求8所述的计算设备,其中所述内联网包括公司网,并且其中可信机构是用于公司网的根证书机构。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/970,371 US9313085B2 (en) | 2010-12-16 | 2010-12-16 | DNS-based determining whether a device is inside a network |
US12/970371 | 2010-12-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102427484A CN102427484A (zh) | 2012-04-25 |
CN102427484B true CN102427484B (zh) | 2016-02-03 |
Family
ID=45961426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110423043.7A Active CN102427484B (zh) | 2010-12-16 | 2011-12-16 | 基于dns来确定设备是否处于网络内部的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9313085B2 (zh) |
CN (1) | CN102427484B (zh) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8087067B2 (en) | 2008-10-21 | 2011-12-27 | Lookout, Inc. | Secure mobile platform system |
US9235704B2 (en) | 2008-10-21 | 2016-01-12 | Lookout, Inc. | System and method for a scanning API |
US8984628B2 (en) | 2008-10-21 | 2015-03-17 | Lookout, Inc. | System and method for adverse mobile application identification |
US9781148B2 (en) | 2008-10-21 | 2017-10-03 | Lookout, Inc. | Methods and systems for sharing risk responses between collections of mobile communications devices |
US8108933B2 (en) | 2008-10-21 | 2012-01-31 | Lookout, Inc. | System and method for attack and malware prevention |
US8347386B2 (en) | 2008-10-21 | 2013-01-01 | Lookout, Inc. | System and method for server-coupled malware prevention |
US9043919B2 (en) | 2008-10-21 | 2015-05-26 | Lookout, Inc. | Crawling multiple markets and correlating |
US8533844B2 (en) | 2008-10-21 | 2013-09-10 | Lookout, Inc. | System and method for security data collection and analysis |
US9367680B2 (en) | 2008-10-21 | 2016-06-14 | Lookout, Inc. | System and method for mobile communication device application advisement |
US9955352B2 (en) | 2009-02-17 | 2018-04-24 | Lookout, Inc. | Methods and systems for addressing mobile communications devices that are lost or stolen but not yet reported as such |
US8467768B2 (en) | 2009-02-17 | 2013-06-18 | Lookout, Inc. | System and method for remotely securing or recovering a mobile device |
US8538815B2 (en) | 2009-02-17 | 2013-09-17 | Lookout, Inc. | System and method for mobile device replacement |
US9313085B2 (en) | 2010-12-16 | 2016-04-12 | Microsoft Technology Licensing, Llc | DNS-based determining whether a device is inside a network |
US8949411B2 (en) | 2010-12-16 | 2015-02-03 | Microsoft Corporation | Determining whether a device is inside a network |
US8738765B2 (en) | 2011-06-14 | 2014-05-27 | Lookout, Inc. | Mobile device DNS optimization |
US8788881B2 (en) | 2011-08-17 | 2014-07-22 | Lookout, Inc. | System and method for mobile device push communications |
US9407443B2 (en) | 2012-06-05 | 2016-08-02 | Lookout, Inc. | Component analysis of software applications on computing devices |
US9589129B2 (en) | 2012-06-05 | 2017-03-07 | Lookout, Inc. | Determining source of side-loaded software |
US8655307B1 (en) | 2012-10-26 | 2014-02-18 | Lookout, Inc. | System and method for developing, updating, and using user device behavioral context models to modify user, device, and application state, settings and behavior for enhanced user security |
US9208215B2 (en) | 2012-12-27 | 2015-12-08 | Lookout, Inc. | User classification based on data gathered from a computing device |
US9374369B2 (en) | 2012-12-28 | 2016-06-21 | Lookout, Inc. | Multi-factor authentication and comprehensive login system for client-server networks |
US8855599B2 (en) | 2012-12-31 | 2014-10-07 | Lookout, Inc. | Method and apparatus for auxiliary communications with mobile communications device |
US9424409B2 (en) | 2013-01-10 | 2016-08-23 | Lookout, Inc. | Method and system for protecting privacy and enhancing security on an electronic device |
US9642008B2 (en) | 2013-10-25 | 2017-05-02 | Lookout, Inc. | System and method for creating and assigning a policy for a mobile communications device based on personal data |
US9753796B2 (en) | 2013-12-06 | 2017-09-05 | Lookout, Inc. | Distributed monitoring, evaluation, and response for multiple devices |
US10122747B2 (en) | 2013-12-06 | 2018-11-06 | Lookout, Inc. | Response generation after distributed monitoring and evaluation of multiple devices |
US9584492B2 (en) | 2014-06-23 | 2017-02-28 | Vmware, Inc. | Cryptographic proxy service |
CA2982463C (en) | 2015-05-01 | 2019-03-05 | Lookout, Inc. | Determining source of side-loaded software |
EP3091714B1 (de) * | 2015-05-04 | 2018-03-21 | Siemens Aktiengesellschaft | Verfahren zur bereitstellung eines namensdienstes innerhalb eines industriellen automatisierungssystems und kommunikationsgerät |
US10218697B2 (en) | 2017-06-09 | 2019-02-26 | Lookout, Inc. | Use of device risk evaluation to manage access to services |
US11297032B2 (en) * | 2019-02-08 | 2022-04-05 | ColorTokens, Inc. | Method for detecting user migration from enterprise network to non-enterprise network and a device thereof |
US11368430B2 (en) * | 2019-03-29 | 2022-06-21 | Verizon Patent And Licensing Inc. | Domain name server based validation of network connections |
US11178135B2 (en) | 2019-06-10 | 2021-11-16 | Microsoft Technology Licensing, Llc | Partial pattern recognition in a stream of symbols |
US11258783B2 (en) | 2019-06-10 | 2022-02-22 | Microsoft Technology Licensing, Llc | Authentication with random noise symbols and pattern recognition |
US11514149B2 (en) | 2019-06-10 | 2022-11-29 | Microsoft Technology Licensing, Llc | Pattern matching for authentication with random noise symbols and pattern recognition |
US11496457B2 (en) | 2019-06-10 | 2022-11-08 | Microsoft Technology Licensing, Llc | Partial pattern recognition in a stream of symbols |
US11736472B2 (en) | 2019-06-10 | 2023-08-22 | Microsoft Technology Licensing, Llc | Authentication with well-distributed random noise symbols |
US11394551B2 (en) | 2019-07-17 | 2022-07-19 | Microsoft Technology Licensing, Llc | Secure authentication using puncturing |
US11133962B2 (en) | 2019-08-03 | 2021-09-28 | Microsoft Technology Licensing, Llc | Device synchronization with noise symbols and pattern recognition |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001030043A2 (en) * | 1999-10-15 | 2001-04-26 | Thomson Licensing S.A. | A system for processing internet domain names and addresses |
CN1663222A (zh) * | 2002-06-14 | 2005-08-31 | 法国电信有限公司 | 用于查询和/或更新dns服务器和/或目录的系统 |
CN1666486A (zh) * | 2002-06-28 | 2005-09-07 | 思科技术公司 | 用于使用域名服务锚定移动节点的方法和装置 |
CN1922834A (zh) * | 2004-05-06 | 2007-02-28 | 松下电器产业株式会社 | 因特网连接终端装置及因特网连接状态确认方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021429A (en) | 1996-11-18 | 2000-02-01 | Canon Information Systems, Inc. | Network device which maintains a list of device addresses |
US8023421B2 (en) | 2002-07-25 | 2011-09-20 | Avaya Inc. | Method and apparatus for the assessment and optimization of network traffic |
US7062572B1 (en) | 2001-03-19 | 2006-06-13 | Microsoft Corporation | Method and system to determine the geographic location of a network user |
US7360242B2 (en) | 2001-11-19 | 2008-04-15 | Stonesoft Corporation | Personal firewall with location detection |
JP4232550B2 (ja) | 2002-07-01 | 2009-03-04 | 日本電気株式会社 | ネットワーク情報検出装置および方法 |
US20050182937A1 (en) | 2004-02-12 | 2005-08-18 | Harmeet Singh Bedi | Method and system for sending secure messages over an unsecured network |
US7317918B2 (en) | 2004-07-19 | 2008-01-08 | Motorola, Inc. | Method for domain name service (DNS) in a wireless ad hoc network |
US7925729B2 (en) | 2004-12-07 | 2011-04-12 | Cisco Technology, Inc. | Network management |
WO2007030764A2 (en) | 2005-09-06 | 2007-03-15 | Daniel Chien | Identifying a network address source for authentication |
US7542468B1 (en) | 2005-10-18 | 2009-06-02 | Intuit Inc. | Dynamic host configuration protocol with security |
EP1826695A1 (en) * | 2006-02-28 | 2007-08-29 | Microsoft Corporation | Secure content descriptions |
CN101179491A (zh) | 2007-11-24 | 2008-05-14 | 华为技术有限公司 | 私用网络内部终端之间通信的方法、设备、装置及系统 |
US7917616B2 (en) | 2008-08-08 | 2011-03-29 | Microsoft Corporation | Secure resource name resolution |
US20100107240A1 (en) | 2008-10-24 | 2010-04-29 | Microsoft Corporation | Network location determination for direct access networks |
US7930428B2 (en) * | 2008-11-11 | 2011-04-19 | Barracuda Networks Inc | Verification of DNS accuracy in cache poisoning |
US8910270B2 (en) * | 2009-01-20 | 2014-12-09 | Microsoft Corporation | Remote access to private network resources from outside the network |
US9270646B2 (en) * | 2009-04-20 | 2016-02-23 | Citrix Systems, Inc. | Systems and methods for generating a DNS query to improve resistance against a DNS attack |
US8346968B2 (en) * | 2009-12-14 | 2013-01-01 | Verizon Patent And Licensing Inc. | Proactive DNS query system based on call flow analysis |
US8949411B2 (en) | 2010-12-16 | 2015-02-03 | Microsoft Corporation | Determining whether a device is inside a network |
US9313085B2 (en) | 2010-12-16 | 2016-04-12 | Microsoft Technology Licensing, Llc | DNS-based determining whether a device is inside a network |
US10270755B2 (en) * | 2011-10-03 | 2019-04-23 | Verisign, Inc. | Authenticated name resolution |
-
2010
- 2010-12-16 US US12/970,371 patent/US9313085B2/en active Active
-
2011
- 2011-12-16 CN CN201110423043.7A patent/CN102427484B/zh active Active
-
2016
- 2016-01-06 US US14/989,567 patent/US9722966B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001030043A2 (en) * | 1999-10-15 | 2001-04-26 | Thomson Licensing S.A. | A system for processing internet domain names and addresses |
CN1663222A (zh) * | 2002-06-14 | 2005-08-31 | 法国电信有限公司 | 用于查询和/或更新dns服务器和/或目录的系统 |
CN1666486A (zh) * | 2002-06-28 | 2005-09-07 | 思科技术公司 | 用于使用域名服务锚定移动节点的方法和装置 |
CN1922834A (zh) * | 2004-05-06 | 2007-02-28 | 松下电器产业株式会社 | 因特网连接终端装置及因特网连接状态确认方法 |
Also Published As
Publication number | Publication date |
---|---|
US9313085B2 (en) | 2016-04-12 |
CN102427484A (zh) | 2012-04-25 |
US9722966B2 (en) | 2017-08-01 |
US20120159636A1 (en) | 2012-06-21 |
US20160119276A1 (en) | 2016-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102427484B (zh) | 基于dns来确定设备是否处于网络内部的方法和装置 | |
CN103095861B (zh) | 确定设备是否处于网络内部 | |
CN102546176B (zh) | 在多主体环境中支持dns安全 | |
US8214482B2 (en) | Remote log repository with access policy | |
US7668954B1 (en) | Unique identifier validation | |
CN1326349C (zh) | 内容分配系统 | |
US7805606B2 (en) | Computer system for authenticating a computing device | |
CN101488950B (zh) | 用于因特网的对称密钥分发的方法、设备和系统 | |
US8301753B1 (en) | Endpoint activity logging | |
CN101277257B (zh) | 一种dns动态更新的方法、装置和系统 | |
Yang et al. | Deploying cryptography in Internet-scale systems: A case study on DNSSEC | |
CN105917689A (zh) | 以信息为中心的网络中的安全的点对点组 | |
CN102823195A (zh) | 利用由虚拟机进行的软件测试远程维护电子网络中的客户端系统的系统和方法 | |
CN101960814A (zh) | Ip地址委派 | |
CN101321064A (zh) | 一种基于数字证书技术的信息系统的访问控制方法及装置 | |
CN103190130A (zh) | 用于向设备提供秘密值的注册服务器、网关装置和方法 | |
CN114697945B (zh) | 发现响应消息的生成方法及装置、发现消息的处理方法 | |
CN101534192A (zh) | 一种提供跨域令牌的系统和方法 | |
CN104662871A (zh) | 安全地访问网络服务的方法和设备 | |
JP2007334417A (ja) | 分散情報共有方法および端末装置 | |
JP2006079213A (ja) | 中継装置、認証サーバ及び認証方法 | |
JP3215882U (ja) | クラウドストレージベースのファイルアクセス制御システム | |
CN114338091A (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN113938272A (zh) | 基于标识解析的密钥中心认证方法和设备 | |
JP2008028899A (ja) | 通信システム、端末装置、vpnサーバ、プログラム、及び、通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150617 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150617 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |