CN107547670B - 一种域名信息的查询方法和装置 - Google Patents
一种域名信息的查询方法和装置 Download PDFInfo
- Publication number
- CN107547670B CN107547670B CN201610493481.3A CN201610493481A CN107547670B CN 107547670 B CN107547670 B CN 107547670B CN 201610493481 A CN201610493481 A CN 201610493481A CN 107547670 B CN107547670 B CN 107547670B
- Authority
- CN
- China
- Prior art keywords
- query
- domain name
- interface
- packet
- domain
- 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
Images
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
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
-
- 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/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
Abstract
本申请实施例提供了一种域名信息的查询方法和装置,该方法包括:接收待查询的域名;获得预设的查询分组的查询容量;根据所述查询容量,将所述域名分配至适配的查询分组;通过所述适配的查询分组的查询接口,查询所述域名的域名信息。一方面,通过弹性的域名分配方式,充分利用了查询资源,提高了域名的并发查询数量,从而提升了查询效率,降低了查询的耗时,另一方面,通过专门的查询接口进行查询,保持查询接口的设置,可以避免对不同类型的域名进行查询所造成需要切换查询接口的设置,提升了查询效率,降低了查询的耗时。
Description
技术领域
本申请涉及计算机处理的技术领域,特别是涉及一种域名信息的查询方法和一种域名信息的查询装置。
背景技术
互联网中的网站通常是以服务器的形式而构建,为了定位这些服务器,通常会分配IP(Internet Protocol,络之间互连的协议)地址。
然而,互联网上网站的数量是非常多的,并且其数量仍旧在不断增加,所以,在用户访问网站的服务器时,基本不可能记住每个网站的IP地址。
为了方便记忆,互联网中产生了DNS(Domain Name System,域名管理系统),DNS中提出了易于记忆的域名,将输入的域名转换成为服务器的IP地址,从而访问该服务器的网站。
例如,当用户在浏览器输入域名sipo.gov.cn时,DNS会将该sipo.gov.cn转换为相应的IP地址202.96.46.43。
在域名注册、域名交易等情况下,用户通常在查询网站对批量的域名进行Whois查询,即查询域名是否已经被注册,以及注册域名的详细信息等等。
目前,针对批量域名的Whois查询,查询网站通常是提供固定数量的通用查询接口,采用轮询的方式进行查询。
由于查询接口固定,导致不同类型的域名经常采用相同的查询接口进行查询,查询接口的设置需要切换,导致效率低下。
此外,轮询的方式需要阻塞等待,导致批量域名的Whois查询等待时间较长,例如,超过20个以上的域名的Whois查询经常要等待3分钟以上,甚至,查询经常超时,有时候返回结果中有30%为无效查询。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种域名信息的查询方法和相应的一种域名信息的查询装置。
一方面,本申请实施例公开了一种域名信息的查询方法,包括:
接收待查询的域名;
获得预设的查询分组的查询容量;
根据所述查询容量,将所述域名分配至适配的查询分组;
通过所述适配的查询分组的查询接口,查询所述域名的域名信息。
另一方面,本申请实施例还公开了一种域名信息的查询装置,包括:
待查询域名接收组件,用于接收待查询的域名;
查询容量获得组件,用于获得预设的查询分组的查询容量;
域名分配组件,用于根据所述查询容量,将所述域名分配至适配的查询分组;
域名信息查询组件,用于通过所述适配的查询分组的查询接口,查询所述域名的域名信息。
本申请实施例包括以下优点:
本申请实施例按照查询分组的查询容量,将待查询的域名分配至适配的查询分组中,通过该查询分组中的查询接口进行查询,一方面,通过弹性的域名分配方式,充分利用了查询资源,提高了域名的并发查询数量,从而提升了查询效率,降低了查询的耗时,另一方面,通过专门的查询接口进行查询,保持查询接口的设置,可以避免对不同类型的域名进行查询所造成需要切换查询接口的设置,提升了查询效率,降低了查询的耗时。
本申请实施例基于域名的剩余数量,动态地占用或释放查询分组的查询接口,通过弹性的查询接口的配置方式,充分利用了查询资源,针对不同规模的域名,均可调整适配的查询接口,从而提升了查询效率,降低了查询的耗时。
本申请实施例通过非阻塞的查询方式进行域名的查询,相对于阻塞等待,可以减少查询时间,减少长时间等待超时现象。
附图说明
图1是本申请的一种域名信息的查询方法实施例1的步骤流程图;
图2是本申请实施例的一种分组和查询接口的示例图;
图3是本申请的一种域名信息的查询方法实施例2的步骤流程图;
图4A和图4B是本申请实施例的一种域名查询系统的分组查询示例图;
图5是本申请实施例的一种域名信息的显示示例图;
图6是本申请的一种域名信息的查询装置实施例1的结构框图;
图7是本申请的一种域名信息的查询装置实施例2的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参照图1,示出了本申请的一种域名信息的查询方法实施例1的步骤流程图,具体可以包括如下步骤:
步骤101,接收待查询的域名。
在具体实现中,用户可以通过客户端(如浏览器)向服务器发送待查询的域名(Domain name),通常是批量的域名。
例如,用户可以通过浏览器访问服务器的网页,在该网页提交TXT等格式的文档,该文档中记录有域名,每个域名以换行符进行区分。
该文档的示例可以如下:
sipo.gov.cn
www.sipo.com
sipo.fm
sipo.xin
又例如,用户可以通过浏览器访问服务器的网页,在该网页提供输入框,用户在该输入框中输入域名,每个域名以空格进行区分。
需要说明的是,服务器所接收的待查询的域名可能是同一个用户发送的,也可能是不同用户发送的,本申请实施例对此不加以限制。
步骤102,获得预设的查询分组的查询容量。
在具体实现中,若服务器接收到待查询的域名,则可以并按照每个查询分组的查询容量,将适合的域名划分到该查询分组中。
在本申请的一个实施例中,步骤102可以包括如下子步骤:
子步骤S11,识别预设的查询分组的查询接口;
子步骤S12,查找所述查询接口的并发查询数量;
子步骤S13,计算所述并发查询数量之和,获得查询容量。应用本申请实施例,可以预先设置一个或多个查询分组,每个查询分组中配置一个或多个查询接口,即API(Application Programming Interface,应用程序编程接口)接口,用于对该查询分组中的域名查询域名信息。
其中,这些查询接口通常可以以key-value的数据存储接口进行定义。
当然,查询接口也可以通过服务器序列、其他结构的数组等形式进行定义,本申请实施例对此不加以限制。
在具体实现中,查询接口可以指定并发查询数量,即一次查询操作中并发查询的域名的最大数量。
例如,某个查询接口的并发查询数量为5,则意味着该查询接口可以在一次查询操作中,最多并发查询5个域名的域名信息。
由于一个查询分组中可以配置一个或多个查询接口,通常计算所有查询接口的并发查询数量之和,获得该查询分组的查询容量。
步骤103,根据所述查询容量,将所述域名分配至适配的查询分组。
在本发明实施例中,可以将域名分配至适配的查询分组中,直至查询分组中的域名的数量到达查询容量的上限,或者,域名分配完毕。
若分配至适配的查询分组中的域名到达查询容量的上限,还有剩余的域名未分配,则可以暂停分配,等待下一次查询。在本申请的一个实施例中,步骤103可以包括如下子步骤:子步骤S21,识别所述域名中的指定级别域名;
在具体实现中,域名一般可以划分为多级,指定级别域名为指定的某个级别的域名,具体包括如下的一种或多种:
顶级域名、二级域名、三级域名。
当然,除了顶级域名、二级域名、三级域名之外,指定级别域名还可以是其他级别的域名,本申请实施例对此不加以限制。
为使本领域技术人员更好地理解本申请实施例,在本说明书中,将顶级域名作为指定级别域名的一种示例进行说明。
域名由两个或两个以上的词构成,中间由点号分隔开,最右边的那个词称为顶级域名,又称为后缀。
在实际应用中,顶级域名通常包括如下几类:
1、国家和地区顶级域名(country code top-level domains,nTLDs);
目前,200多个国家按照ISO3166国家代码分配了顶级域名,例如,中国是.cn,日本是.jp,美国是.us等等。
2、国际顶级域名(generic top-level domains,gTLDs);
例如,表示工商企业的.com,表示网络提供商的.net,表示非盈利组织的.org等。
3、新顶级域(New gTLD Overview);
例如,表示航空机构的.aero,表示邮政机构的.post,表示博物馆的.museum等。
子步骤S22,查找所述指定级别域名适配的查询分组。
子步骤S23,按照所述查询分组的查询容量将所述域名分配至所述查询分组中。
在本申请实施例中,查询分组的查询接口用于查询指定级别域名所属域名的域名信息。
由于某些查询接口仅可以查询一种指定级别域名,而某些查询接口可以查询两种及两种以上的指定级别域名,则一个查询分组可以容纳一种指定级别域名,也可以容纳两种或两种以上的指定级别域名。
例如,如图2所示,假设顶级域名.com和.net可以使用同一个查询接口进行查询,则可以设置同一个查询分组容纳顶级域名.com和.net所属的域名;假设顶级域名.me和.org使用独立的查询接口进行查询,则可以分别设置一个分组分别容纳顶级域名.me和.org所属的域名。
由于查询分组的查询接口所提供的查询量有所不同,因此,本申请实施例中可以根据查询容量动态地划分查询分组。
子步骤S23,将所述适配的查询分组中的域名分配至所述查询接口直至到达所述并发查询数量;
子步骤S24,通过所述查询接口查询分配到的域名的域名信息。
在本发明实施例中,可以将域名划分至查询分组中,直至查询分组中的域名的数量到达总并发查询数量的上限,或者,域名划分完毕。
若划分至查询分组中的域名到达总并发查询数量的上限,还有剩余的域名未划分,则可以暂停划分,等待下一次查询。
例如,某个查询分组中分配到有4个顶级域名为.com的域名的查询接口,这4个查询接口的并发查询数量分别是5,5,10,10。
当有10个顶级域名为.com的域名,这10个域名并发查询占用了一个并发查询数量为10的查询接口,其它三个都处于闲置状态,全部域名划分至该查询分组中。
当有100个顶级域名为.com的域名,若所有查询接口全负荷查询,使得总并发查询数量为30,可以划分30个域名至该查询分组中,剩余70个域名等待下一次查询。
步骤104,通过所述适配的查询分组的查询接口,查询所述域名的域名信息。
在本申请实施例中,可以对查询分组中的域名进行预处理,以提高域名的查询效率。
其中,预处理可以包括:
1、合法性校验;
在此预处理中,可以对查询分组中的域名进行合法性校验,当校验域名非法时,删除该域名,当校验域名合法时,保留该域名。
进一步而言,可以按照域名的规范对查询分组中的域名进行合法性校验,若符合域名的规范,则校验域名合法,若不符合域名的规范,则校验域名非法。
例如,域名的规范规定域名中包含以下字符:
(1)26个英文字母;
(2)"0,1,2,3,4,5,6,7,8,9"十个阿拉伯数字;
(3)"-"(英文中的连词号,但不能是第一个字符);
(4)对于中文域名而言,还可以含有中文字符而且是必须含有中文字符(日文、韩文等域名类似)。
又例如,域名的规范规定域名中字符的组合规则:
(1)在域名注册查询中,不区分英文字母的大小写和中文字符的简繁体
(2)对于一个域名的长度是有一定限制的CN下域名命名的规则为:
i遵照域名命名的全部共同规则
ii只能注册三级域名,三级域名用字母(A-Z,a-z,大小写等价)、数字(0-9)和连接符(-)组成,各级域名之间用实点(.)连接,三级域名长度不得超过20个字符。
当然,上述域名的规范只是作为示例,在实施本申请实施例时,可以根据实际情况设置其他域名的规范,例如,长度不能超过128个字符,域名的后缀是固定的,等等,本申请实施例对此不加以限制。
2、乱序;
将查询分组中的域名的顺序打乱。
在实际应用中,很多服务器的查询接口会通过SPAM设置过滤规则来屏蔽特恶意查询,以便降低查询负载。
例如,从1到10000进行顺序查询,从A到WWWWWW进行字母顺序查询等有规律的查询,等等。
由于域名的排序一般是规律的,因此,通过将域名的顺序打乱,如随机分配域名,可以避免被某些查询接口加入黑名单,导致查询失败。
当然,上述预处理只是作为示例,在实施本申请实施例时,可以根据实际情况设置其他预处理,例如,去重处理(即去除重复的域名),等等,本申请实施例对此不加以限制。另外,除了上述预处理方法外,本领域技术人员还可以根据实际需要采用其它预处理,本申请实施例对此也不加以限制。
在本申请的一个实施例中,步骤104可以包括如下子步骤:
子步骤S31,在所述适配的查询分组中,确定查询接口的并发查询数量;
子步骤S32,将所述适配的查询分组中的域名分配至所述查询接口直至到达所述并发查询数量;
子步骤S33,通过所述查询接口查询分配到的域名的域名信息。
在本申请实施例中,查询分组中配置的查询接口,专门用于查询该查询分组对应的指定级别域名所属域名的域名信息。
将查询分组中的域名通过随机、顺序等方式分配至查询接口。
当分配的域名的数量到达查询接口的并发查询数量,或者,域名分配完毕,则可以调用该查询接口进行查询。
一般而言,可以按照查询接口的顺序分配域名。
例如,如图2所示,可以先给查询接口API_1分配域名,分配完成之后,给查询接口API_2分配域名,分配完成之后,给查询接口API_3分配域名。
在本申请实施例中,查询接口可以包括如下的一种或多种:
1、域名运营商服务器的查询接口;
在此方式中,域名运营商服务器将其域名信息的查询服务封装成一系列的查询接口,开放给其他用户。
调用域名运营商服务器的查询接口,可以向域名运营商服务器查询域名的域名信息。
2、第三方服务器的查询接口;
在此方式中,第三方服务器从域名运营商服务器查询域名的域名信息,并缓存在第三方服务器,第三方服务器将其域名信息的查询服务封装成一系列的查询接口,开放给其他用户。
调用第三方服务器的查询接口,可以向第三方服务器查询域名的域名信息。
需要说明的是,第三方服务器是相对于域名运营商服务器、本地服务器而言的其他服务器。
3、本地服务器的查询接口;
在此方式中,本地服务器从域名运营商服务器查询域名的域名信息,并缓存在本地服务器,本地服务器将其域名信息的查询服务封装成一系列的查询接口,开放给本地的其他模块或其他用户。
调用本地服务器的查询接口,可以向本地服务器查询域名的域名信息。
4、自定义的查询接口。
在具体实现中,自定义的查询接口适用于非标准环境。
例如,若某个服务器提供一个查询接口,但是查询接口的格式和请求参数并非标准的格式和请求参数,此时,可以根据标准进行自定义开发,使这个接口可以满足当前的数据请求标准。
在此方式中,某个服务器从域名运营商服务器查询域名的域名信息,并缓存在该服务器,该服务器将其域名信息的查询服务封装成一系列的查询接口,开放给其他用户。
对该查询接口进行自定义开发,获得自定义的查询接口。
调用从新开发的自定义的查询接口,可以向本地服务器查询域名的域名信息。
当然,上述查询接口只是作为示例,在实施本申请实施例时,可以根据实际情况设置其他查询接口,本申请实施例对此不加以限制。另外,除了上述查询接口外,本领域技术人员还可以根据实际需要采用其它查询接口,本申请实施例对此也不加以限制。在本申请实施例中,可以按照查询接口的规范,调用其所属服务器的查询服务,查询该域名的域名信息。
例如,如图2所示,若顶级域名.com和.net对应的分组中具有API_1、API_2和API_3等查询接口,则可以调用这些查询接口查询其所属查询分组中的域名。
本申请实施例对输入的域名进行分组,调用该分组中的查询接口进行查询,通过专门的查询接口进行查询,保持查询接口的设置,可以避免对不同类型的域名进行查询所造成需要切换查询接口的设置,提升了查询效率,降低了查询的耗时。
若查询无异常,则查询到的域名信息可以包括Domain Name(域名)、Name Server(DNS服务器)、Registrant ID(注册人ID)、Registrant Name(注册人姓名)、RegistrantOrganization(注册人单位)、Registrant Address(注册人地址)、Registrant Email(注册人电子邮箱)、Registrant Phone Number(注册人电话号码),等等。
由于注册域名所登记的信息、设置有所不同,因此,各个域名所返回的域名信息可能是所有域名信息的全部,也可能是所有域名信息中的部分。
当然,若该域名已经注册,则返回的域名信息具有内容,若该域名未注册,则返回的域名信息为空。
若查询异常,如查询时间超时、返回结果缺失或非法(如警告信息),则可以将该域名重新放回分组中进行查询。
如果某个域名查询超过N次(N为正整数,如3),均是查询异常,则可以返回查询失败的结果。
本申请实施例按照查询分组的查询容量,将待查询的域名分配至适配的查询分组中,通过该查询分组中的查询接口进行查询,一方面,通过弹性的域名分配方式,充分利用了查询资源,提高了域名的并发查询数量,从而提升了查询效率,降低了查询的耗时,另一方面,通过专门的查询接口进行查询,保持查询接口的设置,可以避免对不同类型的域名进行查询所造成需要切换查询接口的设置,提升了查询效率,降低了查询的耗时。
此外,本申请实施例通过非阻塞的查询方式进行域名的查询,相对于阻塞等待,可以减少查询时间,减少长时间等待超时现象。
例如,假设当前有100个顶级域名为.com的域名,某个查询分组中分配到有4个顶级域名为.com的域名的查询接口,这4个查询接口的并发查询数量分别是5,5,10,10。
若采用轮询的方式进行查询,则一次查询4个域名,要25次才会查询完这100个域名。
应用本申请实施例,一次可以同时并发查询30个域名,这4个查询接口全负荷查询3次外加并发查询数量为10的查询接口查询1次,即可查询完毕这100个域名。
如果占用一个并发查询数量为10查询接口查询,即可在3次查询查询完毕这100个域名。
本申请实施例非阻塞的查询方式可以使用户等待时间减少,减少长时间等待超时现象,在短时间(如3秒)内可以返回单个查询结果。
对于查询20个以上域名,查询的等待时长比轮询的方式可以降低50%以上。
参照图3,示出了本申请的一种域名信息的查询方法实施例2的步骤流程图,具体可以包括如下步骤:
步骤301,接收待查询的域名。
步骤302,获得预设的查询分组的查询容量。
步骤303,根据所述查询容量,将所述域名分配至适配的查询分组。
步骤304,通过所述适配的查询分组的查询接口,查询所述域名的域名信息。
步骤305,统计当前与所述查询分组适配、且未分配至所述查询分组的域名的剩余数量。
步骤306,根据所述剩余数量为所述查询分组调用查询接口。
本申请实施例基于域名的剩余数量,动态地占用或释放查询分组的查询接口,通过弹性的查询接口的配置方式,充分利用了查询资源,针对不同规模的域名,均可调整适配的查询接口,从而提升了查询效率,降低了查询的耗时。
由于动态地调整查询接口,因此,某个查询分组中的查询接口的种类和数量均可以动态变化。
在一种情况中,若属于某个查询分组、但未划分到该查询分组的域名的数量较多,无法在一次查询中查询完毕,并且,系统还有未被占用的查询接口,则可以动态地按照剩余数量占用新的查询接口,以提高并发的查询数量。
其中,剩余数量与新的查询接口的数量成正比,即剩余数量越多,则占用的新的查询接口的数量越多。
在另一种情况中,当剩余数量为零时,释放处于空闲状态的查询接口。
若某个查询分组的域名查询完毕,则可以释放该分组中处于空闲状态的查询接口,减少资源的占用。
步骤307,按照所述待查询的域名的顺序、对所述域名信息进行排序。
在本申请实施例中,由于在域名分组、分配到查询接口等情况下可能多次打乱域名的顺序,因此,可以将查询到的域名信息进行组合,并按照待查询的域名的顺序对组合之后的域名信息进行索引还原,使得输入的待查询的域名与输出的域名信息的顺序一致的,方便检验和备查。
其中,对于查询正常的情况,则查询结果为查询接口返回的域名信息,对于查询异常的情况,则查询结果为查询失败的信息。
此外,对于未注册的域名,所查询到的域名信息为空,对于已注册的域名,所查询到的域名信息为其注册时所登记的信息。
需要说明的是,对于重复的域名,也可以重复展示查询结果,对于非法的域名,查询结果为域名非法的信息,等等。
步骤308,输出所述域名信息,以进行显示。
若服务器得到查询结果,则可以返回客户端(如浏览器)进行展示。
其中,若查询结果进行了排序,则是输出排序后的查询结果。
若查询到的域名信息为外文(如在使用中文、日文等的地区,外文可以指英文),一般用户阅读较为困难,则可以对查询到的域名信息进行翻译,以方便用户查看。
进一步而言,域名信息一般是信息名(如Domain Name)和信息内容(如sipo.gov.cn)的配对形式,在翻译时,可以将信息名进行翻译,保留信息内容。
在具体实现中,服务器可以返回页面文档给客户端(如浏览器),如HTML(Hypertext Markup Language,超文本标记语言)文档,这个页面文档中包括域名信息和域名信息模板,该域名信息模板可以为如JSON(JavaScript Object Notation,JavaScript对象表示法)数据,具有多个译名形式的信息名(如中文)。
客户端(如浏览器)在渲染该页面文档时,可以按照域名信息的信息名(如英文)动态选择域名信息模板中译名形式的信息名(如中文),提取该信息名对应的信息内容,嵌入域名信息模板中,该译名形式的信息名(如中文)指示的位置。
为使本领域技术人员更好地理解本申请实施例,以下通过具体的示例来说明本申请实施例中域名信息的查询方法。
如图4A所示,在域名查询系统400中,提供四个查询分组,分别对应四种查询接口,查询分组401的查询接口用于查询顶级域名.com和.net所属域名的域名信息,查询分组402的查询接口用于查询顶级域名.me所属域名的域名信息,查询分组403的查询接口用于查询顶级域名.org所属域名的域名信息,查询分组404的查询接口用于查询顶级域名.gov所属域名的域名信息。
其中,查询分组401当前占用3个查询接口,域名运营商服务器的查询接口API_A、第三方服务器的查询接口API_B和本地服务器的查询接口API_C,这3个查询接口的并发查询数量分别是3,5,8。
用户通过浏览器访问服务器的网页在该网页提交文档,该文档中记录有100个待查询的域名,前几个的格式分别为:
sipo.gov.cn
www.sipo.com
sipo.net
sipo.org
……
其中,顶级域名为.com的域名的数量为50,顶级域名为.net的域名的数量为20,顶级域名为.me的域名的数量为18,顶级域名为.org的域名的数量为7,顶级域名为.gov的域名的数量为5。
将顶级域名为.com的50个域名和顶级域名为.net的20域名,共70个域名划分至查询分组401,将顶级域名为.me的18个域名划分至查询分组402,将顶级域名为.org的7个域名划分至查询分组403,将顶级域名为.gov的5个域名划分至查询分组404。
其中,对于查询分组401,若查询接口API_A、API_B,和API_C全负荷查询,使得总并发查询数量(即查询容量)为16,可以随机划分16个顶级域名为.com和顶级域名为.net的域名至分组401中,剩余54个域名等待下一次查询。
将16个顶级域名为.com和顶级域名为.net的域名至查询分组401中,则可以按照顺序分配3个域名至域名运营商服务器的查询接口API_A,当域名运营商服务器的查询接口API_A占满时,向域名运营商服务器发起查询请求,查询这3个域名的域名信息。
继续分配5个域名至第三方服务器的查询接口API_B,当第三方服务器的查询接口API_B占满时,向第三方服务器发起查询请求,查询这5个域名的域名信息。
继续分配8个域名至本地服务器的查询接口API_C,向本地服务器发起查询请求,查询这8个域名的域名信息。
如图4B所示,在下一轮查询时,查询分组401中未查询的域名的剩余数量为54,数量较多,可以再占用2个用于查询顶级域名.com和.net所属域名的域名信息查询接口,即第三方服务器的查询接口API_D和本地服务器的查询接口API_E,继续查询剩余的54个域名。
按照域名集合中域名的顺序对对组合之后的域名信息进行索引还原,对于查询正常的情况,则查询结果为查询接口返回的域名信息,对于查询异常的情况,则查询结果为查询失败的信息。
此外,对于未注册的域名,所查询到的域名信息为空,对于已注册的域名,所查询到的域名信息为其注册时所登记的信息。
查询的结果排序如下:
sipo.gov.cn----------------------域名信息
www.sipo.com-----------------域名信息
sipo.net--------------------------空
sipo.org--------------------------查询失败
……
若查询到的域名信息为英文,则可以对查询到的域名信息进行翻译。
例如,域名sipo.gov.cn查询到的域名信息如下:
Domain Name:sipo.gov.cn
ROID:20021209s10061s00004837-cn
Domain Status:serverDeleteProhibited
Domain Status:serverUpdateProhibited
Domain Status:serverTransferProhibited
Registrant ID:ant-669319
Registrant:中华人民共和国国家知识产权局
Registrant Contact Email:www@cpon.cpo.cn.net
Sponsoring Registrar:北京中科三方网络技术有限公司
Name Server:ns1.sipo.gov.cn
Name Server:ns2.sipo.gov.cn
Registration Time:1999-09-28 00:00:00
Expiration Time:2018-09-28 00:00:00
DNSSEC:unsigned
如图5所示,浏览器中显示时,可以显示翻译后的域名信息。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图6,示出了本申请的一种域名信息的查询装置实施例1的结构框图,具体可以包括如下组件:
待查询域名接收组件601,用于接收待查询的域名;
查询容量获得组件602,用于获得预设的查询分组的查询容量;
域名分配组件603,用于根据所述查询容量,将所述域名分配至适配的查询分组;
域名信息查询组件604,用于通过所述适配的查询分组的查询接口,查询所述域名的域名信息。
在本申请的一个实施例中,所述查询容量获得组件602可以包括如下子组件:
查询接口识别子组件,用于识别预设的查询分组的查询接口;
并发查询数量查找子组件,用于查找所述查询接口的并发查询数量;
求和子组件,用于计算所述并发查询数量之和,获得查询容量。
在本申请的一个实施例中,所述域名分配组件603可以包括如下子组件:
级别域名识别子组件,用于识别所述域名中的指定级别域名;
查询分组查找子组件,用于查找所述指定级别域名适配的查询分组,所述查询分组的查询接口用于查询所述指定级别域名所属域名的域名信息;
查询分组分配子组件,用于按照所述查询分组的查询容量将所述域名分配至所述查询分组中;
其中,所述指定级别域名包括如下的一种或多种:
顶级域名、二级域名、三级域名。
在本申请的一个实施例中,所述域名信息查询组件604可以包括如下子组件:
并发查询数量确定子组价,用于在所述适配的查询分组中,确定查询接口的并发查询数量;
接口填充子组件,用于将所述适配的查询分组中的域名分配至所述查询接口直至到达所述并发查询数量;
接口查询子组件,用于通过所述查询接口查询分配到的域名的域名信息。
在本申请的一个实施例中,所述域名信息查询组件604可以包括如下子组件:
预处理子组件,用于对所述分组中的域名进行预处理;
其中,所述预处理包括:
对所述分组中的域名进行合法性校验;
当校验所述域名非法时,删除所述域名;
和/或,
将所述分组中的域名的顺序打乱。
参照图7,示出了本申请的一种域名信息的查询装置实施例2的结构框图,具体可以包括如下组件:
待查询域名接收组件701,用于接收待查询的域名;
查询容量获得组件702,用于获得预设的查询分组的查询容量;
域名分配组件703,用于根据所述查询容量,将所述域名分配至适配的查询分组;
域名信息查询组件704,用于通过所述适配的查询分组的查询接口,查询所述域名的域名信息;
剩余数量统计组件705,用于统计当前与所述查询分组适配、且未分配至所述查询分组的域名的剩余数量;
查询接口调用组件706,用于根据所述剩余数量为所述查询分组调用查询接口;
域名信息排序组件707,用于按照所述待查询的域名的顺序、对所述域名信息进行排序;
域名信息输出组件708,用于输出所述域名信息,以进行显示。
在本申请的一个实施例中,所述查询接口调用组件706可以包括如下子组件:
查询接口占用子组件,用于按照所述剩余数量占用新的查询接口,所述剩余数量与所述新的查询接口的数量成正比;
或者,
查询接口释放子组件,用于在所述剩余数量为零时,释放处于空闲状态的查询接口。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种域名信息的查询方法和一种域名信息的查询装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (14)
1.一种域名信息的查询方法,其特征在于,包括:
接收待查询的域名;
获得预设的查询分组的查询容量;
根据所述查询容量,将所述域名分配至适配的查询分组;
通过所述适配的查询分组的查询接口,查询所述域名的域名信息;
其中,所述获得预设的查询分组的查询容量的步骤包括:
识别预设的查询分组的查询接口;
查找所述查询接口的并发查询数量;
计算所述并发查询数量之和,获得查询容量。
2.根据权利要求1所述的方法,其特征在于,所述根据查询容量,将所述域名分配至适配的查询分组中的步骤包括:
识别所述域名中的指定级别域名;
查找所述指定级别域名适配的查询分组,所述查询分组的查询接口用于查询所述指定级别域名所属域名的域名信息;
按照所述查询分组的查询容量将所述域名分配至所述查询分组中;
其中,所述指定级别域名包括如下的一种或多种:
顶级域名、二级域名、三级域名。
3.根据权利要求1或2所述的方法,其特征在于,所述通过所述适配的查询分组的查询接口,查询所述域名的域名信息的步骤包括:
在所述适配的查询分组中,确定查询接口的并发查询数量;
将所述适配的查询分组中的域名分配至所述查询接口直至到达所述并发查询数量;
通过所述查询接口查询分配到的域名的域名信息。
4.根据权利要求3所述的方法,其特征在于,还包括:
统计当前与所述查询分组适配、且未分配至所述查询分组的域名的剩余数量;
根据所述剩余数量为所述查询分组调用查询接口。
5.根据权利要求4所述的方法,其特征在于,所述根据所述剩余数量为所述查询分组调用查询接口的步骤包括:
按照所述剩余数量占用新的查询接口,所述剩余数量与所述新的查询接口的数量成正比;
或者,
当所述剩余数量为零时,释放处于空闲状态的查询接口。
6.根据权利要求1或5所述的方法,其特征在于,还包括:
按照所述待查询的域名的顺序、对所述域名信息进行排序。
7.根据权利要求6所述的方法,其特征在于,还包括:
输出所述域名信息,以进行显示。
8.一种域名信息的查询装置,其特征在于,包括:
待查询域名接收组件,用于接收待查询的域名;
查询容量获得组件,用于获得预设的查询分组的查询容量;
域名分配组件,用于根据所述查询容量,将所述域名分配至适配的查询分组;
域名信息查询组件,用于通过所述适配的查询分组的查询接口,查询所述域名的域名信息;
其中,所述查询容量获得组件包括:
查询接口识别子组件,用于识别预设的查询分组的查询接口;
并发查询数量查找子组件,用于查找所述查询接口的并发查询数量;
求和子组件,用于计算所述并发查询数量之和,获得查询容量。
9.根据权利要求8所述的装置,其特征在于,所述域名分配组件包括:
级别域名识别子组件,用于识别所述域名中的指定级别域名;
查询分组查找子组件,用于查找所述指定级别域名适配的查询分组,所述查询分组的查询接口用于查询所述指定级别域名所属域名的域名信息;
查询分组分配子组件,用于按照所述查询分组的查询容量将所述域名分配至所述查询分组中;
其中,所述指定级别域名包括如下的一种或多种:
顶级域名、二级域名、三级域名。
10.根据权利要求8或9所述的装置,其特征在于,所述域名信息查询组件包括:
并发查询数量确定子组价,用于在所述适配的查询分组中,确定查询接口的并发查询数量;
接口填充子组件,用于将所述适配的查询分组中的域名分配至所述查询接口直至到达所述并发查询数量;
接口查询子组件,用于通过所述查询接口查询分配到的域名的域名信息。
11.根据权利要求10所述的装置,其特征在于,还包括:
剩余数量统计组件,用于统计当前与所述查询分组适配、且未分配至所述查询分组的域名的剩余数量;
查询接口调用组件,用于根据所述剩余数量为所述查询分组调用查询接口。
12.根据权利要求11所述的装置,其特征在于,所述查询接口调用组件包括:
查询接口占用子组件,用于按照所述剩余数量占用新的查询接口,所述剩余数量与所述新的查询接口的数量成正比;
或者,
查询接口释放子组件,用于在所述剩余数量为零时,释放处于空闲状态的查询接口。
13.根据权利要求8或12所述的装置,其特征在于,还包括:
域名信息排序组件,用于按照所述待查询的域名的顺序、对所述域名信息进行排序。
14.根据权利要求13所述的装置,其特征在于,还包括:
域名信息输出组件,用于输出所述域名信息,以进行显示。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610493481.3A CN107547670B (zh) | 2016-06-28 | 2016-06-28 | 一种域名信息的查询方法和装置 |
US15/635,009 US20170374019A1 (en) | 2016-06-28 | 2017-06-27 | Querying domain name information |
PCT/IB2017/000983 WO2018002726A2 (en) | 2016-06-28 | 2017-06-27 | Querying domain name information |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610493481.3A CN107547670B (zh) | 2016-06-28 | 2016-06-28 | 一种域名信息的查询方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547670A CN107547670A (zh) | 2018-01-05 |
CN107547670B true CN107547670B (zh) | 2020-12-29 |
Family
ID=60677140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610493481.3A Active CN107547670B (zh) | 2016-06-28 | 2016-06-28 | 一种域名信息的查询方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170374019A1 (zh) |
CN (1) | CN107547670B (zh) |
WO (1) | WO2018002726A2 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110401686B (zh) * | 2018-04-25 | 2022-06-14 | 北京中域智科国际网络技术有限公司 | Whois查询方法、装置、设备及其存储介质 |
CN109063140A (zh) * | 2018-08-03 | 2018-12-21 | 福州麦辽自动化设备有限公司 | 一种数据查询方法、中转服务器及计算机可读存储介质 |
CN111694923A (zh) * | 2020-04-27 | 2020-09-22 | 平安科技(深圳)有限公司 | 基于名称映射的参数赋值方法、装置、计算机设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040039798A1 (en) * | 1999-03-03 | 2004-02-26 | Ultradns, Inc. | Domain name resolution system and method |
CN101924799A (zh) * | 2009-06-15 | 2010-12-22 | 北京华智大为科技有限公司 | 一种对域名进行信息查询的方法和系统 |
CN102970391A (zh) * | 2012-12-07 | 2013-03-13 | 华为技术有限公司 | 域名查询处理方法、服务器及系统 |
CN103491123A (zh) * | 2012-06-14 | 2014-01-01 | 中国移动通信集团贵州有限公司 | 一种基于域名访问的负载均衡方法、系统及负载均衡器 |
CN103685583A (zh) * | 2012-09-05 | 2014-03-26 | 阿里巴巴集团控股有限公司 | 一种域名解析的方法和系统 |
CN105119906A (zh) * | 2015-07-21 | 2015-12-02 | 北京泰策科技有限公司 | 一种用于防御dns递归攻击的方法、装置及系统 |
CN105183871A (zh) * | 2015-09-17 | 2015-12-23 | 北京京东尚科信息技术有限公司 | 数据查询方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6859212B2 (en) * | 1998-12-08 | 2005-02-22 | Yodlee.Com, Inc. | Interactive transaction center interface |
US20040044791A1 (en) * | 2001-05-22 | 2004-03-04 | Pouzzner Daniel G. | Internationalized domain name system with iterative conversion |
US8533282B2 (en) * | 2002-02-25 | 2013-09-10 | Broadcom Corporation | System, method and computer program product for selectively caching domain name system information on a network gateway |
-
2016
- 2016-06-28 CN CN201610493481.3A patent/CN107547670B/zh active Active
-
2017
- 2017-06-27 WO PCT/IB2017/000983 patent/WO2018002726A2/en active Application Filing
- 2017-06-27 US US15/635,009 patent/US20170374019A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040039798A1 (en) * | 1999-03-03 | 2004-02-26 | Ultradns, Inc. | Domain name resolution system and method |
CN101924799A (zh) * | 2009-06-15 | 2010-12-22 | 北京华智大为科技有限公司 | 一种对域名进行信息查询的方法和系统 |
CN103491123A (zh) * | 2012-06-14 | 2014-01-01 | 中国移动通信集团贵州有限公司 | 一种基于域名访问的负载均衡方法、系统及负载均衡器 |
CN103685583A (zh) * | 2012-09-05 | 2014-03-26 | 阿里巴巴集团控股有限公司 | 一种域名解析的方法和系统 |
CN102970391A (zh) * | 2012-12-07 | 2013-03-13 | 华为技术有限公司 | 域名查询处理方法、服务器及系统 |
CN105119906A (zh) * | 2015-07-21 | 2015-12-02 | 北京泰策科技有限公司 | 一种用于防御dns递归攻击的方法、装置及系统 |
CN105183871A (zh) * | 2015-09-17 | 2015-12-23 | 北京京东尚科信息技术有限公司 | 数据查询方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2018002726A3 (en) | 2018-02-15 |
CN107547670A (zh) | 2018-01-05 |
WO2018002726A2 (en) | 2018-01-04 |
US20170374019A1 (en) | 2017-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108881448B (zh) | Api请求的处理方法及装置 | |
CN105592011B (zh) | 一种账号登录方法及装置 | |
AU2013206327B2 (en) | Systems and methods for automatically providing whois service to top level domains | |
CN107547670B (zh) | 一种域名信息的查询方法和装置 | |
CN107342913B (zh) | 一种cdn节点的探测方法和装置 | |
CN109257451B (zh) | 对应关系解析方法及设备 | |
CN110569213A (zh) | 文件存取方法、装置和设备 | |
CN109327559B (zh) | 一种基于混合云平台的域名解析方法和装置 | |
CN102957664A (zh) | 一种识别钓鱼网站的方法及装置 | |
CN112954089B (zh) | 一种解析数据的方法、装置、设备以及存储介质 | |
US20130198409A1 (en) | Efficient implementation of user-provided dns names | |
CN111368227B (zh) | 一种url处理方法以及装置 | |
CN111163072A (zh) | 机器学习模型中特征值的确定方法、装置及电子设备 | |
CN112333299B (zh) | 一种域名解析方法、配置方法及设备 | |
CN110740191A (zh) | 资源访问方法、装置、电子设备及存储介质 | |
US8738605B2 (en) | Systems for discovering sensitive information on computer networks | |
CN110933193B (zh) | 域名解析方法、装置、电子设备及计算机可读存储介质 | |
US20220191567A1 (en) | Content delivery network assisted user geolocation | |
CN110708309A (zh) | 反爬虫系统及方法 | |
US8738604B2 (en) | Methods for discovering sensitive information on computer networks | |
CN110545335A (zh) | 一种互联网协议地址获取方法、服务器和系统 | |
US11303606B1 (en) | Hashing name resolution requests according to an identified routing policy | |
EP2647179B1 (en) | Service access apparatus, method, computer program and computer program product for selective initiation of communication | |
CN113067803B (zh) | 一种资源隔离系统、请求处理方法及请求处理装置 | |
CN109391707B (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 |