CN106068639B - 通过dns处理的透明代理认证 - Google Patents

通过dns处理的透明代理认证 Download PDF

Info

Publication number
CN106068639B
CN106068639B CN201580011716.4A CN201580011716A CN106068639B CN 106068639 B CN106068639 B CN 106068639B CN 201580011716 A CN201580011716 A CN 201580011716A CN 106068639 B CN106068639 B CN 106068639B
Authority
CN
China
Prior art keywords
name
domain name
identifier
request
dns
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
Application number
CN201580011716.4A
Other languages
English (en)
Other versions
CN106068639A (zh
Inventor
杰夫·汤森
迈克尔·埃勒里
卢卡斯·希巴
布莱恩·萨默斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN106068639A publication Critical patent/CN106068639A/zh
Application granted granted Critical
Publication of CN106068639B publication Critical patent/CN106068639B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

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响应具有代理服务的域名信息。提供了在代理服务处无缝地和透明地认证订户的技术。代理服务响应于对目标域名的请求生成对具有包括跟踪标识符的唯一域名的重定向。域名服务器接收与唯一域名相关联的请求。域名服务器用代理服务的域名信息进行响应,并且向代理服务生成将跟踪标识符映射至订户标识符的消息。客户端然后向代理服务生成包括跟踪标识符的请求。代理服务使用来自域名服务器的映射来认证相应的订户标识符。

Description

通过DNS处理的透明代理认证
背景技术
技术领域
根据本公开的实施例涉及计算机网络,并且更具体地涉及处理域名***(DNS)信息。
相关技术的描述
网络资源(例如,通过互联网可用的网络资源)根据互联网协议(IP)地址被访问。IP地址被数字地、传统地表示为具有111.111.111.111形式的四字节值。从网络计算的早期开始,常见的字母数字的基于名称的寻址已经被用来允许用户更容易地定位并且记住资源的地址。例如,域名被分配给计算服务器和客户端。域名***通过维持将一个或多个域名与一个或多个IP地址相关联的可访问的记录来促进IP地址与域名之间的转换。
虽然早期网络实现可以利用单个定期分发的ASCII文件来在域名与IP地址之间进行转换,但是诸如互联网之类的现代网络依赖于域名***(DNS)来解析名称和地址。图1是示出传统DNS处理的简化框图。客户端计算设备102包括用于发起DNS请求的解析器104。解析器可以是诸如客户端的软件模块之类的独立组件,或可以被嵌入各种应用(例如,利用互联网资源的web浏览器、文件传输协议程序、电子邮件应用等等)之内。当客户端请求诸如web页面之类的互联网资源或传递电子邮件消息时,解析器负责确定所请求的资源的(一个或多个)IP地址,以便可以向适当的地址发出适当的请求。解析器传统地被配置有一组ISPDNS域名服务器(Namesever)110的地址,ISP DNS域名服务器110处理客户端设备的递归DNS处理。在通常情况下,这组域名服务器由客户端设备的互联网服务提供商(ISP)来提供,尽管这不是必须的。域名服务器110是使用递归过程来解析DNS请求的递归域名服务器,该递归过程访问各个其他域名服务器从而满足给定查询。
考虑针对域名信息为“www.opendns.com”的从客户端102到域名服务器112的示例DNS请求150。ISP DNS域名服务器首先检查本地缓存以尝试解析该请求。ISP DNS域名服务器用已经被解析的域名记录来维持本地缓存,从而提升响应后续DNS请求的性能。如果域名服务器112在本地缓存中维持所请求的域名,则它将向客户端发出DNS响应152,该DNS响应152具有包括IP地址“www.opendns.com”的域名记录。
如果ISP DNS域名服务器112不具有所请求的域名的条目,则它将开始进行使用权威DNS域名服务器120和/或根DNS域名服务器130的递归过程。权威域名服务器维持区域的权威或主要列表,该区域是一组计算设备。递归DNS域名服务器从权威域名服务器获得诸如所请求的资源的IP地址之类的域名信息。根DNS域名服务器也是权威DNS域名服务器。它们被称为根DNS域名服务器,因为它们包括所谓的根区域中的一组顶级域(TLD)的权威域名信息。例如,根DNS域名服务器包括用于在顶级域中查找低级域的域名信息的IP地址。顶级域包括.com、.org、.net等通用顶级域(gTLD)。
域名服务器112首先向根DNS域名服务器130发出DNS请求154。根DNS域名服务器130可以包括多个域名服务器,针对所需要的信息可以向该多个域名服务器中的一个或多个域名服务器发出请求。域名服务器132中的一个域名服务器用DNS响应156进行响应,该DNS响应156包括“.com”域的一个或多个权威域名服务器的IP地址。当ISP DNS域名服务器112获得“.com”域的IP地址时,它向权威DNS域名服务器120中指定的一个权威DNS域名服务器发出另一DNS请求158。指定的权威域名服务器将发出DNS响应160,该DNS响应160具有“opendns.com”域的一个或多个域名服务器的IP地址。该过程在ISP DNS域名服务器与权威域名服务器120之间重复进行,直到ISP DNS域名服务器接收到“www.opendns.com”的IP地址。客户端102应用然后可以向适当的计算机发出资源请求,例如向相应的IP地址处的服务器发出HTTP请求。
图2是如图1所示出的可以存储域名记录的典型权威DNS域名服务器120的简化框图。在该示例中,权威DNS域名服务器120是计算机***,其中处理器250通过***总线252被耦合至通信接口260和存储器或存储装置270。通信接口260通过线路254与诸如互联网之类的通信网络交换数据。处理器250从互联网接收DNS请求,并且基于域名记录(例如,存储在存储器270中的DNS记录280)来解析DNS请求。DNS记录280包括域名282,该域名282被用作查找相应的IP地址284的关键,并且DNS记录280还包括存活时间(TTL)值286。DNS记录的TTL值可以由权威DNS域名服务器的管理员来设置。TTL值被提供作为对DNS请求的DNS响应的一部分,并且被接收域名服务器用来控制DNS记录应当被维持和视为有效的时长。
附图说明
图1是描绘DNS请求的传统处理的计算机网络的简化框图。
图2是权威DNS域名服务器的示例的简化框图。
图3是根据所公开的技术的一个实施例的包括递归DNS域名服务器的计算***的简化框图。
图4是描绘在一个实施例中当处理目标域的DNS请求和资源请求时图3的各种组件之间的流量的时序图。
图5是根据一个实施例的描述处理DNS请求的方法的流程图。
图6是根据一个实施例的描述处理资源请求的方法的流程图。
图7是可以被用来实现所公开的技术的各种实施例的计算设备的简化框图。
图8描绘了DNS资源记录的示例的结构。
图9描绘了DNS消息的示例的结构。
具体实施方式
提供了用于根据订户消息来处理域名***请求的***和方法。可以使用订户标识符将来自订户的对域名信息的请求与订户的偏好相关联,从而在域名***(DSN)域名服务器处解析域名信息。对标记的域名的访问可以根据例如订户偏好被封锁或被代理。响应于来自客户端设备的对标记的域名的请求,域名服务器可以提供代理服务的域名信息。代理服务与DNS域名服务器之间的通信被促进以允许代理服务确定来自DNS域名服务器的订户标识符。订户可以在没有来自用户或客户端设备的输入的情况下基于来自DNS域名服务器的直接通信在代理服务处被无缝地认证。
在一个实施例中,代理服务可以生成跟踪标识符和包括跟踪标识符的唯一域名,从而触发域名服务器来发送订户标识符。例如,代理服务可以确定对目标域名的资源请求是否包括跟踪标识符,如该跟踪标识符可以在目标域名的cookie中被传递。如果资源请求不包括跟踪标识符,则代理服务生成跟踪标识符和包括跟踪标识符的唯一域名。代理服务向客户端设备发送响应,该响应包括到唯一域名的重定向以及包括跟踪标识符的目标域名的cookie。
域名服务器接收来自客户端设备的、对唯一域名的DNS请求。域名服务器将来自唯一域名的跟踪标识符与DNS请求的订户标识符相关联。域名服务器将关联的订户标识符和跟踪标识符发送至代理服务。域名服务器响应于DNS请求发送代理服务的域名信息。
代理服务响应于发出的重定向接收对唯一域名的资源请求。代理服务从唯一域名中提取目标域名,并且将客户端设备重定向至目标域名。代理服务然后接收对目标域名的资源请求。值得注意的是,资源请求传递具有跟踪标识符的cookie。代理服务提取跟踪标识符,并且使用来自域名服务器的关联的信息来确定相应的订户标识符。代理服务然后可以基于与订户标识符相关联的订户偏好来生成对资源请求的响应。在替代实施例中,代理服务可以从对唯一域名的请求中提取跟踪标识符和目标域名,并且在不需要所描述的重定向的情况下直接对客户端设备进行响应。
图3是根据本公开的实施例的用于处理域名***(DNS)请求的***的框图。订户网络310、web服务器320、和递归DNS集群330各自与一个或多个网络302进行通信。虽然示出了两个具有四个客户端设备的订户网络,但是可以使用任意数量的订户网络或客户端设备。
(一个或多个)网络302和310可以包括局域网、广域网(WAN)、互联网、和/或任意其他网络的任意组合。递归DNS集群可以随实现方式而变化,并且包括任意适当的计算***,例如被配置为响应对域名信息的请求和/或处理网络相关的资源请求的计算机***的服务器、组、网格、或分布式平台。虽然图3中所描绘的集群具有多个递归DNS域名服务器,但是其他实施例在集群之内可以包括单个计算***,例如单个服务器。集群中单独的递归域名服务器可以由硬件和/或软件来形成,该硬件和/或软件被配置为用于所描述的域名解析和网络处理。通过非限制性示例的方式,各种域名服务器可以包括个人计算机、服务器、工作站、大型机等等。
集群中的每个递归域名服务器解析来自其他计算设备(例如,由订户网络310上的个体用户操作的客户端设备312)的对域名信息的请求。集群330中的域名服务器332包括本地缓存340和订户数据库350,或与本地缓存340和订户数据库350进行通信。存储在缓存中的域名信息可以是与域名相关联的任意类型的信息。域名信息的一些示例是资源记录,例如用于存储与域名相关联的32位IP地址的“A”记录、用于存储与域名相关联的IPv6128位地址的“AAAA”记录、和DNS别名的“CNAME”或规范名称记录。对域名信息的请求可以包括被用来请求域名信息的分组、信元(“cell”)、消息、或信号。
每个集群处的缓存340通过存储域名信息(例如,与先前接收的DNS请求相对应的DNS记录)来促进对DNS请求的更有效的响应。缓存还可以存储其他域名信息,例如预取域名信息。如果缓存包括响应DNS请求所需要的(一个或多个)DNS记录,则DNS域名服务器可以无需联系其他域名服务器返回缓存的信息来完成请求。
当来自客户端313或其他计算设备的DNS请求不能用缓存的域名信息来完成时,递归DNS集群发起递归处理来确定所需要的信息。例如,DNS域名服务器332可以首先向通用顶级域信息的根服务器中的一个根服务器发出DNS请求,随后向各种权威域名服务器发出一个或多个DNS请求来确定所请求的域名信息。
响应还可以包括被用于发送域名信息的分组、信元、消息、或信号。统一资源标识符(URI)标识通过网络主机可用的资源。URI的一些示例包括协议,例如http-HTTP资源、https-通过SSL的HTTP、ftp-文件传输协议、mailto-电子邮件地址、ldap-轻量级目录访问协议查找、file-本地计算机上或通过本地文件共享网络的可用的资源、news-网络新闻组、gopher-Gopher协议、telnet-TELNET协议、和data-数据:用于在适当的位置***小片段内容的URL方案。通常,诸如URL之类的URI包括形成URL的一部分的域名。
响应于对与域名相关联的域名信息的DNS请求,集群之内的递归DNS域名服务器可以确定订户标识符。订户通常是同意递归DNS集群330的运营商的服务条件的个体或实体。订户的范围可以从操作大型网络310(例如,由无线服务提供商或大型企业提供的网络)的实体到具有家庭互联网连接的个体。注意的是,虽然所描绘的订户网络310具有多个客户端设备312,但是这不是必须的。在一个示例中,订户可以操作单个具有互联网连接的个人计算机。根据本公开的实施例可以在任意类型的环境中被应用。
订户标识符辨别与对域名信息的请求相关联的订户。订户标识符的一些示例是IP地址、用户ID、设备ID、和安全令牌。如果使用IP地址标识符,则递归DNS域名服务器可以检查包括请求的网络分组,从而确定分组的源IP地址。用户名或安全令牌可以被包括在对域名信息的请求中,递归DNS域名服务器从该请求中确定订户标识符和订户信息。一些订户可以与多个用户相关联。因此,订户标识符可以标识订户,并且在订户包括多个用户的情况下可以可选择地标识与订户相关联的特定用户。下面参考的订户标识符包括订户的标识符以及与订户相关联的特定用户的标识符。
在一个示例中,订户的网络上的设备或应用被设置为修改DNS请求以包括订户标识符。例如,可以使用DNS协议的扩展,例如EDNS,EDNS允许更多的标志、标签类型、和返回代码被定义。EDNS可以允许DNS消息的发送者(例如,客户端设备312)将它自己的扩展能力通告给消息接收者(例如,DNS域名服务器332)。这可以通过在请求或响应的附加数据部分中包括OPT伪RR来实现。OPT伪RR可以包括一个或多个EDNS选项。在一个示例中,客户端设备312可以将设备ID提供至DNS域名服务器332作为订户标识符。例如,OPT资源记录(RR)中的专用设备ID键/值对可以在DNS查询的附加部分中被提供。RR可以在DNS查询的附加部分在出现,使得DNS域名服务器332将该部分的最后八字节解释为设备ID。设备ID可以作为与DNS域名服务器332相关联的订户信息的数据库中的索引。用于确定相同的内容其他订户标识符和技术可以被使用。
在一个实施例中,递归DNS域名服务器基于与订户标识符相关联的订户信息来解析对域名信息的请求从而生成响应。递归DNS域名服务器然后可以将响应返回给客户端设备,根据订户信息来提供解析的域名信息。通过示例的方式,递归DNS域名服务器可以在针对第一订户请求的域名的域名记录中获得网络(例如,IP)地址。对于第二订户,递归DNS域名服务器反而可以基于订户信息获得满足所请求的域名的替代标准的替代网络(例如,IP)地址。
在一些实施例中,当DNS域名服务器332解析与订户相关联的DNS查询时,由DNS集群提供的服务的订户可以设置针对选项如何被使能或以其他方式被应用的一个或多个偏好或选择。订户的偏好或设置可以作为订户信息被存储在订户数据库350处或被存储在DNS集群330可访问的一个或多个存储设备中。当识别订户时,与订户标识符相关联的订户信息可以被用来改变DNS响应中的IP地址。例如,订户可以建立订户信息,该订户信息命令DNS域名服务器改变对DNS请求的响应,该DNS请求与***、潜在的网络钓鱼或域名欺诈网站、或被订户认为是不适当的或订户希望锁定访问或过滤访问的其他网站等等相关联。Web服务器334和域名服务器332各自可以访问订户数据库350。在图3中,web服务器和域名服务器利用单个数据库,但是在其他实施例中,可以使用包括相同信息的个体数据库。
数据库350中的订户信息可以包括网络记录352和/或用户记录354,该网络记录352和/或用户记录354被用来确定针对给定域名要解析的特定IP地址。网络记录和用户记录可以各自指定用于确定针对给定域名要解析哪个IP地址的一个或多个DNS解析选项、过滤器、特征、或其他技术。例如,在向DNS客户端提供DNS服务中,DNS服务器可以提供解析的域名信息,或可以基于存储在DNS服务器处的订户信息(该订户信息指示终端用户想要DNS服务器来如何采用DNS解析选项或特征)将DNS客户端重定向至另一位置。在各种示例中,DNS集群可以提供各种DNS解析选项或特征,例如通过DNS过程进行的拼写错误重定向、绿坝(parental filters)、域封锁、或网络钓鱼保护。
网络记录352指定用于解析与特定订户的网络或网络310相关联的域名查询的偏好或选择。在一个实施例中,订户可以指定解析偏好,该解析偏好将应用于在他们的网络310处发起的所有流量。DNS域名服务器332可以使用网络标识符(例如IP地址,DNS查询从该IP地址发出)来确定相应的网络记录352。订户可以设置网络记录中的权限和偏好,从而指示订户的网络的特定用户可以忽略某些偏好。例如,企业网络310的管理员可以设置网络记录352,从而允许网络310的某些用户忽略网络记录中的特定偏好,例如封锁对某些域的访问的那些偏好。替代地或附加地,用于覆盖网络偏好的权限和偏好可以被包括在用户记录354中。
用户记录354包括使用DNS集群330的服务的个体用户或实体的订户信息。例如,企业订户可以针对组织内的多个个体建立用户记录,从而指定将应用于由用户发出的DNS请求的解析偏好或选择。DNS域名服务器332可以使用订户标识符(例如,用户id、令牌、或其他标识符)来确定特定请求的相应的网络记录352和/或用户记录354。
用户记录和网络记录可以一起被用来确定应用于对域名信息的任意单独请求或对如下面将被解释的实际资源的请求的一组权限或偏好。然而,值得注意的是,实现方式不一定必须包括网络记录和用户记录,而是可以简单地包括订户记录。
缓存340中的域名记录可以与一个或多个标志相关联,或可以存储一个或多个标志。标志可以是与域名相关联的任意指示符、标记、或符号。例如,可以使用存储在域名记录中的二进制指示符。标志可以被用来标识特定域名的各种类型的信息。例如,标志可以被用来将域名标记为可疑的或不可靠的,例如从事欺诈或网络钓鱼活动的网站。标志还可以指示某个域托管非法材料、仇恨言论、色情图文、与毒品或酒精有关的材料、或订户不希望访问或不允许访问的其他不恰当的材料。可以使用任意数量的标志来创建任意数量的域名的分类。例如,表示各种级别的成人材料的标志可以被用来根据域名的适龄性来分类域名。标志还可以在域名记录中被设置,从而使得对特定域名的请求将被代理。这可以允许订户使某些域名的流量被代理(例如,用于登录、审计等等),而其他域的流量不被代理。分类信息和/或标志可以以其他方式被维持。例如,标志或分类信息可以在一般数据库中或在订户数据库中被提供。
当对域名信息的请求被接收时,DNS域名服务器332使用订户信息和域名记录中的任意标志来解析域名查询。例如,DNS请求的网络记录可以设置偏好,即特定类别的域或特定域将被封锁以防止网络上的设备进行访问。如果DNS请求是对具有与网络记录中这样的偏好相匹配的标志的域的请求,则DNS域名服务器可以生成具有替代IP地址的DNS响应,该替代IP地址将客户端设备导向替代域。在一个示例中,DNS域名服务器向客户端设备提供与web服务器334上的代理服务336相关联的域名信息。响应于客户端设备的资源请求,代理服务可以向客户端设备提供封锁页面或登录页面,例如,通知订户所请求的域在他们的网络上不可访问。封锁页面或登录页面一般地指响应于对目标域的请求由代理服务提供的任意资源或信息,该任意资源或信息不是目标域提供的实际资源。代理服务可以在提供登录页面之前认证订户和/或与订户相关联的用户。例如,可以基于订户信息定制登录页面。此外,代理服务可以认证订户和来自订户的对目标域名的代理资源请求。
代理服务336基于从DNS域名服务器接收到的订户标识符透明地认证订户。在一个示例中,代理服务336使用一系列重定向来创建由DNS域名服务器接收到的订户标识符与目标域名的认证cookie之间的映射从而无缝地认证订户。当代理服务接收对目标域的请求并且不能识别与该请求相关联的订户标识符时,它可以响应于相应的DNS请求向客户端设备发出重定向,该重定向触发DNS域名服务器向代理服务发送订户标识符。一系列的重定向利用跟踪标识符和唯一域名来使得代理服务能够将订户标识符映射至对目标域名的特定资源请求。以这种方式,在不要求订户或与订户相关联的用户进行输入的情况下,DNS域名服务器将订户标识符从DNS域名服务器发送至代理服务。
在一个示例中,代理服务336接收与目标域名338相关联的资源请求,并且针对目标域名的认证cookie来检查请求。如果该请求不包括认证cookie,则代理服务生成请求的跟踪标识符和唯一域名。唯一域名包括跟踪标识符。代理服务生成包括唯一域名的重定向响应。该响应包括目标域名的cookie,该目标域名的cookie包括跟踪标识符。
客户端312向DNS域名服务器332发出对唯一域名的域名信息的DNS请求。客户端312将订户标识符与DNS请求(例如,作为EDNS报头)一起传递。DNS域名服务器识别唯一域名,并且作为对应于代理服务认证过程而做出响应,并且从唯一域名提取跟踪标识符。DNS域名服务器向代理服务生成消息,该消息将跟踪标识符与订户标识符关联。DNS域名服务器响应于DNS请求将代理服务的域名信息返回至客户端312。
客户端312向代理服务发出对唯一域名的资源请求。代理服务从唯一域名提取目标域名。代理服务向客户端发出对目标域名的重定向响应。客户端312向代理服务发出对目标域名的资源请求。客户端312将由代理服务针对目标域名生成的认证cookie与请求一起传递至代理服务。代理服务从认证cookie提取跟踪标识符。
代理服务336基于它从DNS域名服务器已经接收到的任意消息来尝试确定与跟踪标识符相对应的订户标识符。如果代理服务找到具有跟踪标识符与订户标识符之间的关联的消息,则它认证订户标识符。在一个示例中,代理服务代理对目标域名的请求。代理服务可以向目标域338发出一个或多个请求,并且使用从目标域338接收到的(一个或多个)资源来向客户端312返回一个或多个资源。在一个示例中,代理服务访问来自数据库350的与订户标识符相对应的订户信息。代理服务可以应用用户偏好,以生成对来自客户端312的资源请求的应答。例如,订户信息可以指示订户或与订户相关联的用户是否可以访问目标域名。如果订户信息指示订户不可以访问目标域名,则代理服务可以向客户端312发出对例如登录页面或封锁页面的重定向。如上所述,在一个实施例中,在不使用订户信息的情况下,代理服务可以返回登录页面或封锁页面。
图4是描述一个示例中的客户端设备312、递归DNS域名服务器332、代理服务336、和与目标域名338相关联的web服务器320之间的流量的图示。当订户或与订户相关联的用户(下面简称订户)向递归DNS域名服务器332发出域名***(DNS)请求402时,过程开始。这里提供了具体示例,其中发出了对目标域名“example.eee”的域名信息的请求402。注意的是,本文所使用的任何示例旨在是虚构的,并且所提供的示例仅为了针对特定示例更好地说明所公开的技术。
响应于请求402,域名服务器332获得目标域名的域名信息。在一个示例中,域名服务器可以从缓存340获得目标域名的域名记录。如果域名记录对所请求的域名信息是不可用的,则域名服务器可以通过向一个或多个根域名服务器、授权域名服务器、和/或其他递归域名服务器发出请求来递归地解析域名信息。
域名服务器还确定与DNS请求相关联的订户ID。在一个示例中,域名服务器确定如上所述的与DNS请求一起传递的用户id或令牌。使用订户ID,域名服务器从数据库350获得与DNS请求相关联的特定订户的订户信息(例如,网络记录和/或用户记录)。用户记录和网络记录可以被用来确定当订户在订户网络310上时其是否被允许访问目标域名。
目标域名可以与对应于订户的一个或多个偏好的一个或多个标志相关联,该订户的一个或多个偏好指示域名信息不应当被提供。例如,与IP地址相关联的网络记录可以指示来自该网络的订户不可以访问所请求的域。此外或可替代地,用户记录可以指示订户不希望被提供有与该特定域相关联的域名信息。
基于任意标志和订户偏好,域名服务器332向客户端设备312发出DNS响应404。在这个示例中,假定订户信息指示订户或与订户相关联的用户不应当访问目标域名,由此域名信息不应当被提供。因此,域名服务器332不提供所请求的域名的域名信息(例如,“002.000.000.000”),而是提供具有web服务器334处的代理服务336的域名信息(例如,“000.000.000.000”)的DNS响应404。
代理服务336从客户端312接收资源请求406(例如,HTTP),该资源请求406与目标域名相关联。例如,请求可以包括URI,该URI包括目标域名228。在图4中,代理服务接收具有URI“http://www.example.eee”的请求。客户端设备312基于由域名服务器332提供的域名信息向代理服务发出请求。
代理服务336检查请求以确定它是否包括目标域名的认证cookie。例如,代理服务336可以接收目标域的认证cookie或其他预定标识符(包括在识别与请求相对应的订户ID中使用的跟踪标识符)。如果代理服务336没有接收到目标域的认证cookie,则它向客户端设备312发出重定向响应408。
重定向响应408被生成以发起用于在代理服务336处识别和认证与请求406相对应的订户的过程。代理服务336生成唯一域名以跟踪请求406。在一个示例中,唯一域名包括由代理服务336针对请求406生成的唯一跟踪标识符。代理服务336还生成目标域名的认证cookie。代理服务包括认证cookie中的跟踪标识符。代理服务然后发出与唯一域名相关联的重定向响应408。此外,响应408设置目标域名的认证cookie,包括跟踪标识符。
图4示出了包括唯一域名的重定向URI的两个示例。在第一示例中,唯一域名包括生成唯一域名的固定域名部分和一个或多个动态生成的部分。在该示例中,固定域名部分是“fixed.eee”。动态生成的部分包括请求的跟踪标识符“TID”和代理服务的标识符“IP”。在该示例中,跟踪标识符TID和标识符被附加至固定域名作为子域名。此外,唯一域名包括目标域,作为附加变元。例如,在图4中,与请求406一起接收的修剪版本的URI作为变元被附加。修剪版本是移除了协议“http”和域名标签“www”的原始URI。代理服务的标识符“IP”是托管代理服务的web服务器334的IP地址。在代理服务可以驻留在多个机器上的实施例中,可以包括标识符,以便域名服务器可以正确地向代理服务生成后面的消息。代理服务的标识符是可选的,并且在一些实现方式中可能不被使用。
在第二示例中,唯一域名是基于目标域名而不是基于固定域名的。例如,跟踪标识符可以作为目标域名的子域名被添加,从而生成唯一域名。此外,代理的标识符可以被附加作为目标域名的子域名。生成包括跟踪标识符的唯一域名的其他技术可以被使用。
客户端312从代理服务336接收重定向响应408,该重定向响应408包括与唯一域名相关联的重定向URI。客户端312向DNS域名服务器332发出DNS请求410,该DNS请求410请求唯一域名的域名信息。图4的剩余部分继续描述唯一域名的第一示例。
DNS域名服务器接收DNS请求410并且识别唯一域名(作为对应于由代理服务336发起的认证事务)。DNS域名服务器332可以被配置为基于唯一域名来发起订户识别和相关过程。例如,DNS域名服务器可以被配置为基于DNS请求中的预定的固定域名来发起过程。DNS域名服务器可以被配置为基于域名请求的预定格式来发起过程。例如,DNS域名服务器可以响应于对具有“TID.IP.target_domain_name.com”的格式的域名的请求来发起过程。
域名服务器332确定与DNS请求410相关联的订户标识符。确定订户标识符可以按照针对DNS请求查询402所描述的来执行。域名服务器332还确定与DNS请求410相关联的跟踪标识符。例如,在各种实现方式中,域名服务器332可以从目标域名或固定域名的子域名提取跟踪标识符。
域名服务器332响应于DNS请求410将消息412发送至代理服务336。消息412包括来自唯一域名的跟踪标识符与被包括在DNS请求中的订户标识符的关联或映射。在一个示例中,消息412是具有有效载荷的单播消息,该有效载荷包括订户标识符和跟踪标识符。在另一示例中,有效载荷可以包括订户信息,例如来自数据库350的策略信息和偏好信息。虽然未示出,在一个示例中,代理服务336可以向域名服务器332发出单播消息来确认消息412的接收。
域名服务器332响应于与唯一域名相关联的请求410向客户端设备312发出包括域名信息的DNS响应414。域名服务器332响应于唯一域名返回代理服务336的域名信息,使得客户端设备返回到代理服务。在一个实施例中,域名服务器332可以等待直到它从代理服务接收到消息,该消息确认接收到跟踪标识符到订户标识符的映射。在另一个实施例中,域名服务器332可以无需等待代理服务的应答而发出DNS响应。在一个实施例中,响应414中返回的域名信息是基于被包括在唯一域名中的代理服务的IP地址的。例如,域名服务器可以使用来自DNS请求的标识来返回特定web服务器334的域名信息,重定向从该特定web服务器334发起,并且DNS域名服务器将跟踪标识符到订户标识符的映射发送至该特定web服务器334。
在接收到DNS应答414之后,客户端312向代理服务336发出资源请求416。资源请求包括由代理服务336针对唯一域名在响应408中提供的重定向URI“http://www.TID.IPA.fixed.eee/example.eee”。代理服务336识别由客户端312提交的唯一域名,并且从唯一域名提取目标域名“example.eee”。代理服务336向客户端设备312发出重定向响应418,该重定向418具有包括目标域名的URI。
客户端312向代理服务发出资源请求420,该资源请求420具有来自重定向418的URI。客户端312通常将从应答404中获得目标域名的域名信息,这样不会附加DNS请求。然而,客户端312可以向DNS域名服务器332发出另一个请求,并且再次接收具有映射至代理服务336的域名信息的响应。客户端312将目标域的认证cookie与请求420一起传递至代理服务336。回想一下,代理服务在响应408中将认证cookie传递至客户端设备312,设置目标域名的cookie。
在一个实施例中,代理服务336响应于请求420来认证订户。在一个实施例中,认证订户可以仅包括使用认证cookie来确定请求420的订户标识符。代理服务336提取置于cookie中的跟踪标识符、访问在消息412中从DNS域名服务器332接收到的信息、以及使用跟踪标识符到订户标识符的映射来确定与请求420相对应的订户标识符。
在一个实施例中,代理服务336可以认证订户,并且使用与订户标识符相关联的订户信息来确定如何响应请求420。代理服务336响应于请求420使用订户标识符来访问数据库350。代理服务336可以确定与订户标识符相匹配的任意用户记录354和/或网络记录352。代理服务336使用订户信息来确定如何响应对目标域名338的请求。例如,代理服务336可以确定哪些标志等等是与目标域名相关联的,并且将这些标志与订户信息中的任意偏好或策略相关联。代理服务可以使用该信息来确定与订户ID相关联的订户是否被允许访问特定订户网络310中的所请求的域。
如果代理服务确定订户被允许访问目标域名,则它可以代理客户端资源请求。代理服务发出对目标域名的资源请求422(如从客户端312所接收到的请求)。代理服务可以传递由目标域或客户端312设置的任意cookies(如可以在请求420中所接收到的cookies)。代理服务336回应请求422从代理服务336接收响应424。代理服务336针对请求420发出资源响应426,传递从目标域接收到的响应424。
如果代理服务器确定订户不被允许访问目标域名,则封锁页面或登录页面可以被提供至客户端设备。例如,可以发出具有至封锁页面或登录页面的重定向的响应426。在这种情况下,不会发出请求422。
在一个选项中,代理服务336可以响应于请求416来认证订户。代理服务336可以从唯一域名提取跟踪标识符。然后可以访问由DNS域名服务器332在消息412中提供的跟踪标识符到订户标识符的映射来确定订户标识符。代理服务336然后可以访问任意用户记录和/或网络记录来确定如何响应与订户相关联的请求。此外,注意的是,虽然图4的示例描述应用订户信息来生成对客户端的资源请求的响应,但是这不是必需的。例如,代理服务可以简单地确定订户标识符,并且开始代理来自客户端312的对目标域名的请求,而无需访问或分析诸如偏好和策略之类的订户信息。
箭头428表示客户端312包括目标域名的认证cookie的情景。如果客户端312包括认证cookie,则代理服务如图所示继续进行,从而认证订户并且代理请求等等。
图5是描述根据一个实施例的由递归DNS域名服务器处理域名请求的方法的流程图。在步骤502处,DNS域名服务器332从客户端设备312接收对域名信息的请求(例如,402)。在步骤504处,域名服务器确定所请求的域名是否是来自代理服务的动态生成的域名(DGDN)。域名服务器可以确定域名是否满足将会触发订户识别和认证过程的域名的预定格式。例如,在针对识别和认证重定向过程使用固定域名的实现方式中,域名服务器可以确定域名是否包括预定的固定域名部分。在另一示例中,域名服务器可以确定域名是否包括以下格式,例如,跟踪标识符、随后是代理IP地址、随后是目标域名。可以针对作为重定向过程的一部分的检测预定格式使用其他技术。
如果所请求的域名不是来自代理服务的动态生成的域名,则在步骤506处,代理服务确定与DNS请求相关联的订户标识符。在一个示例中,DNS域名服务器解析对源IP地址的DNS请求,该源IP地址被用作订户标识符。在另一示例中,例如通过使用EDNS扩展,令牌或订户ID本身可以与DNS请求一起被传递。在步骤508处,DNS域名服务器使用订户标识符从数据库350获得与订户标识符相对应的订户信息(例如,网络记录352和/或用户记录354)。在步骤510处,DNS域名服务器获得所请求的域名信息。步骤510可以包括确定请求中的域名以及在缓存340中检查与目标域名相对应的域名记录。如果缓存包括目标域名的域名记录并且该记录没有过期,则DNS域名服务器获得缓存的域名记录。如果缓存不包括目标域的域名记录,或如果域名记录过期,则DNS域名服务器尝试使用一个或多个权威DNS域名服务器或根DNS域名服务器来获取域名信息。
在获得域名信息之后,DNS域名服务器确定是否存在与所请求的域相关联的任意标志,并且如果存在,则在步骤512处,将标志与网络记录352中的偏好相关联。步骤512包括确定所请求的域的域名信息是否包括与网络记录中的偏好相对应的任意标识符。例如,步骤512可以包括确定域的年龄等级以及将该年龄等级与网络记录中的年龄等级偏好进行比较。
如果任意标志与网络记录中的偏好相关联,则在步骤514处,DNS域名服务器确定任意标志和相应的网络偏好是否指示到该域的流量应当被过滤。在一个实施例中,步骤514包括确定网络记录是否指示所请求的域针对来自订户的网络的请求应当被封锁。步骤514还可以包括确定记录是否指示所请求的域的流量应当被代理,但是仍然允许访问。
如果域名信息包括指示所请求的域应当被代理或被封锁的标志,则在步骤518处,DNS域名服务器发出DNS响应,该DNS响应具有web服务器334处的代理服务336的域名信息。如果该域没有被封锁或被代理,则在步骤516处,DNS域名服务器发出DNS响应,该DNS响应具有所请求的域的域名信息。
返回至步骤504,如果DNS域名服务器332确定所请求的域名是来自代理服务的动态生成的域名,则在步骤520处,确定与DNS请求相关联的订户标识符。在一个实施例中,步骤520和506可以作为单个步骤在步骤504之前被执行。
在步骤522处,域名服务器332从域名中确定跟踪标识符。在确定跟踪标识符之后,在步骤524处,域名服务器向代理服务生成消息。该消息包括来自域名的事务标识符到在步骤520处确定的订户标识符的映射。在步骤526处,域名服务器向客户端设备512生成DNS响应,传递映射到代理服务的域名信息。
图6是描述根据实施例的代理服务336的处理的流程图。在步骤652处,代理服务接收资源请求。步骤652中的请求通常是使用URL来指定域名和在目标域名处托管的网络资源的HTTP请求,但是用于请求网络资源的任意适当的协议也可以被使用。在步骤654处,代理服务检查所请求的域名,以确定它是否是由代理服务动态生成的域名。代理服务可以用与域名服务器之前所描述的相同的方式来分析域名的格式。
如果来自代理服务的动态生成的域名不是所请求的域名,则在步骤660处,代理服务确定请求是否包括目标域的认证cookie。步骤660包括检查由代理服务设置的认证cookie。如果请求不包括目标域的认证cookie,则在步骤678处,代理服务生成跟踪标识符。在步骤680处,代理服务动态地生成请求的唯一域名。
在一个实施例中,步骤680可以包括将跟踪标识符附加至来自请求的目标域名。例如,在一个示例中,跟踪标识符可以被附加至来自请求的URI的开头。在这种方式中,跟踪标识符被添加作为目标域名的子域。
在另一示例中,步骤680可以包括使用预定的固定域名。在一个示例中,跟踪标识符可以被附加至固定域名作为子域,如前面的示例一样。在一个示例中,为了跟踪目标域名,目标域名被附加作为固定域名的变元。
虽然未示出,但在一个实施例中,托管代理服务的web服务器的IP地址可以被添加作为形成唯一域名的一部分。例如,在各种实施例中,IP地址可以被添加作为固定域名或目标域名的子域。
在步骤682处,代理服务生成目标域名的认证cookie。认证cookie包括在步骤678处生成的跟踪标识符,并且是针对目标域设置的。在这种方式中,客户端设备将认证cookie与对目标域名的后续请求一起传递。因为域名服务器将对目标域名的请求映射至代理服务,所以在后续请求期间具有跟踪标识符的认证cookie将被传递至代理服务。
在步骤684处,代理服务向客户端312生成重定向响应。重定向响应(例如,302重定向)包括指定唯一域名的重定向URI。代理服务将重定向响应发送至客户端312,该重定向响应在客户端处将针对目标域设置认证cookie。回想一下,唯一域名包括跟踪标识符,并且在一些方式中,包括原始目标域名。因此,代理服务生成重定向响应,该重定向响应使得客户端312向域名服务器发出DNS请求,该DNS请求将包括跟踪标识符。因为客户端312将订户标识符与DNS请求一起传递,所以域名服务器能够如前面所描述的将跟踪标识符与订户标识符相关联,或将跟踪标识符映射至订户标识符。
返回至步骤660,如果请求包括目标域的认证cookie,则在步骤662处,代理服务尝试确定请求的订户标识符。代理服务访问来自认证cookie的跟踪标识符。使用该跟踪标识符,代理服务确定它是否已经从DNS域名服务器接收到了具有跟踪标识符到订户标识符的映射的消息。在一个示例中,代理服务可以存储已经接收到的跟踪标识符到订户标识符的映射的列表。在一个示例中,如果代理服务没有找到订户标识符,则它可以从步骤662返回至步骤678,从而尝试再次重定向以使得域名服务器发送映射。
在步骤664处,代理服务可选择地访问与订户标识符相对应的订户信息,例如用户记录和/或网络记录。在步骤666处,代理服务使用订户信息(如果获得的话)来确定如何响应资源请求。如与DNS域名服务器一样,代理服务可以确定目标域的域名记录是否包括任意标志。代理服务可以将订户偏好和策略与任意标志相关联,从而确定是否应当针对客户端设备从目标域获取所请求的资源。
如果代理服务确定订户或与订户相关联的用户不应当访问目标域名,则在步骤668处,代理服务生成对请求的响应。代理服务可以向客户端设备提供封锁页面或登录页面,例如,通知订户该所请求的域对于他们是不可访问的。封锁页面或登录页面一般地指响应于对目标域的请求由代理服务提供的任意资源或信息,其不是由目标域提供的实际资源。在一个示例中,响应可以包括到封锁页面或登录页面的重定向URI。
如果代理服务确定订户或用户可以访问目标域,则在步骤670处,代理服务发出对目标域名的请求。步骤670处的请求可以是由在步骤652处接收到的请求的URI指示的资源请求。代理服务通过发出它自己对所请求的域的请求来代理资源请求。在步骤672处,代理服务接收来自目标域的响应,该响应具有由请求URI指示的资源。在步骤674处,代理服务生成对资源请求的响应,该响应包括来自目标域的资源。在步骤676处,代理服务可以可选择地记录流量以用于审计等等。步骤676可以包括记录流量,并且将流量与客户端设备312的特定用户相关联或仅将流量与订户网络310相关联。
返回步骤654,当请求动态生成的域名时,代理服务进行至步骤656。代理服务从包括动态生成的域名的请求中提取目标域名。在步骤658处,代理服务生成包括所提取的目标域名的重定向响应。例如,代理服务可以生成HTTP 302重定向URI,该HTTP 302重定向URI包括所提取的目标域名。如上所述,步骤658处的重定向将最终使得在代理服务处接收到对目标域名的请求,并且该请求包括目标域名的认证cookie,该目标域名的认证cookie包括跟踪标识符。
在一个示例中,代理服务可以在步骤656和658处从动态生成的域名中提取跟踪标识符。代理服务可以确定相应的订户标识符,并且可选择地确定订户标识符的订户信息。在这种方式中,代理服务可以在不进行重定向的情况下直接代理对目标域名的请求,或可以确定订户是否应当被允许访问从而确定是否将他们重定向至目标域名。
图7是可以被用来实现图3的任意计算设备的计算***的高级框图。图7的计算***包括处理器80、存储器82、大容量存储设备84、***设备86、输出设备88、输入设备90、便携式存储装置92、和显示***94。为了简洁的目的,图7中所示出的组件被描述为通过单个总线96进行连接。然而,组件可以通过一个或多个数据传输装置进行连接。在一个替代实施例中,处理器80和存储器82可以通过本地微处理器总线进行连接,大容量存储设备84、***设备86、便携式存储装置92、和显示***94可以通过一个或多个输入/输出总线进行连接。
处理器80可以包括单个微处理器,或可以包括多个微处理器,该多个微处理器用于将计算机***配置为多处理器***。存储器82存储用于编程处理器80的指令和数据,从而实现本文所描述的技术。在一个实施例中,存储器82可以包括动态随机存取存储器、高速缓存存储器、闪存、其它非易失性存储器、和/或其他存储元件的存储体。大容量存储设备84(该大容量存储设备84可以用磁盘驱动器或光盘驱动器来实现)是用于存储数据和代码的非易失性存储设备。在一个实施例中,大容量存储设备84存储编程处理器80的***软件,从而实现本文所描述的技术。便携式存储装置92与便携式非易失性存储介质(例如,软盘、CD-RW、闪存卡/驱动器等)一起操作从而将数据和代码输入至图7的计算***,或从图7的计算***输出数据和代码。在一个实施例中,用于实现实施例的***软件被存储在这样的便携式介质上,并且通过便携式存储介质驱动器92被输入至计算机***。
***设备86可以包括将附加功能添加至计算机***的任意类型的计算机支持设备,例如输入/输出接口。例如,***设备86可以包括一个或多个网络接口,该一个或多个网络接口用于将计算机***连接至一个或多个网络、调制解调器、路由器、无线通信设备等等。输入设备90提供用户界面的一部分,并且可以包括键盘或定点设备(例如,鼠标、轨迹球等等)。为了显示文本信息和图形信息,图7的计算***将(可选择地)具有输出显示***94,该输出显示***94可以包括视频卡和监视器。输出设备88可以包括扬声器、打印机、网络接口等等。设备100还可以包括(一个或多个)通信连接112,该(一个或多个)通信连接112允许设备通过有线网络或无线网络与其他设备进行通信。通信连接的示例包括LAN连接网卡、无线网卡、调制解调器等等。(一个或多个)通信连接可以包括硬件和/或软件,该硬件和/或软件使用诸如DNS、TCP/IP、UDP/IP、和HTTP/HTTPS等等的协议来使能通信。
图7的计算***中所描绘的组件是适于使用本文所描述的技术的计算***中常见的组件,并且旨在表示本领域中公知的这样的计算机组件的广泛类别。许多不同的总线配置、网络平台、操作***被使用。本文所描述的技术不限于任何特定计算***。
本文所描述的技术(包括代理服务)可以使用硬件、软件、或硬件和软件的组合来实现。所使用的软件被存储在如上所述的一个或多个处理器可读存储设备(例如,存储器82、大容量存储设备84、或便携式存储装置92)上,从而编程一个或多个处理器以执行本文所描述的功能。处理器可读存储设备可以包括计算机可读介质,例如易失性介质和非易失性介质、可擦除介质和不可擦除介质。通过示例而不是限制的方式,计算机可读介质可以包括计算机可读存储介质和通信介质。计算机可读存储介质可以用存储信息(例如计算机可读指令、数据结构、程序模块、或其他数据)的任意方法或技术来实现。计算机可读存储介质的示例包括RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或可以被用来存储所需信息并且可以由计算机进行访问的任意其它介质。通信介质通常在调制的数据信号(例如,载波或其他传输机制)中实施计算机可读指令、数据结构、程序模块、或其他数据中,并且包括任意信息传递介质。术语“调制的数据信号”指具有以诸如在信号中编码信息的方式被设置或被改变的一个或多个自身特征的信号。通过示例而不是限制的方式,通信介质包括诸如有线网络或直连线之类的有线介质、和诸如RF和其他无线介质之类的无线介质。任意上述的组合也被包括在计算机可读介质的范围之内。
在替代实施例中,软件中的一些或全部可以由专用硬件替代,该专用硬件包括定制集成电路、门阵列、FPGA、PLD、和专用计算机。在一个实施例中,实现一个或多个实施例的(存储在存储设备上的)软件被用来编程一个或多个处理器。一个或多个处理器可以与一个或多个计算机可读介质/存储设备、***设备、和/或通信接口进行通信。在替代实施例中,软件中的一些或全部可以由专用硬件替代,该专用硬件包括定制集成电路、门阵列、FPGA、PLD、和专用计算机。
图8是描绘可以被存储在递归DNS集群处的本地缓存中的域名资源记录的结构的框图。每个资源记录包括名称字段902、TTL字段904、类字段906、类型字段908、RDLENGTH字段910、和RDATA字段912。如上所述,TTL字段设置用于在资源记录应当被视为无效和过期之前维持资源记录的最大量时间。根据一个实施例,RDATA字段被用于各种标志,该各种标志可以由递归域名服务器进行设置从而指示除了标准DNS指定信息的关于域的一些附加信息。标志可以是与域名相关联的任意指示符、标记、或符号,例如RDATA字段的一部分中的二进制指示符。标志可以具有各种功能,包括但不限于将域名标记为可疑的或不可信的,例如与网络钓鱼活动相关联的web站点。标志可以被用来指示各种类型或级别的信息。例如,社交网络或色情页面可以被标志,以便当客户端发出请求时,域名服务器可以提供替代信息或附加信息。
图9是描绘DNS消息响应或请求950的结构的框图。DNS消息包括报头字段952、问题部分954、答案部分956、权威部分958、和附加部分960。问题部分指示DNS请求中的域名服务器的问题(或请求)。DNS响应中的问题字段包括回答来自DNS请求的问题的一个或多个资源记录。权威部分包括指向权威的一个或多个资源记录。附加部分在结构上像资源记录,并且可以包括各种类型的信息,例如上面所描述的订户标识符。在一个示例中,附加部分包括OPT RR,该OPT RR包括零个或多个键/值对,该键/值对可以描述诸如设备id之类的订户id信息。
描述了一种计算机网络处理的方法,包括在代理服务处接收与目标域名相关联的第一请求,以及响应于第一请求,生成第一标识符和包括第一标识符的第一域名。该方法包括响应于第一请求,从代理服务提供包括第一域名的重定向响应,在代理服务处从DNS域名服务器接收包括第一标识符的订户标识符的消息,在代理服务处接收与目标域名相关联的第二请求,其中第二请求包括第一标识符。该方法包括响应于第二请求,基于来自DNS域名服务器的消息确定与第一标识符相对应的订户标识符,以及基于订户标识符生成对第二请求的响应。
描述了一种计算机网络处理的方法,包括在代理服务处从DNS域名服务器接收将第一跟踪标识符映射至第一订户标识符的消息,在代理服务处接收具有包括第一域名和目标域名的资源标识符的第一请求,以及提供对第一请求的重定向响应,其中重定向响应包括与目标域名相关联的资源标识符。该方法包括在代理服务处接收具有与附加的目标域名相关联的资源标识符的第二请求,其中第二请求包括具有第一请求标识符的目标域名的cookie。该方法包括基于来自DNS域名服务器的消息来确定来自cookie的第一订户标识符映射至第一跟踪标识符,以及基于订户标识符来生成对第二请求的响应。
描述了一种***,包括至少一个web服务器和至少一个DNS域名服务器,该至少一个web服务器包括至少一个处理器,该至少一个DNS域名服务器包括至少一个处理器。至少一个web服务器的至少一个处理器被编程为从客户端接收与目标域名相关联的第一请求;生成第一标识符和包括第一标识符的第一域名;响应于第一请求,提供包括第一域名的重定向响应;从DNS域名服务器接收与第一标识符相对应的订户标识符;接收与目标域名相关联的第二请求,第二请求包括第一标识符;响应于第二请求,基于来自DNS域名服务器的消息确定与第一标识符相对应的订户标识符;以及基于订户标识符生成对第二请求的响应。至少一个DNS域名服务器的至少一个处理器被编程为从至少一个web服务器接收作为重定向响应的结果的对第一域名的域名信息的DNS请求,该DNS请求包括订户标识符;从第一域名确定第一标识符;向至少一个web服务器生成包括第一标识符到订户标识符的映射的消息;以及生成对域名信息的请求的DNS响应,该DNS响应具有至少一个web服务器的域名信息。
上述详细描述出于说明性和描述性的目的被呈现。它不旨在是详尽的或将本发明限制为所公开的精确形式。基于上述教导,许多修改和变化是可能的。所描述的实施例被选择从而更好地解释本发明及其实际应用的原理,由此使得本领域的技术人员能够在各种实施例以及适于特定用途的各种变型中更好地利用本发明。注意,本发明的范围由所附权利要求定义。

Claims (15)

1.一种计算机网络处理的方法,包括:
在代理服务处接收与目标域名相关联的第一资源请求;
响应于所述第一资源请求,生成跟踪标识符和包括所述跟踪标识符的唯一域名;
响应于所述第一资源请求,从所述代理服务提供包括所述唯一域名的重定向响应;
在所述代理服务处从DNS域名服务器接收包括针对所述跟踪标识符的订户标识符的消息;
在所述代理服务处接收与所述目标域名相关联的第二资源请求,所述第二资源请求包括所述跟踪标识符;
响应于所述第二资源请求,基于来自所述DNS域名服务器的所述消息确定与所述跟踪标识符相对应的所述订户标识符;以及
基于所述订户标识符生成对所述第二资源请求的响应。
2.如权利要求1所述的方法,还包括在所述DNS域名服务器处:
接收作为所述重定向响应的结果的对所述唯一域名的域名信息的请求;
从所述唯一域名提取所述跟踪标识符;
与所述对域名信息的请求一起接收所述订户标识符;
向所述代理服务生成包括所述订户标识符到所述跟踪标识符的映射的所述消息;以及
生成对所述唯一域名的域名信息的所述请求的响应,所述响应包括所述代理服务的域名信息。
3.如权利要求2所述的方法,还包括在所述代理服务接收所述第一资源请求之前在所述DNS域名服务器处:
接收对所述目标域名的域名信息的请求;
确定所述订户标识符是与对所述目标域名的域名信息的所述请求相关联的;
响应于对所述目标域名的域名信息的所述请求和所述订户标识符,生成包括所述代理服务的域名信息的响应。
4.如权利要求1所述的方法,其中,所述第二资源请求包括资源标识符,所述资源标识符包括所述目标域名,所述方法还包括:
在接收所述第二资源请求之前,接收包括资源标识符的第三资源请求,所述资源标识符包括所述唯一域名;
响应于所述第三资源请求,提供包括资源标识符的重定向响应,所述资源标识符包括所述目标域名。
5.如权利要求4所述的方法,还包括:
响应于所述第一资源请求,在所述代理服务处生成所述目标域名的cookie,所述cookie包括所述跟踪标识符;
与包括所述唯一域名的所述重定向响应一起提供所述cookie;
与所述第二资源请求一起接收所述目标域名的所述cookie;以及
确定所述订户标识符包括从所述目标域名的所述cookie访问所述跟踪标识符。
6.如权利要求5所述的方法,其中:
所述代理服务包括与多个IP地址相关联的多个服务器;
所述第一资源请求是在具有第一IP地址的第一服务器处被接收的;以及
生成所述唯一域名包括嵌入所述第一IP地址作为所述唯一域名的一部分。
7.如权利要求4所述的方法,其中:
生成所述唯一域名包括将所述目标域名嵌入所述唯一域名,使得所述唯一域名是所述目标域名的子域名;
所述方法还包括响应于所述第三资源请求在所述代理服务处从所述唯一域名的所述资源标识符中提取所述目标域名。
8.如权利要求4所述的方法,其中:
生成所述唯一域名包括生成所述唯一域名的所述资源标识符以及附加所述目标域名作为所述唯一域名的所述资源标识符的变元;
所述方法还包括响应于所述第三资源请求在所述代理服务处从所述唯一域名的所述资源标识符的所述变元中提取所述目标域名。
9.如权利要求1所述的方法,其中:
所述第二资源请求包括所述唯一域名的资源标识符;
响应于所述第二资源请求,确定所述订户标识符包括从所述唯一域名提取所述跟踪标识符。
10.一种***,包括:
至少一个web服务器,所述至少一个web服务器包括至少一个处理器,所述至少一个处理器被编程为:
从客户端接收与目标域名相关联的第一资源请求;
生成跟踪标识符和包括所述跟踪标识符的唯一域名;
响应于所述第一资源请求,提供包括所述唯一域名的重定向响应;
从DNS域名服务器接收与所述跟踪标识符相对应的订户标识符;
接收与所述目标域名相关联的第二资源请求,所述第二资源请求包括所述跟踪标识符;
响应于所述第二资源请求,基于来自所述DNS域名服务器的消息确定与所述跟踪标识符相对应的所述订户标识符;以及
基于所述订户标识符生成对所述第二资源请求的响应;
至少一个DNS域名服务器,所述至少一个DNS域名服务器包括至少一个处理器,所述至少一个处理器被编程为:
从所述至少一个web服务器接收作为所述重定向响应的结果的对所述唯一域名的域名信息的DNS请求,所述DNS请求包括所述订户标识符;
从所述唯一域名确定所述跟踪标识符;
向所述至少一个web服务器生成包括所述跟踪标识符到所述订户标识符的映射的消息;
生成对域名信息的所述请求的DNS响应,所述DNS响应具有所述至少一个web服务器的域名信息。
11.如权利要求10所述的***,其中:
所述第二资源请求包括与所述目标域名相关联的资源标识符;
所述至少一个web服务器的所述至少一个处理器被编程为:
在接收所述第二资源请求之前,接收包括与所述唯一域名相关联的资源标识符的第三资源请求;
响应于所述第三资源请求,提供包括所述目标域名的所述资源标识符的重定向响应。
12.如权利要求11所述的***,其中,所述至少一个web服务器的所述至少一个处理器被编程为:
响应于所述第一资源请求,生成所述目标域名的cookie,所述cookie包括所述跟踪标识符;
将所述cookie与所述包括所述唯一域名的重定向响应一起提供。
13.如权利要求12所述的***,其中:
所述至少一个web服务器的所述至少一个处理器被编程为与所述第二资源请求一起接收所述目标域名的所述cookie;
其中所述至少一个web服务器的所述至少一个处理器通过从所述cookie访问所述跟踪标识符来确定与所述跟踪标识符相对应的所述订户标识符。
14.如权利要求13所述的***,其中,所述至少一个web服务器的所述至少一个处理器:
通过将所述目标域名嵌入所述唯一域名来生成所述唯一域名,使得所述唯一域名是所述目标域名的子域名;以及
响应于所述第三资源请求,从所述唯一域名的所述资源标识符中提取所述目标域名。
15.如权利要求13所述的***,其中,所述至少一个web服务器的所述至少一个处理器:
生成所述唯一域名的所述资源标识符以及附加所述目标域名作为所述唯一域名的所述资源标识符的变元;
从所述唯一域名的所述资源标识符的所述变元中提取所述目标域名。
CN201580011716.4A 2014-03-04 2015-02-27 通过dns处理的透明代理认证 Active CN106068639B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/196,973 US10277554B2 (en) 2014-03-04 2014-03-04 Transparent proxy authentication via DNS processing
US14/196,973 2014-03-04
PCT/US2015/018040 WO2015134323A1 (en) 2014-03-04 2015-02-27 Transparent proxy authentication via dns processing

Publications (2)

Publication Number Publication Date
CN106068639A CN106068639A (zh) 2016-11-02
CN106068639B true CN106068639B (zh) 2019-07-05

Family

ID=52672342

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580011716.4A Active CN106068639B (zh) 2014-03-04 2015-02-27 通过dns处理的透明代理认证

Country Status (4)

Country Link
US (2) US10277554B2 (zh)
EP (1) EP3114822A1 (zh)
CN (1) CN106068639B (zh)
WO (1) WO2015134323A1 (zh)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9973590B2 (en) * 2011-11-26 2018-05-15 Bing Wu User identity differentiated DNS resolution
US9608886B2 (en) 2012-08-26 2017-03-28 At&T Intellectual Property I, L.P. Methods, systems, and products for monitoring domain name servers
US10454768B2 (en) 2013-11-15 2019-10-22 F5 Networks, Inc. Extending policy rulesets with scripting
US10277554B2 (en) 2014-03-04 2019-04-30 Cisco Technology, Inc. Transparent proxy authentication via DNS processing
GB2525434A (en) * 2014-04-25 2015-10-28 Ibm Method and device for duplicating a data center
CN105338126B (zh) * 2014-07-17 2018-10-23 阿里巴巴集团控股有限公司 远程查询信息的方法及服务器
US9807050B2 (en) * 2015-04-15 2017-10-31 Cisco Technology, Inc. Protocol addressing for client and destination identification across computer networks
US20160344838A1 (en) * 2015-05-21 2016-11-24 Fastly, Inc. Caching of tracking elements in network content
US10560422B2 (en) * 2015-06-28 2020-02-11 Verisign, Inc. Enhanced inter-network monitoring and adaptive management of DNS traffic
WO2017058519A1 (en) * 2015-09-28 2017-04-06 Arris Enterprises Llc Domain name system response spoofing at customer premise equipment device
US10250452B2 (en) 2015-12-14 2019-04-02 Microsoft Technology Licensing, Llc Packaging tool for first and third party component deployment
US10356038B2 (en) * 2015-12-14 2019-07-16 Microsoft Technology Licensing, Llc Shared multi-tenant domain name system (DNS) server for virtual networks
US10666517B2 (en) 2015-12-15 2020-05-26 Microsoft Technology Licensing, Llc End-to-end automated servicing model for cloud computing platforms
GB2546800B (en) 2016-01-29 2020-08-05 Tectonic Interactive Ltd System and method for managing communication sessions between clients and a server
US20170228795A1 (en) * 2016-02-05 2017-08-10 The Nielsen Company (Us), Llc Methods and apparatus to associate panelist data with census data
US10326700B1 (en) * 2016-03-29 2019-06-18 F5 Networks, Inc. Hash based per subscriber DNS based traffic classification
US10305934B2 (en) * 2016-05-26 2019-05-28 Cisco Technology, Inc. Identity based domain name system (DNS) caching with security as a service (SecaaS)
US10554614B2 (en) 2016-06-23 2020-02-04 Cisco Technology, Inc. Utilizing service tagging for encrypted flow classification
US10560480B1 (en) * 2016-07-08 2020-02-11 Juniper Networks, Inc. Rule enforcement based on network address requests
CN106302661B (zh) * 2016-08-02 2019-08-13 网宿科技股份有限公司 P2p数据加速方法、装置和***
CN106790082B (zh) * 2016-12-22 2019-10-01 北京启明星辰信息安全技术有限公司 一种云应用访问控制方法及***
US10645062B2 (en) * 2016-12-30 2020-05-05 Hughes Network Systems Llc System and method for improving proxy server performance using local domain name system (DNS) cache and connectivity monitoring
US10033692B1 (en) * 2017-10-05 2018-07-24 Cloudflare, Inc. Managing domain name system (DNS) queries using a proxy DNS server
US11196705B2 (en) * 2018-01-05 2021-12-07 Nextroll, Inc. Identification services for internet-enabled devices
CN111788596B (zh) * 2018-03-01 2024-06-18 柯达阿拉里斯股份有限公司 通过局域网的供应商自助服务终端跟踪和路由***及使用方法
US10375016B1 (en) * 2018-04-02 2019-08-06 Cloudflare, Inc. Managing domain name system (DNS) record cache across multiple DNS servers using multicast communication
CN108777709A (zh) * 2018-05-31 2018-11-09 康键信息技术(深圳)有限公司 网站访问方法、装置、计算机设备和存储介质
CN110874433A (zh) * 2018-08-30 2020-03-10 北京京东尚科信息技术有限公司 信息处理方法及其***、计算机***及计算机可读介质
US11706188B2 (en) * 2018-08-31 2023-07-18 Comcast Cable Communications, Llc Localization for domain name resolution
CN111030966B (zh) * 2018-10-10 2022-05-27 阿里巴巴集团控股有限公司 数据处理方法、装置和机器可读介质
CN109309728A (zh) * 2018-10-26 2019-02-05 金蝶软件(中国)有限公司 一种数据处理方法以及相关装置
CN109561078B (zh) * 2018-11-09 2022-04-12 深圳万物云联科技有限公司 一种外链url资源调用方法及装置
FR3091097A1 (fr) * 2018-12-19 2020-06-26 Orange Procédé d’acquisition d’une chaîne de délégation relative à la résolution d’un identifiant de nom de domaine dans un réseau de communication
US11659019B2 (en) * 2019-12-01 2023-05-23 Microsoft Technology Licensing, Llc Resource mapping during universal resource locator changes in distributed computing systems
US11489875B2 (en) 2020-01-28 2022-11-01 Cisco Technology, Inc. Device context in network security policies
CN111769949A (zh) * 2020-06-23 2020-10-13 上海擎感智能科技有限公司 双向认证的管理/执行方法/***、介质、管理/代理端
US11444931B1 (en) * 2020-06-24 2022-09-13 F5, Inc. Managing name server data
CN112671779B (zh) * 2020-12-25 2022-10-18 赛尔网络有限公司 基于DoH服务器的域名查询方法、装置、设备及介质
US20220365921A1 (en) * 2021-04-30 2022-11-17 Intuit Inc. Verifiable Cacheable Calclulations
CN114143369A (zh) * 2021-12-09 2022-03-04 华人运通(上海)云计算科技有限公司 一种云平台的服务监控***
CN114268605B (zh) * 2021-12-16 2023-11-24 云盾智慧安全科技有限公司 一种智能dns实现方法、装置及计算机存储介质
JP2024043815A (ja) * 2022-09-20 2024-04-02 京セラドキュメントソリューションズ株式会社 デバイス管理システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7228359B1 (en) * 2002-02-12 2007-06-05 Cisco Technology, Inc. Methods and apparatus for providing domain name service based on a client identifier

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167449A (en) * 1997-11-19 2000-12-26 Apple Computer, Inc. System and method for identifying and locating services on multiple heterogeneous networks using a query by type
US6182148B1 (en) * 1999-03-18 2001-01-30 Walid, Inc. Method and system for internationalizing domain names
US7188138B1 (en) * 1999-03-22 2007-03-06 Eric Schneider Method, product, and apparatus for resource identifier registration and aftermarket services
JP4469120B2 (ja) 1999-12-03 2010-05-26 エイ・ティ・アンド・ティ・コーポレーション ドメイン・ネーム内にユーザ情報をエンコードするためのシステムおよび方法
US7127524B1 (en) * 2000-12-29 2006-10-24 Vernier Networks, Inc. System and method for providing access to a network with selective network address translation
US6907525B2 (en) * 2001-08-14 2005-06-14 Riverhead Networks Inc. Protecting against spoofed DNS messages
US7313815B2 (en) * 2001-08-30 2007-12-25 Cisco Technology, Inc. Protecting against spoofed DNS messages
US7412515B2 (en) * 2002-09-26 2008-08-12 Lockheed Martin Corporation Method and apparatus for dynamic assignment of network protocol addresses
US20050105513A1 (en) * 2002-10-27 2005-05-19 Alan Sullivan Systems and methods for direction of communication traffic
US8561161B2 (en) * 2002-12-31 2013-10-15 International Business Machines Corporation Method and system for authentication in a heterogeneous federated environment
US20050097179A1 (en) * 2003-09-16 2005-05-05 Orme Gregory M. Spam prevention
KR100823128B1 (ko) * 2004-06-30 2008-04-21 삼성전자주식회사 통합 서비스 제공 시스템의 정보 관리 방법 및 장치
US7698375B2 (en) * 2004-07-21 2010-04-13 International Business Machines Corporation Method and system for pluggability of federation protocol runtimes for federated user lifecycle management
TWI241808B (en) * 2004-07-28 2005-10-11 Realtek Semiconductor Corp Network address-port translation apparatus and method for IP fragment packets
US7571460B2 (en) * 2004-08-06 2009-08-04 Time Warner Cable, Inc. System and method for affecting the behavior of a network device in a cable network
US7257631B2 (en) * 2005-01-31 2007-08-14 Register.Com, Inc. Domain manager and method of use
US7386633B2 (en) * 2005-04-21 2008-06-10 International Business Machines Corporation Priority based differentiated DNS processing
US7603482B2 (en) * 2005-04-22 2009-10-13 Microsoft Corporation DNS compatible PNRP peer name encoding
WO2007097667A1 (en) * 2006-02-27 2007-08-30 Telefonaktiebolaget Lm Ericsson Lawful access; stored data handover enhanced architecture
US8949312B2 (en) * 2006-05-25 2015-02-03 Red Hat, Inc. Updating clients from a server
US8713188B2 (en) * 2007-12-13 2014-04-29 Opendns, Inc. Per-request control of DNS behavior
US8606926B2 (en) * 2006-06-14 2013-12-10 Opendns, Inc. Recursive DNS nameserver
US8526434B2 (en) * 2006-08-09 2013-09-03 Andras Valko Routing manager hierarchy
EP2105003B1 (en) * 2006-12-28 2018-02-21 Telecom Italia S.p.A. Method and apparatus to control application messages between a client and a server having a private network address
EP2001202A1 (en) * 2007-06-06 2008-12-10 Axalto SA Method of managing communication between an electronic token and a remote web server
US7895319B2 (en) * 2007-10-31 2011-02-22 Microsoft Corporation Variable DNS responses based on client identity
US8959188B2 (en) * 2008-10-01 2015-02-17 Nokia Corporation Method, system, and apparatus for configuring network accounts on devices for use therewith
US8676989B2 (en) * 2009-04-23 2014-03-18 Opendns, Inc. Robust domain name resolution
US9407959B2 (en) * 2009-09-21 2016-08-02 Adobe Systems Incorporated Monitoring behavior with respect to a software program
US8751633B2 (en) * 2010-04-01 2014-06-10 Cloudflare, Inc. Recording internet visitor threat information through an internet-based proxy service
US20110289434A1 (en) * 2010-05-20 2011-11-24 Barracuda Networks, Inc. Certified URL checking, caching, and categorization service
US8677451B1 (en) * 2010-06-22 2014-03-18 Cellco Partnership Enabling seamless access to a domain of an enterprise
US8694642B2 (en) * 2010-10-21 2014-04-08 Opendns, Inc. Selective proxying in domain name systems
EP2592813B1 (en) * 2011-11-08 2020-02-12 BlackBerry Limited Method for discovering a dynamic address of a communication device
US10003565B2 (en) * 2012-03-22 2018-06-19 Time Warner Cable Enterprises Llc Use of DNS information as trigger for dynamic IPV4 address allocation
US8966122B2 (en) * 2012-04-16 2015-02-24 Opendns, Inc. Cross-protocol communication in domain name systems
US8874506B2 (en) * 2012-09-10 2014-10-28 Oracle International Corporation Preventing database replication conflicts in a distributed environment
US9619644B2 (en) * 2013-07-03 2017-04-11 Facebook, Inc. Third-party captive portal
US10277554B2 (en) 2014-03-04 2019-04-30 Cisco Technology, Inc. Transparent proxy authentication via DNS processing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7228359B1 (en) * 2002-02-12 2007-06-05 Cisco Technology, Inc. Methods and apparatus for providing domain name service based on a client identifier

Also Published As

Publication number Publication date
WO2015134323A1 (en) 2015-09-11
EP3114822A1 (en) 2017-01-11
US10666608B2 (en) 2020-05-26
US20190199678A1 (en) 2019-06-27
US10277554B2 (en) 2019-04-30
US20150256508A1 (en) 2015-09-10
CN106068639A (zh) 2016-11-02

Similar Documents

Publication Publication Date Title
CN106068639B (zh) 通过dns处理的透明代理认证
US10425379B2 (en) Establishing unique sessions for DNS subscribers
US11818142B2 (en) Distributed data authentication and validation using blockchain
US8196189B2 (en) Simple, secure login with multiple authentication providers
US10142291B2 (en) System for providing DNS-based policies for devices
US8533581B2 (en) Optimizing security seals on web pages
CN107251528B (zh) 用于提供源自服务提供商网络内的数据的方法和装置
US20240048579A1 (en) Identification of malicious domain campaigns using unsupervised clustering
US9225731B2 (en) System for detecting the presence of rogue domain name service providers through passive monitoring
US20130007870A1 (en) Systems for bi-directional network traffic malware detection and removal
US20130007882A1 (en) Methods of detecting and removing bidirectional network traffic malware
WO2007030764A2 (en) Identifying a network address source for authentication
CN108616544B (zh) 用于检测对域名***记录***的更新的方法、***和介质
CN108632221B (zh) 定位内网中的受控主机的方法、设备及***
US20170279762A1 (en) Systems and methods for preserving privacy of a registrant in a domain name system ("dns")
EP3332533B1 (en) Parallel detection of updates to a domain name system record system using a common filter
CN109995885B (zh) 域名空间结构呈现方法、装置、设备及介质
CN115442329B (zh) 域名信息查询方法、***、装置、设备及存储介质
WO2016074150A1 (en) Streamlining location-dependent dns configuration
CN116888941A (zh) 用于数据发现的域名***
CN115665086A (zh) 基于网管设备的域名解析方法及其装置、电子设备
WO2006081328A2 (en) Online identity tracking

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant