CN114285823A - 一种基于dns系统的通用网络标识解析方法及系统 - Google Patents
一种基于dns系统的通用网络标识解析方法及系统 Download PDFInfo
- Publication number
- CN114285823A CN114285823A CN202111654983.7A CN202111654983A CN114285823A CN 114285823 A CN114285823 A CN 114285823A CN 202111654983 A CN202111654983 A CN 202111654983A CN 114285823 A CN114285823 A CN 114285823A
- Authority
- CN
- China
- Prior art keywords
- identification
- url
- dns
- name
- node
- 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.)
- Granted
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 98
- 238000000034 method Methods 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 claims description 9
- 230000008520 organization Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000012360 testing method Methods 0.000 description 7
- 239000003292 glue Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Abstract
一种基于DNS系统的通用网络标识解析方法及系统,涉及网络标识解析技术领域,用以解决现有的多标识体系由于不能实现体系间标识数据交换而导致协同工作困难的问题。本发明的技术要点包括:获取用户输入的带有网络标识的解析请求,其中,所述解析请求为符合预定义格式的解析请求,其包括两种类型:HTTP模型和标识协议模型;对所述解析请求进行转换,获得可解析URL;基于预先部署的DNS权威服务器,根据可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据可解析URL进行标识解析,获取网络标识对应的数据。本发明方便了各种标识体系的协同解析功能,降低了部署成本。
Description
技术领域
本发明涉及网络标识解析技术领域,具体涉及一种基于DNS系统的通用网络标识解析方法及系统。
背景技术
随着网络技术快速发展与网络应用需求日益增长,标识服务呈现出多元化、专业化特点。在主流标识体系DNS之外,Handle、OID、Ecode等新型标识体系被提出并得到应用,网络空间呈现出多种标识体系共存的局面。
DNS域名系统将域名和IP地址关联起来,其一大重要功能是根据域名解析对应的IP地址。其中,域名是一串以点(.)分隔的字符串,分隔而成的小段称为标签(label),标签是域名中的基本单位。域名的命名空间形成一个树形结构,每个标签代表一个节点,并按照从叶(离根远的节点)到根(离根近的节点)排列,根节点标签为空字符串,一般省略。如果一个域名A是另一个域名B的后缀,那么域名A是域名B的子域名。DNS权威服务器按照区(zone)来划分授权,一个区是域名树上一段连续的树,一个DNS权威服务器可能负责解析一个或多个DNS区。在解析过程中从根开始层级化地进行解析,从根开始依次找到各级权威服务器,并在拥有所查询域名的权威服务器上查询该域名的信息,如IP地址。
多数标识体系只能独立工作而无法实现体系间的标识数据交换,导致形成了各标识体系互相分离的现状,为多标识体系协同工作带来障碍。不同标识体系的解析规则各异,提高了标识体系的推广和部署的成本。
发明内容
鉴于以上问题,本发明提出一种基于DNS系统的通用网络标识解析方法及系统,用以解决现有的多标识体系由于不能实现体系间标识数据交换而导致协同工作困难的问题。
根据本发明的一方面,提供一种基于DNS系统的通用网络标识解析方法,该方法包括以下步骤:
步骤一、获取用户输入的带有网络标识的解析请求;
步骤二、对所述解析请求进行转换,获得可解析URL;
步骤三、基于预先部署的DNS权威服务器,根据所述可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;
步骤四、基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据所述可解析URL进行标识解析,获取网络标识对应的数据。
进一步地,步骤一中带有网络标识的解析请求为符合预定义格式的解析请求,所述预定义格式的解析请求包括两种类型:HTTP模型和标识协议模型;其中,HTTP模型的解析请求格式为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、路径,HTTP模型的节点名和根域名包含在HTTP URL的主机字段中、路径包含在HTTP URL的路径字段中,所述HTTP URL包括HTTP协议和HTTPS协议所使用的URL;标识协议模型的解析请求格式为满足URL格式的字符串,其内容包括标识体系名、节点名、路径,所述标识体系名包含在URL协议名中,标识协议模型的节点名和路径包含在URL的内容部分中。
进一步地,步骤二的具体步骤包括:
步骤二一、根据所述解析请求所携带的网络标识确定标识体系,从而获得所述标识体系的根域名、端口、路径前缀、标识体系名;
步骤二二、将所述解析请求所携带的网络标识中表示标识格式、体系名称、体系各字段的分隔符去除;
步骤二三、将所述解析请求所携带的网络标识中表示层级组织的原生节点名与剩余部分分离,将原生节点名按照从底层节点到顶层节点的顺序排列,并使用“.”分隔,从而获得节点名,而剩余部分则为路径,由此获得可解析URL;所述可解析URL为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、端口、路径前缀、原生节点名和路径。
进一步地,步骤二三中若获得的节点名不符合DNS域名的规范或各部分原本就含有“.”,则对节点名进行编码使其转化为合法的DNS域名。
进一步地,步骤二三中若获得的路径有层次划分的结构,则使用“/”以分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的“/”替换为转义字符以消除歧义;若获得的路径中有URL路径中不允许出现的字符,则对路径进行编码以使其转化为合法的URL路径。
进一步地,步骤三中所述DNS权威服务器按照下述方式预先部署:每一个DNS权威服务器对应一个或多个DNS区,每个节点名对应一个域名,该域名从属的DNS区就是该节点名对应的DNS区;每个DNS区提供对应的区文件;所述区文件中包含权威起始记录、该DNS区内所有节点名对应标识权威服务器的IP地址、所有子区的DNS权威服务器域名和IP地址。
进一步地,步骤四中所述标识权威服务器按照下述方式预先部署:每一个标识权威服务器对应一个或多个节点名,且对于每一个对应的节点名下每一个符合可解析URL的标识,存储该标识对应的数据。
根据本发明的另一方面,提供一种基于DNS系统的通用网络标识解析系统,该系统包括:
解析请求获取模块,其配置成获取用户输入的带有网络标识的解析请求;其中,带有网络标识的解析请求为符合预定义格式的解析请求,所述预定义格式的解析请求包括两种类型:HTTP模型和标识协议模型;其中,HTTP模型的解析请求格式为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、路径,HTTP模型的节点名和根域名包含在HTTPURL的主机字段中、路径包含在HTTP URL的路径字段中,所述HTTP URL包括HTTP协议和HTTPS协议所使用的URL;标识协议模型的解析请求格式为满足URL格式的字符串,其内容包括标识体系名、节点名、路径,所述标识体系名包含在URL协议名中,标识协议模型的节点名和路径包含在URL的内容部分中;
转换模块,其配置成对所述解析请求进行转换,获得可解析URL;其中,所述可解析URL为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、端口、路径前缀、原生节点名和路径;
DNS解析模块,其配置成基于预先部署的DNS权威服务器,根据所述可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;
标识解析模块,其配置成基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据所述可解析URL进行标识解析,获取网络标识对应的数据。
进一步地,所述转换模块中对所述解析请求进行转换,获得可解析URL的具体过程包括:
步骤二一、根据所述解析请求所携带的网络标识确定标识体系,从而获得所述标识体系的根域名、端口、路径前缀、标识体系名;
步骤二二、将所述解析请求所携带的网络标识中表示标识格式、体系名称、体系各字段的分隔符去除;
步骤二三、将所述解析请求所携带的网络标识中表示层级组织的原生节点名与剩余部分分离,将原生节点名按照从底层节点到顶层节点的顺序排列,并使用“.”分隔,从而获得节点名,而剩余部分则为路径;若获得的节点名不符合DNS域名的规范或各部分原本就含有“.”,则对节点名进行编码使其转化为合法的DNS域名;若获得的路径有层次划分的结构,则使用“/”以分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的“/”替换为转义字符以消除歧义;若获得的路径中有URL路径中不允许出现的字符,则对路径进行编码以使其转化为合法的URL路径;由此获得可解析URL。
进一步地,所述DNS解析模块中所述DNS权威服务器按照下述方式预先部署:每一个DNS权威服务器对应一个或多个DNS区,每个节点名对应一个域名,该域名从属的DNS区就是该节点名对应的DNS区,每个DNS区提供对应的区文件;所述区文件中包含权威起始记录、该DNS区内所有节点名对应标识权威服务器的IP地址、所有子区的DNS权威服务器域名和IP地址。
进一步地,所述标识解析模块中所述标识权威服务器按照下述方式预先部署:每一个标识权威服务器对应一个或多个节点名,且对于每一个对应的节点名下每一个符合可解析URL的标识,存储该标识对应的数据。
本发明的有益技术效果是:
本发明使用基于DNS的递归解析功能,提供通用的标识体系解析方法,方便各种标识体系的解析功能,从而降低部署成本,能够促进各种标识体系的发展。
附图说明
本发明可以通过参考下文中结合附图所给出的描述而得到更好的理解,所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步举例说明本发明的优选实施例和解释本发明的原理和优点。
图1是本发明实施例一种基于DNS系统的通用网络标识解析方法的流程示意图;
图2是本发明实施例中客户端配置示例图;
图3是本发明实施例一种基于DNS系统的通用网络标识解析系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,在下文中将结合附图对本发明的示范性实施方式或实施例进行描述。显然,所描述的实施方式或实施例仅仅是本发明一部分的实施方式或实施例,而不是全部的。基于本发明中的实施方式或实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式或实施例,都应当属于本发明保护的范围。
本发明实施例提供一种基于DNS系统的通用网络标识解析方法,如图1所示,该方法包括以下步骤:
步骤一、获取用户输入的带有网络标识的解析请求;
步骤二、对解析请求进行转换,获得可解析URL;
步骤三、基于预先部署的DNS权威服务器,根据可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;
步骤四、基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据可解析URL进行标识解析,获取网络标识对应的数据。
本实施例中,可选地,步骤一中带有网络标识的解析请求为符合预定义格式的解析请求,预定义格式的解析请求包括两种类型:HTTP模型和标识协议模型;其中,HTTP模型的解析请求格式为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、路径,HTTP模型的节点名和根域名包含在HTTP URL的主机字段中、路径包含在HTTP URL的路径字段中,HTTP URL包括HTTP协议和HTTPS协议所使用的URL;标识协议模型的解析请求格式为满足URL格式的字符串,其内容包括标识体系名、节点名、路径,标识体系名包含在URL协议名中,标识协议模型的节点名和路径包含在URL的内容部分中。
本实施例中,可选地,步骤二的具体步骤包括:
步骤二一、根据解析请求所携带的网络标识确定标识体系,从而获得标识体系的根域名、端口、路径前缀、标识体系名;
步骤二二、将解析请求所携带的网络标识中表示标识格式、体系名称、体系各字段的分隔符去除;
步骤二三、将解析请求所携带的网络标识中表示层级组织的原生节点名与剩余部分分离,将原生节点名按照从底层节点到顶层节点的顺序排列,并使用“.”分隔,从而获得节点名,而剩余部分则为路径,由此获得可解析URL;可解析URL为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、端口、路径前缀、原生节点名和路径。
本实施例中,可选地,步骤二三中若获得的节点名不符合DNS域名的规范或各部分原本就含有“.”,则对节点名进行编码使其转化为合法的DNS域名。
本实施例中,可选地,步骤二三中若获得的路径有层次划分的结构,则使用“/”以分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的“/”替换为转义字符以消除歧义;若获得的路径中有URL路径中不允许出现的字符,则对路径进行编码以使其转化为合法的URL路径。
本实施例中,可选地,步骤三中DNS权威服务器按照下述方式预先部署:每一个DNS权威服务器对应一个或多个DNS区,每个节点名对应一个域名,该域名从属的DNS区就是该节点名对应的DNS区;每个DNS区提供对应的区文件;区文件中包含权威起始记录、该DNS区内所有节点名对应标识权威服务器的IP地址、所有子区的DNS权威服务器域名和IP地址。
本实施例中,可选地,步骤四中标识权威服务器按照下述方式预先部署:每一个标识权威服务器对应一个或多个节点名,且对于每一个对应的节点名下每一个符合可解析URL的标识,存储该标识对应的数据。
本发明另一实施例提供一种基于DNS系统的通用网络标识解析方法,该方法解析网络标识的流程分为三个步骤。首先,客户端将用户输入的解析请求翻译为可解析URL,为了完成这个步骤,需要定义解析请求名称和可解析URL的格式,并提供对应的转换流程;接下来,客户端根据该URL中的域名部分进行DNS解析,获取域名对应的IP地址,为了完成这个步骤,需要配置对应的DNS数据条目;最后,客户端访问该URL以获取标识数据,为了完成这个步骤,需要部署一系列标识数据解析服务器。
为了解析不同体系的网络标识,需要从目标标识体系的定义中获取一些信息。本发明对目标标识体系有一些要求:目标标识体系的标识为字符串,解析该标识的结果为字符串或二进制数据;在不发生数据更新的时候,同一个标识字符串对应同一个解析结果,该解析结果在数据更新时提供给服务器;目标标识体系的标识以层次化的结构组织,标识字符串中有各个层级节点的名称。
实现本发明目的的方案如下:
首先,定义解析请求名称和可解析URL的格式,并提供对应的转换流程。
解析请求名称有两种模型:HTTP模型和标识协议模型。
HTTP模型的解析请求是如下格式的字符串:http://<节点名>.<根域名>/<路径>;
标识协议模型的解析请求是如下格式的字符串:<标识体系名>://<节点名>/<路径>;
可解析URL的格式为:http://<节点名>.<根域名>:<端口>/<路径前缀>/<原生节点名>/<路径>;
HTTP模型的解析请求字符串和可解析URL字符串都需要满足HTTP URL的格式规范。视具体情形,也可以使用类似的其他格式,原生节点名字段可以选择性保留或删除,只要节点名包含在HTTP URL的主机字段中、路径包含在HTTP URL的路径字段中,易于识别即可。
下面介绍如何将标识体系原本的标识名称转换为解析请求格式名称和可解析URL。由于已经定义了二者的格式,下面只需要从标识名称中找到或生成对应的字段即可。
1)选定标识体系的根域名、端口、路径前缀、标识体系名:这些字段对于一个标识体系来说是固定的,同一标识体系的所有标识名称共享相同的字段值。在为一个标识体系选定这些字段值的时候,应当满足以下要求:根域名应当是一个受控制的合法DNS域名,且能与该标识体系对应,仅服务于该标识体系;端口应当为http服务端口或1024以上的用户端口;路径前缀可以是任意合法的URL路径,可以为空;标识体系名应由数字和小写字母组成,并以字母开头,不与其他标识体系冲突。比如Handle体系中根域名可选择为“handle.resolvers.com”,端口为8000,路径前缀为/api/handles,标识体系名称为handle。
2)如果标识中有固定的表示标识格式、体系名称、体系各字段分隔符的部分,先将这一部分去除。比如Handle标识10.100804/TEST就是一个Handle标识,其中中间的斜杠(/)是分隔符,不需要在转译后的标识中保留。将标识中表示层级结构组织的部分与剩余部分分离,表示层级组织的部分称为原生节点名;将原生节点名按照从底层节点到顶层节点的顺序排列,使用点(.)分隔,称为节点名;剩余部分称为路径。比如Handle标识10.100804/TEST就是一个Handle标识,它的原生节点名为10.100804,其中10是顶层节点,100804是底层节点,因此它的节点名是100804.10;它的路径是TEST。
3)如果节点名不符合DNS域名的规范或各部分原本就可能含有点(.),使用某种编码方式将其转化为合法的DNS域名。可能的编码方式比如转义字符或base32编码等。
4)如果路径中有层次划分的结构,使用斜杠(/)分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的斜杠替换为转义字符以消除歧义。
5)如果路径中有URL路径中不允许出现的字符,使用某种编码方式将其转化为合法的URL路径。可能的编码方式比如URL编码、转义字符、base64编码等。
下面介绍如何部署标识权威服务器和DNS权威服务器,使客户端能够进行DNS查询和标识数据查询的过程。每一个标识权威服务器对应一个或多个节点名,为这些节点名下的标识提供权威解析服务。每一个DNS权威服务器对应一个或几个节点名,并且解析这些节点名对应的DNS区,形成正常的DNS权威服务器层级结构。
对于一个标识权威服务器,其应当监听该标识体系的端口,并且对于每一个对应的节点名的每一个符合可解析URL格式的标识,都应当存储该标识对应的数据。当收到这一标识的查询时(HTTP方法为GET),返回该标识对应的数据。返回内容的HTTP头部不作特殊要求,可按需设置。
对于DNS权威服务器,在更新数据时应当针对每个DNS区提供对应的区文件。区文件中应当包含一条SOA记录、该区内所有节点名的A记录(内容为标识权威服务器的IP地址)、该区所有子区的NS记录和对应的胶水记录(胶水记录内容为DNS权威服务器IP地址)。DNS权威服务器可以使用现有的DNS服务器,不需要专门修改。
标识权威服务器有不同实现的方式。可以使用静态Web服务器如Apache等,将标识数据按照路径安放到文件系统中对应的路径下;也可以使用各种数据库存储标识数据,编写Web服务器程序,收到请求后用标识路径查询数据库以获取标识数据,并返回给请求者;对于某些原生解析方式就使用HTTP协议传递标识数据的标识体系,也可以使用原生解析方式提供的标识权威服务器;如果有需要,标识权威服务器也可以通过代理的方式获取标识数据,在这种情况下标识权威服务器调用另一个该标识的解析程序,并将其返回的数据返回给请求者。
下面介绍如何设计客户端,以实现标识解析功能。
在网络标识解析的过程中,用户可能使用不同类型的手段进行标识解析,如浏览器访问、命令行、库函数调用等。同时,根据用户输入的内容不同,客户端需要做不同的处理。
如果用户使用可解析URL进行查询,用户可以直接发起网络请求,使用比如浏览器地址栏直接输入、curl软件、libcurl库等方式进行查询即可。
如果用户使用解析请求名称进行查询,需要先将其转化为可解析URL,因此需要一个格式转化的程序。在进行格式转化的时候,首先需要从用户的输入中解析出标识体系类型、节点名、路径三个字段,然后根据这三个字段生成可解析URL。在可解析URL的各个字段中,根域名、端口和路径前缀只和标识体系相关,可以内置于程序中;原生节点名由URL中域名去掉标识体系根域名之后计算得到。
当用户使用命令行或库函数进行查询时,只需要将上述功能包装为程序或函数库即可;当用户使用浏览器进行查询时,需要在用户查询时修改浏览器发出的请求。
如果用户使用HTTP模型的解析请求名称,本发明使用浏览器插件Header Editor进行拦截和修改浏览器请求的功能。使用Header Editor中“重定向请求”的功能,为每一个标识体系添加一条规则,以过滤不属于解析请求名称的请求,并使用JavaScript函数将解析请求名称重定向为可解析URL。在判断一个HTTP URL是否属于解析请求名称时,首先根据HTTP URL的语法将标识解析为域名、端口、路径三部分。如果端口省略(为空)、域名为该标识体系的根域名的子域名,那么该URL为该标识体系的解析请求名称,否则不是。
如果用户使用标识协议模型的解析请求名称,那么使用自定义协议的方式实现将用户输入翻译为可解析URL的功能。在操作系统注册表中为每一种标识体系注册对应的协议,将转译函数包装为一个独立的程序,该程序将标识协议模型的解析请求名称翻译为可解析URL,并调用浏览器打开该URL。
本发明另一实施例以Handle标识体系为例,详细说明本发明上述实施例方法的实现流程。
首先,将handle名称转化为DNS名称:
1.为演示用途,假想一个根域名:handle.name-resolver.com;handle有原生的HTTP解析服务器,该服务器端口为8000;handle原生的HTTP解析服务器需要一个路径前缀“/api/handles”。
2.以86.100804/TEST为例,handle名称分为两个部分,其中前一部分(86.100804)为树状层次结构,节点以点(.)分隔,从根到叶排列,作为节点名;后一个部分(/TEST)没有分层解析结构,作为路径。
3.handle名称的分层解析结构中,各层节点按照从根到叶子的结构排列,而DNS所依据的域名中,各层节点按照从叶子到根的结构排列,所以在将handle节点转化为DNS名时,需要将各层节点逆序排列。
4.由于handle名称后一部分以斜杠开头,且符合URL规则,因此不需要修改;如果这一部分不符合URL规则,需要对其进行编码以符合URL规则。
5.由于handle原生解析服务器的要求,将可查询URL中路径部分的原生节点名字段还原为handle自身的节点名,这样一来原handle标识就变成以下的解析请求名称和可解析URL了:
解析请求名称(HTTP模型)为:
http://100804.86.handle.name-resolver.com/TEST
可解析URL为:
http://100804.86.handle.name-resolver.com:8000/api/handles/86.100804/TEST
接下来,为handle节点配置DNS权威服务器:
1.一个DNS权威服务器可以存储一个或多个DNS区,DNS区对应一系列连续的handle节点;
2.每个DNS区有自己的DNS区域文件,其中包括:
a)该DNS区的SOA记录,即权威起始记录;
b)DNS区内各个节点对应的域名的A记录,即IP地址记录;
c)DNS区的子区的NS记录和胶水记录;其中,NS记录的内容为该子区的DNS权威服务器的域名,胶水记录是一种A记录,即IP地址记录,其内容为这些DNS权威服务器的域名和IP地址。
例如:假如有86、86.100804、86.100805、86.100804.804四个节点,其中,86.100804节点与其父节点(86)共用DNS区域文件,那么他们的区域文件应当类似以下情况:
a.86:区域86.handle.name-resolver.com
@ SOA …
@ A 86.0.0.1
100804 A 86.80.4.1
100805 NS 805.ns.cn
805.ns.cn A 1.1.1.1
100804.804 NS 804.ns.cn
804.ns.cn A 1.1.2.2
b.86.100805:区域:100805.86.handle.name-resolver.com
@ SOA …
@ A 86.80.5.1
c.86.100804.804:区域:804.100804.86.handle.name-resolver.com
@ SOA …
@ A 86.80.4.84
最后,为handle标识体系配置客户端。这里以浏览器端为例,配置如图2所示。匹配规则中,使用handle的根域名进行匹配,忽略域名前面的部分和后面路径部分,但是要求域名和路径之间没有端口。
在自定义函数代码中,只需要包括函数体,提供val作为输入的URL,返回重定向的URL。先使用正则匹配获取节点名和路径,然后使用根域名、端口、路径前缀进行拼接。
本发明另一实施例提供一种基于DNS系统的通用网络标识解析系统,如图3所示,该系统包括:
解析请求获取模块10,其配置成获取用户输入的带有网络标识的解析请求;其中,带有网络标识的解析请求为符合预定义格式的解析请求,预定义格式的解析请求包括两种类型:HTTP模型和标识协议模型;其中,HTTP模型的解析请求格式为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、路径,HTTP模型的节点名和根域名包含在HTTP URL的主机字段中、路径包含在HTTP URL的路径字段中,HTTP URL包括HTTP协议和HTTPS协议所使用的URL;标识协议模型的解析请求格式为满足URL格式的字符串,其内容包括标识体系名、节点名、路径,标识体系名包含在URL协议名中,标识协议模型的节点名和路径包含在URL的内容部分中;
转换模块20,其配置成对解析请求进行转换,获得可解析URL;其中,可解析URL为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、端口、路径前缀、原生节点名和路径;
DNS解析模块30,其配置成基于预先部署的DNS权威服务器,根据可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;
标识解析模块40,其配置成基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据可解析URL进行标识解析,获取网络标识对应的数据。
本实施例中,可选地,转换模块20中对解析请求进行转换,获得可解析URL的具体过程包括:
步骤二一、根据解析请求所携带的网络标识确定标识体系,从而获得标识体系的根域名、端口、路径前缀、标识体系名;
步骤二二、将解析请求所携带的网络标识中表示标识格式、体系名称、体系各字段的分隔符去除;
步骤二三、将解析请求所携带的网络标识中表示层级组织的原生节点名与剩余部分分离,将原生节点名按照从底层节点到顶层节点的顺序排列,并使用“.”分隔,从而获得节点名,而剩余部分则为路径;若获得的节点名不符合DNS域名的规范或各部分原本就含有“.”,则对节点名进行编码使其转化为合法的DNS域名;若获得的路径有层次划分的结构,则使用“/”以分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的“/”替换为转义字符以消除歧义;若获得的路径中有URL路径中不允许出现的字符,则对路径进行编码以使其转化为合法的URL路径;由此获得可解析URL。
本实施例中,可选地,DNS解析模块30中DNS权威服务器按照下述方式预先部署:每一个DNS权威服务器对应一个或多个DNS区,每个节点名对应一个域名,该域名从属的DNS区就是该节点名对应的DNS区;每个DNS区提供对应的区文件;区文件中包含权威起始记录、该DNS区内所有节点名对应标识权威服务器的IP地址、所有子区的DNS权威服务器域名和IP地址。
本实施例中,可选地,标识解析模块40中标识权威服务器按照下述方式预先部署:每一个标识权威服务器对应一个或多个节点名,且对于每一个对应的节点名下每一个符合可解析URL的标识,存储该标识对应的数据。
本发明实施例一种基于DNS系统的通用网络标识解析系统的功能可以由前述一种基于DNS系统的通用网络标识解析方法说明,因此系统实施例未详述部分,可参见以上方法实施例,在此不再赘述。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (10)
1.一种基于DNS系统的通用网络标识解析方法,其特征在于,包括以下步骤:
步骤一、获取用户输入的带有网络标识的解析请求;
步骤二、对所述解析请求进行转换,获得可解析URL;
步骤三、基于预先部署的DNS权威服务器,根据所述可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;
步骤四、基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据所述可解析URL进行标识解析,获取网络标识对应的数据。
2.根据权利要求1所述的一种基于DNS系统的通用网络标识解析方法,其特征在于,步骤一中带有网络标识的解析请求为符合预定义格式的解析请求,所述预定义格式的解析请求包括两种类型:HTTP模型和标识协议模型;其中,HTTP模型的解析请求格式为满足HTTPURL格式规范的字符串,其内容包括节点名、根域名、路径,HTTP模型的节点名和根域名包含在HTTP URL的主机字段中、路径包含在HTTP URL的路径字段中,所述HTTP URL包括HTTP协议和HTTPS协议所使用的URL;标识协议模型的解析请求格式为满足URL格式的字符串,其内容包括标识体系名、节点名、路径,所述标识体系名包含在URL协议名中,标识协议模型的节点名和路径包含在URL的内容部分中。
3.根据权利要求2所述的一种基于DNS系统的通用网络标识解析方法,其特征在于,步骤二的具体步骤包括:
步骤二一、根据所述解析请求所携带的网络标识确定标识体系,从而获得所述标识体系的根域名、端口、路径前缀、标识体系名;
步骤二二、将所述解析请求所携带的网络标识中表示标识格式、体系名称、体系各字段的分隔符去除;
步骤二三、将所述解析请求所携带的网络标识中表示层级组织的原生节点名与剩余部分分离,将原生节点名按照从底层节点到顶层节点的顺序排列,并使用“.”分隔,从而获得节点名,而剩余部分则为路径,由此获得可解析URL;所述可解析URL为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、端口、路径前缀、原生节点名和路径。
4.根据权利要求3所述的一种基于DNS系统的通用网络标识解析方法,其特征在于,步骤二三中若获得的节点名不符合DNS域名的规范或各部分原本就含有“.”,则对节点名进行编码使其转化为合法的DNS域名。
5.根据权利要求4所述的一种基于DNS系统的通用网络标识解析方法,其特征在于,步骤二三中若获得的路径有层次划分的结构,则使用“/”以分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的“/”替换为转义字符以消除歧义;若获得的路径中有URL路径中不允许出现的字符,则对路径进行编码以使其转化为合法的URL路径。
6.根据权利要求5所述的一种基于DNS系统的通用网络标识解析方法,其特征在于,步骤三中所述DNS权威服务器按照下述方式预先部署:每一个DNS权威服务器对应一个或多个DNS区,每个节点名对应一个域名,该域名从属的DNS区就是该节点名对应的DNS区;每个DNS区提供对应的区文件;所述区文件中包含权威起始记录、该DNS区内所有节点名对应标识权威服务器的IP地址、所有子区的DNS权威服务器域名和IP地址。
7.根据权利要求6所述的一种基于DNS系统的通用网络标识解析方法,其特征在于,步骤四中所述标识权威服务器按照下述方式预先部署:每一个标识权威服务器对应一个或多个节点名,且对于每一个对应的节点名下每一个符合可解析URL的标识,存储该标识对应的数据。
8.一种基于DNS系统的通用网络标识解析系统,其特征在于,包括:
解析请求获取模块,其配置成获取用户输入的带有网络标识的解析请求;其中,带有网络标识的解析请求为符合预定义格式的解析请求,所述预定义格式的解析请求包括两种类型:HTTP模型和标识协议模型;其中,HTTP模型的解析请求格式为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、路径,HTTP模型的节点名和根域名包含在HTTP URL的主机字段中、路径包含在HTTP URL的路径字段中,所述HTTP URL包括HTTP协议和HTTPS协议所使用的URL;标识协议模型的解析请求格式为满足URL格式的字符串,其内容包括标识体系名、节点名、路径,所述标识体系名包含在URL协议名中,标识协议模型的节点名和路径包含在URL的内容部分中;
转换模块,其配置成对所述解析请求进行转换,获得可解析URL;其中,所述可解析URL为满足HTTP URL格式规范的字符串,其内容包括节点名、根域名、端口、路径前缀、原生节点名和路径;
DNS解析模块,其配置成基于预先部署的DNS权威服务器,根据所述可解析URL进行DNS解析,获取对应标识权威服务器的IP地址;
标识解析模块,其配置成基于预先部署的标识权威服务器,访问DNS解析获得的标识权威服务器的IP地址,根据所述可解析URL进行标识解析,获取网络标识对应的数据。
9.根据权利要求8所述的一种基于DNS系统的通用网络标识解析系统,其特征在于,所述转换模块中对所述解析请求进行转换,获得可解析URL的具体过程包括:
步骤二一、根据所述解析请求所携带的网络标识确定标识体系,从而获得所述标识体系的根域名、端口、路径前缀、标识体系名;
步骤二二、将所述解析请求所携带的网络标识中表示标识格式、体系名称、体系各字段的分隔符去除;
步骤二三、将所述解析请求所携带的网络标识中表示层级组织的原生节点名与剩余部分分离,将原生节点名按照从底层节点到顶层节点的顺序排列,并使用“.”分隔,从而获得节点名,而剩余部分则为路径;若获得的节点名不符合DNS域名的规范或各部分原本就含有“.”,则对节点名进行编码使其转化为合法的DNS域名;若获得的路径有层次划分的结构,则使用“/”以分割不同层次,将各层次按照从根到叶子的顺序排列,并将原有的“/”替换为转义字符以消除歧义;若获得的路径中有URL路径中不允许出现的字符,则对路径进行编码以使其转化为合法的URL路径;由此获得可解析URL。
10.根据权利要求9所述的一种基于DNS系统的通用网络标识解析系统,其特征在于,所述DNS解析模块中所述DNS权威服务器按照下述方式预先部署:每一个DNS权威服务器对应一个或多个DNS区,每个节点名对应一个域名,该域名从属的DNS区就是该节点名对应的DNS区,每个DNS区提供对应的区文件;所述区文件中包含权威起始记录、该DNS区内所有节点名对应标识权威服务器的IP地址、所有子区的DNS权威服务器域名和IP地址;所述标识解析模块中所述标识权威服务器按照下述方式预先部署:每一个标识权威服务器对应一个或多个节点名,且对于每一个对应的节点名下每一个符合可解析URL的标识,存储该标识对应的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111654983.7A CN114285823B (zh) | 2021-12-30 | 2021-12-30 | 一种基于dns系统的通用网络标识解析方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111654983.7A CN114285823B (zh) | 2021-12-30 | 2021-12-30 | 一种基于dns系统的通用网络标识解析方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114285823A true CN114285823A (zh) | 2022-04-05 |
CN114285823B CN114285823B (zh) | 2024-02-02 |
Family
ID=80878763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111654983.7A Active CN114285823B (zh) | 2021-12-30 | 2021-12-30 | 一种基于dns系统的通用网络标识解析方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114285823B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101631133A (zh) * | 2008-07-15 | 2010-01-20 | 华为技术有限公司 | 一种域名解析系统、设备及方法 |
CN104253796A (zh) * | 2013-06-27 | 2014-12-31 | 北京快网科技有限公司 | 域名系统中基于网络地址绑定区层级的快速区识别方法 |
-
2021
- 2021-12-30 CN CN202111654983.7A patent/CN114285823B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101631133A (zh) * | 2008-07-15 | 2010-01-20 | 华为技术有限公司 | 一种域名解析系统、设备及方法 |
CN104253796A (zh) * | 2013-06-27 | 2014-12-31 | 北京快网科技有限公司 | 域名系统中基于网络地址绑定区层级的快速区识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114285823B (zh) | 2024-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100751622B1 (ko) | 네트워크 어드레스 서버, 도메인 명칭 분석 방법, 및 컴퓨터 판독 가능 기록 매체 | |
US7225272B2 (en) | Method and apparatus for providing name services | |
US7496497B2 (en) | Method and system for selecting web site home page by extracting site language cookie stored in an access device to identify directional information item | |
US9659070B2 (en) | Methods, systems, products, and devices for processing DNS friendly identifiers | |
US6745248B1 (en) | Method and apparatus for analyzing domain name registrations | |
US11632353B2 (en) | Delegating DNS records to additional providers | |
US9231903B2 (en) | System and method for resolving a DNS request using metadata | |
JP3492580B2 (ja) | マルチリンガル・ドメイン・ネーム・サービス | |
US6003077A (en) | Computer network system and method using domain name system to locate MIB module specification and web browser for managing SNMP agents | |
US20080235383A1 (en) | Methods, Systems, Products, And Devices For Generating And Processing DNS Friendly Identifiers | |
CN100473072C (zh) | 网络地址服务器 | |
KR20010103670A (ko) | 쉐도우 콜백 기능을 갖는 메시지 에일리어싱 기능을이용한 네트워크상의 정보 엑세스 방법 및 시스템 | |
EA002932B1 (ru) | Способ и система обеспечения доступа к информации в сети | |
KR101049534B1 (ko) | 자국어 인터넷주소 시스템 | |
US20030177274A1 (en) | Virtual subdomain address file suffix | |
US20150106494A1 (en) | Characterization of domain names based on changes of authoritative name servers | |
CN104253796A (zh) | 域名系统中基于网络地址绑定区层级的快速区识别方法 | |
CN114285823B (zh) | 一种基于dns系统的通用网络标识解析方法及系统 | |
CN105245626B (zh) | 在专网中使用快捷域名实现网站寻址的方法 | |
JP2003521844A (ja) | 単一のアドレスストリングを用いてさまざまな通信アプリケーションを横断して通信するためのシステム及び方法 | |
Ballintijn et al. | A scalable implementation for human-friendly URIs | |
Klensin | DNS Privacy, Authorization, Special Uses, Encoding, Characters, Matching, and Root Structure: Time for Another Look? | |
Babakian et al. | Internet Identifiers: A Survey of History, Challenges, and Future Perspectives | |
WO2001029001A2 (en) | Domain name searching | |
CN1210665C (zh) | 解析非拉丁字母统一资源定位地址的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |