买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】互联网协议地址的查询及存储方法、装置和电子设备_北京奇艺世纪科技有限公司_201810008104.5 

申请/专利权人:北京奇艺世纪科技有限公司

申请日:2018-01-04

公开(公告)日:2022-12-02

公开(公告)号:CN108228834B

主分类号:G06F16/2453

分类号:G06F16/2453;G06F16/2455

优先权:

专利状态码:有效-授权

法律状态:2022.12.02#授权;2018.07.24#实质审查的生效;2018.06.29#公开

摘要:本发明实施例提供了一种互联网协议地址的查询及存储方法、装置和电子设备,上述互联网协议地址的查询方法包括:获取待检测互联网协议地址IP地址;提取上述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;确定上述待查询网段地址信息对应的地址分组;通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中。查询待查询网段地址信息对应的地址分组,而不用遍历预设地址名单中的所有IP地址,可以减少IP地址查询的时长,提高IP地址的查询效率。

主权项:1.一种互联网协议地址的查询方法,其特征在于,所述方法包括:获取待检测IP地址;提取所述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;确定所述待查询网段地址信息对应的地址分组,其中,所述待查询网段地址信息对应的地址分组中包含,预设地址名单中所述预设网段的地址信息与所述待查询网段地址信息相同的所有IP地址的标识;通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中;IP地址的标识为:将该IP地址中除所述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;在所述通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中之前,还包括:将所述待检测IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;所述通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中,包括:查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值;若所述待查询网段地址信息对应的地址分组中是包含所述待查询整型化数值,则确定所述待检测IP地址位于所述预设地址名单中;或者,若所述待查询网段地址信息对应的地址分组中不包含所述待查询整型化数值,则确定所述待检测IP地址不位于所述预设地址名单中。

全文数据:互联网协议地址的查询及存储方法、装置和电子设备技术领域[0001]本发明涉及互联网技术领域,特别是涉及互联网协议地址的查询及存储方法、装置和电子设备。背景技术[0002]WebWorldWideWeb,全球广域网)应用防火墙一般部署在业务服务器之前,为了保证用户访问业务服务器的速度,Web应用防火墙需要能够快速识别恶意请求。[0003]在现有技术中,将黑名单中的IPInternetProtocol,互联网协议地址直接保存在数据库中,Web应用防火墙在基于黑名单中的IP地址对指定IP地址进行识别时,需要遍历数据库中存储的黑名单IP地址,判断黑名单中是否包含该指定IP地址。[0004]然而,发明人在实现本发明的过程中发现,现有技术至少存在如下问题:[0005]遍历数据库中的黑名单IP地址,导致IP地址查询的时间长,效率低。发明内容[0006]本发明实施例的目的在于提供一种互联网协议地址的查询及存储方法、装置和电子设备,以实现减少IP地址查询的时长,提高IP地址的查询效率。具体技术方案如下:[0007]第一方面,本发明实施例提供了一种互联网协议地址的查询方法,所述方法包括:[0008]获取待检测互联网协议地址IP地址;[0009]提取所述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;[0010]确定所述待查询网段地址信息对应的地址分组,其中,所述待查询网段地址信息对应的地址分组中包含,预设地址名单中所述预设网段的地址信息与所述待查询网段地址信息相同的所有IP地址的标识;[0011]通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中。[0012]可选的,在本发明实施例的互联网协议地址的查询方法中,IP地址的标识为:将该IP地址中除所述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;[0013]在所述通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中之前,还包括:[0014]将所述待检测IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;[0015]所述通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中,包括:[0016]查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值;[0017]若包含,则确定所述待检测IP地址位于所述预设地址名单中;[0018]若不包含,则确定所述待检测IP地址不位于所述预设地址名单中。[0019]可选的,在本发明实施例的互联网协议地址的查询方法中,在所述待查询网段地址信息对应的地址分组中,所述整型化数值是按照数值大小进行排序的;[0020]相应的,所述查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值,包括:[0021]利用二分查找方法,查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值。[0022]可选的,在本发明实施例的互联网协议地址的查询方法中,所述预设地址名单为预设的黑名单。[0023]第二方面,本发明实施例提供了一种互联网协议地址的存储方法,所述方法包括:[0024]提取待存储互联网协议地址IP地址中预设网段的地址信息,作为待存储网段地址信息,所述待存储IP地址为预设地址名单中的IP地址;[0025]确定所述待存储网段地址信息对应的地址分组;[0026]确定所述待存储IP地址的标识,将所述待存储IP地址的标识,存储到与所述待存储网段地址信息对应的地址分组中。[0027]可选的,所述确定所述待存储IP地址的标识,将所述待存储IP地址的标识,存储到与所述待存储网段地址信息对应的地址分组,包括:[0028]将所述待存储IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值;[0029]将所述待存储IP地址的所述待存储整型化数值,存储到与所述待存储网段地址信息对应的地址分组中。[0030]可选的,在所述将所述待存储IP地址的所述待存储整型化数值,存储到与所述待存储网段地址信息对应的地址分组中之后,所述方法还包括:[0031]按照数值的预设大小顺序,对所述待存储网段地址信息对应的地址分组中的整型化数值进行排序。[0032]第三方面,本发明实施例提供了一种互联网协议地址的查询装置,所述装置包括:[0033]待检测地址获取模块,用于获取待检测互联网协议地址IP地址;[0034]预设网段提取模块,用于提取所述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;[0035]地址分组确定模块,用于确定所述待查询网段地址信息对应的地址分组,其中,所述待查询网段地址信息对应的地址分组中包含,预设地址名单中所述预设网段的地址信息与所述待查询网段地址信息相同的所有IP地址的标识;[0036]检测模块,用于通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中。[0037]可选的,在本发明实施例的互联网协议地址的查询装置中,IP地址的标识为:将该IP地址中除所述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;[0038]相应的,所述互联网协议地址的查询装置,还包括:[0039]整型化模块,用于将所述待检测IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;[0040]相应的,所述检测模块,包括:[0041]数值查询子模块,用于查询所述待查询网段地址彳目息对应的地址分组中疋否包白所述待查询整型化数值;[0042]第一判定子模块,用于在所述待查询网段地址信息对应的地址分组中包含所述待查询整型化数值时,确定所述待检测IP地址位于所述预设地址名单中;[0043]第二判定子模块,用于在用于若所述待查询网段地址信息对应的地址分组中不包含所述待查询整型化数值时,确定所述待检测1P地址不位于所述预设地址名单中。[0044]可选的,本发明实施例的互联网协议地址的查询装置中,在所述待查询网段地址信息对应的地址分组中,所述整型化数值是按照数值大小进行排序的;[0045]相应的,所述数值查询子模块,具体用于:利用二分查找方法,查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值。[0046]可选的,本发明实施例的互联网协议地址的查询装置中,所述预设地址名单为预设的黑名单。[0047]第四方面,本发明实施例提供了一种互联网协议地址的存储装置,所述装置包括:[0048]地址信息提取模块,用于提取待存储互联网协议地址IP地址中预设网段的地址信息,作为待存储网段地址信息,所述待存储IP地址为预设地址名单中的IP地址;[0049]地址分组确定模块,用于确定所述待存储网段地址信息对应的地址分组;[0050]地址存储模块,用于确定所述待存储IP地址的标识,将所述待存储IP地址的标识,存储到与所述待存储网段地址信息对应的地址分组中。[0051]可选的,所述地址存储模块,包括:[0052]信息整型子模块,用于将所述待存储IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值;[0053]数值存储子模块,用于将所述待存储IP地址的所述待存储整型化数值,存储到与所述待存储网段地址信息对应的地址分组中。[0054]可选的,所述互联网协议地址的存储装置还包括:[0055]排序模块,用于按照数值的预设大小顺序,对所述待存储网段地址信息对应的地址分组中的整型化数值进行排序。[0056]第五方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通f目;[0057]所述存储器,用于存放计算机程序;[0058]所述处理器,用于执行存储器上所存放的程序时,实现上述第一方面任一所述的互联网协议地址的查询方法。[0059]第六方面,本发明实施例提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;[0060]所述存储器,用于存放计算机程序;[0061]所述处理器,用于执行存储器上所存放的程序时,实现上述第二方面任一所述的互联网协议地址的存储方法。[0062]第七方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的互联网协议地址的查询方法。[0063]第八方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的互联网协议地址的存储方法。[0064]本发明实施例提供的互联网协议地址的查询及存储方法、装置和电子设备,获取待检测互联网协议地址IP地址;提取上述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;确定上述待查询网段地址信息对应的地址分组,其中,上述待查询网段地址信息对应的地址分组中包含,预设地址名单中上述预设网段的地址信息与上述待查询网段地址信息相同的所有IP地址的标识;通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中。查询待查询网段地址信息对应的地址分组,而不用遍历预设地址名单中的所有IP地址,可以减少IP地址查询的时长,提高IP地址的查询效率。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。附图说明[0065]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。[0066]图1为本发明实施例的互联网协议地址的存储方法的一种流程示意图;[0067]图2为本发明实施例的互联网协议地址的存储方法的另一种流程示意图;[0068]图3为本发明实施例的互联网协议地址的查询方法的一种流程示意图;[0069]图4为本发明实施例的互联网协议地址的查询方法的另一种流程示意图;[0070]图5为本发明实施例的互联网协议地址的查询装置的一种示意图;[0071]图6为本发明实施例的互联网协议地址的存储装置的一种示意图;[0072]图7为本发明实施例的用于查询互联网协议地址的电子设备的一种示意图;[0073]图8为本发明实施例的用于存储互联网协议地址的电子设备的一种示意图。具体实施方式[0074]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。[0075]现有技术中,Web应用防火墙在识别待检测的IP地址是否为黑名单中的IP地址时,需要遍历数据库中存储的黑名单,查询黑名单中是否包含待检测的IP地址,若包含则判定待检测的IP地址为黑名单中的IP地址。但是遍历数据库中存储的黑名单,查询时间长,从而导致用户访问延时高。[0076]有鉴于此,本发明实施例提供了一种互联网协议地址的存储方法,参见图1,该方法包括:[0077]S110,提取待存储互联网协议地址IP地址中预设网段的地址信息,作为待存储网段地址信息,上述待存储IP地址为预设地址名单中的IP地址。[0078]本发明实施例中的互联网协议地址的存储方法可以通过存储系统实现,存储系统为任意能够实现本发明实施例的互联网协议地址的存储方法的系统。例如:[0079]存储系统可以为一种设备,包括:处理器、存储器、通信接口和总线;处理器、存储器和通信接口通过总线连接并完成相互间的通信;存储器存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行本发明实施例的互联网协议地址的存储方法。[0080]存储系统还可以为一种应用程序,用于在运行时执行本发明实施例的互联网协议地址的存储方法。[0081]存储系统还可以为一种存储介质,用于存储可执行代码,可执行代码用于执行本发明实施例的互联网协议地址的存储方法。[0082]预设地址名单为任意的待存储的IP地址的名单,例如为黑名单或白名单等。存储系统获取预设地址名单中的所有IP地址,作为各待存储IP地址。针对所有待存储IP地址中的每个待存储IP地址,存储系统提取待存储IP地址的预设网段的地址信息,作为待存储网段地址信息。预设网段为任意的网段,例如,对于IPV4InternetProtocolVersion4,互联网协议第4版标准,IP地址分为四个网段,形式可以表示为:a.b.c.d,其中,a、b、c及d均为属于[0,255]的整数,可以选取一个网段作为预设网段,例如将c网段作为预设网段等,还可以选取多个网段作为预设网段,例如将a网段及d网段作为预设网段等。[0083]S120,确定上述待存储网段地址信息对应的地址分组。[0084]地址分组是预先划分的,根据预设网段中网段的个数,划分相应数量的地址分组,预设网段中网段的个数为n,则地址分组的数量为256n。例如,对于IPV4标准,可以选取一个网段作为预设网段,例如将a网段作为预设网段,建立256个分组,分别对应地址信息0-255。可选的,为了进一步提高查询效率,可以选取多个网段进行分组,例如选取b网段和c网段两个网段作为预设网段,根据b网段建立一级分组,建立256个分组,分别对应b网段的地址信息0-255;根据c网段建立二级分组,在一级分组的每个分组中,分别建立256个分组,分别对应d网段的地址信息0-255,共计2562个地址分组。[0085]S130,确定上述待存储IP地址的标识,将上述待存储IP地址的标识,存储到与上述待存储网段地址信息对应的地址分组中。[0086]存储系统确定待存储IP地址的标识,例如,待存储IP地址的正则表达式等,将待存储IP地址的标识,存储到与该待存储IP地址的待存储网段地址信息对应的地址分组中。在实际存储的过程中,可以采用MapJava编程语言中的一种调用函数形式进行存储,将待存储网段地址信息的数值作为Key,将待存储IP地址的标识作为Value,存储到待存储网段地址信息对应的分组中。[0087]在本发明实施例中,将待存储IP地址的标识存储到相应的地址分组中,方便对预设地址名单中待存储IP地址的管理,方便后续IP地址的查询,能够加快后续IP地址查询的速度。[0088]可选的,参见图2,上述确定上述待存储IP地址的标识,将上述待存储IP地址的标识,存储到与上述待存储网段地址信息对应的地址分组,包括:[0089]S131,将上述待存储IP地址中除上述预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值;[0090]存储系统对待存储IP地址中除预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值。例如,对于符合IPV4标准的待存储IP地址,在选取d网段的地址信息作为待存储网段地址信息时,对剩余网段a、b及c进行整型化处理,整型化处理的方法可以为,根据公式aX106+bX103+c进行计算,将计算结果作为待存储整型化数值。[0091]S132,将上述待存储IP地址的上述待存储整型化数值,存储到与上述待存储网段地址信息对应的地址分组中。[0092]将待存储IP地址的待存储整型化数值作为该待存储IP地址的标识,存储到该待存储IP地址的待存储网段地址信息对应的地址分组中。[0093]在本发明实施中,将待存储IP地址中除预设网段外的其他网段的地址信息进行整型化处理后得到的待存储整型化数值进行存储,后续IP地址查询时可以查询相应分组中是否包含相应的待存储整型化数值,可以进一步加快查询速度。[0094]可选的,在上述将上述待存储IP地址的上述待存储整型化数值,存储到与上述待存储网段地址信息对应的地址分组中之后,上述方法还包括:[0095]按照数值的预设大小顺序,对上述待存储网段地址信息对应的地址分组中的整型化数值进行排序。[0096]针对每个地址分组,在地址分组中的待存储整型化数值存储完成后,对该地址分组中的所有待存储整型化数值进行排序,例如按照数值的大小,对各待存储整型化数值进行升序或降序排序。[0097]在本发明实施例中,按照数值的预设大小顺序,对上述待存储网段地址信息对应的地址分组中的整型化数值进行排序,方便后续通过二分查找方法进行查询,能够进一步加快查询速度。[0098]本发明实施例提供了一种互联网协议地址的查询方法,参见图3,该方法包括:[0099]S310,获取待检测互联网协议地址IP地址。[0100]本发明实施例中的互联网协议地址的查询方法可以通过查询系统实现,查询系统为任意能够实现本发明实施例的互联网协议地址的查询方法的系统。例如:[0101]查询系统可以为一种设备,包括:处理器、存储器、通信接口和总线;处理器、存储器和通信接口通过总线连接并完成相互间的通信;存储器存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行本发明实施例的互联网协议地址的查询方法。[0102]查询系统还可以为一种应用程序,用于在运行时执行本发明实施例的互联网协议地址的查询方法。[0103]查询系统还可以为一种存储介质,用于存储可执行代码,可执行代码用于执行本发明实施例的互联网协议地址的查询方法。[0104]查询系统获取待检测IP地址,例如查询系统获取数据包中的源地址,作为待检测IP地址。[0105]S320,提取上述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息。[0106]预设网段为任意指定的网段,预设网段可以为一个网段也可以为多个网段。例如,对于IPV4InternetProtocolVersion4,互联网协议第4版标准,IP地址分为四个网段,形式可以表示为:a.b.c.d,其中,a、b、c及d均为属于[0,255]的整数,可以将b网段作为预设网段,或选取c网段和d网段作为预设网段等。[0107]S330,确定上述待查询网段地址信息对应的地址分组,其中,上述待查询网段地址信息对应的地址分组中包含,预设地址名单中上述预设网段的地址信息与上述待查询网段地址信息相同的所有IP地址的标识。[0108]地址分组是预先建立的,根据预设网段中网段的个数,划分相应数量的地址分组。例如,在预设地址名单中的IP地址符合IPV4标准时,可以选取一个网段作为预设网段,例如将a网段作为预设网段,建立256个分组,分别对应地址信息0—255。可选的,为了进一步提高查询效率,可以选取多个网段进行分组,例如选取b网段和c网段两个网段作为预设网段,根据b网段建立一级分组,建立256个分组,分别对应b网段的地址信息0-255;根据c网段建立二级分组,在一级分组的每个分组中,分别建立256个分组,分别对应d网段的地址信息0-255,共计2562个地址分组。每个地址分组中包含预设地址名单中相应的IP地址的标识。例如在预设地址名单的所有IP地址中,有且仅有IP地址A,IP地址B及IP地址C的a网段的网址信息为255,则预设网段的网址信息为255对应的分组中包含IP地址A的标识,IP地址B的标识及IP地址C的标识,共三个IP地址的标识。可选的,为了进一步加快ip地址的查询速度,可以将离线建立的地址分组存储到缓存中。[0109]预设地址名单为任意的IP地址的名单,例如白名单。可选的,预设地址名单为黑名单,以确定待检测IP地址是否为合法IP地址。查询系统确定待查询网段地址信息对应的地址分组,例如确定待查询网段地址信息0对应的地址分组;或确定待查询网段地址信息104对应的地址分组;待查询网段地址信息255对应的地址分组等。[0110]S:340,通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中。[0111]可选的,预设地址名单采用MapJava编程语言中的一种调用函数形式进行存储,分别将预设地址名单中各IP地址预设网段的地址信息作为Key,将预设地址名单中各IP地址的标识作为Value,存储到各IP地址的预设网段的地址信息Key各自对应的地址分组中。查询系统在进行查询时,将待查询网段地址信息作为Key查找对应的地址分组,然后查询该地址分组中的Value,确定该地址分组中是否包含待检测IP地址的标识,若包含,则判定该待检测IP地址是预设地址名单中的IP地址,若不包含,则判定该待检测IP地址不是预设地址名单中的IP地址。[0112]在本发明实施例中,查询待查询网段地址信息对应的地址分组,而不用遍历预设地址名单中的所有IP地址,可以减少IP地址查询的时长,提高IP地址的查询效率。[0113]可选的,在本发明实施例的互联网协议地址的查询方法中,IP地址的标识为:将该IP地址中除上述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;[0114]相应的,在上述通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中之前,还包括:[0115]将上述待检测IP地址中除上述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;[0116]相应的,上述通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中,包括:[0117]查询上述待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值;[0118]若包含,则确定上述待检测IP地址位于上述预设地址名单中;[0119]若不包含,则确定上述待检测IP地址不位于上述预设地址名单中。[0120]查询系统对待检测IP地址中除预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值。此处整型化处理的方法应当与将预设地址名单中IP地址存储到相应地址分组中时所用的整型化处理方法相同。例如,对于符合IPV4标准的待查询IP地址,在选取d网段的地址信息作为待查询网段地址信息时,对剩余网段a、b及c进行整型化处理,整型化处理的方法可以为,根据公式aX106+bXl〇3+c进行计算,将计算结果作为待查询整型化数值。[0121]在本发明实施例中,将待检测IP地址中除预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值,查询待查询网段地址信息对应的地址分组中是否包含待查询整型化数值,可以进一步增加查询速度。[0122]可选的,在上述待查询网段地址信息对应的地址分组中,上述整型化数值是按照数值大小进行排序的;[0123]相应的,上述查询上述待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值,包括:[0124]利用二分查找方法,查询上述待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值。[0125]当地址分组中的整型化数值为按照数值大小升序或降序排列时,可以通过二分查找方法,查找待查询网段地址信息对应的地址分组中是否包含待查询整型化数值。例如,当地址分组中整型化数值是按升序排列时,先排序中间位置的整型化数值与待查询整型化数值进行比较,如果两者相等,则判定包含待查询整型化数值;若不相等,则从排序中间位置将地址分组分成前、后两个子表,如果中间位置整型化数值大于待查询整型化数值,则进一步查找前一子表,如果中间位置整型化数值小于待查询整型化数值,则进一步查找后一子表。重复以上过程,直至找到与待查询整型化数值数值相等的整型化数值,此时判定包含待查询整型化数值;或直到子表不存在,此时判定不包含待查询整型化数值。[0126]在本发明实施例中,通过二分查找方法查询待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值,可以进一步加快IP地址的查询速度。[0127]下面对本发明实施例的互联网协议地址的查询方法进行举例说明,参见图4,包括:[0128]S401,Web应用防火墙离线获取黑名单中的所有IP地址,分别提取每个IP地址的预设网段的地址信息,分别确定各IP地址的预设网段的地址信息对应的地址分组例如,预设网段的地址信息为133,则对应地址分组为133,即各IP地址各自对应的地址分组。[0129]S402,Web应用防火墙将IP地址中除预设网段外的其他网段的地址信息进行整型化处理,得到整型化数值,并将各IP地址的整型化数值存储到各IP地址各自对应的分组中。[0130]S403,Web应用防火墙在将黑名单中的所有IP地址的整型化数值均存储完成后,分别对各地址分组中的整型化数值进行升序或降序排序。[0131]S404,当Web应用防火墙检测到连接请求时,获取请求数据包的源地址,作为待检测IP地址,提取待检测IP地址的预设网段的地址信息,确定待检测IP地址的预设网段的地址信息对应的分组;将待检测IP地址中除预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;利用二分查找方法查找待检测IP地址的预设网段的地址信息对应的分组中是否包含待查询整型化数值,若包含,则Web应用防火墙判定待检测IP地址为黑名单中的IP地址,若不包含,则Web应用防火墙判定待检测IP地址不是黑名单中的IP地址。[0132]在本发明实施例中,为了进一步加快IP地址查询速度,S401-S403可以离线进行,将生成的各地址分组存储在内存中,S404是在线实时进行的,每接收到一个请求数据包,Web应用防火墙便执行一次S404。将黑名单中IP地址的整型化数值存储到相应的地址分组中,在IP地址的查询时,仅查询待检测IP地址对应的分组即可。能够加快IP地址查询的速度。同时查询整型化数值的速度相比于直接查询IP地址的字符串,查询速度更快,查询效率更高。并且地址分组中的整型化数值是升序或降序排序的,可以通过二分查找方法进行查询,能够进一步加快查询速度。[0133]本发明实施例还提供了一种互联网协议地址的查询装置,参见图5,该装置包括:[0134]待检测地址获取模块501,用于获取待检测互联网协议地址IP地址;[0135]预设网段提取模块502,用于提取上述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;[0136]地址分组确定模块503,用于确定上述待查询网段地址信息对应的地址分组,其中,上述待查询网段地址信息对应的地址分组中包含,预设地址名单中上述预设网段的地址信息与上述待查询网段地址信息相同的所有IP地址的标识;[0137]检测模块504,用于通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中。[0138]在本发明实施例中,查询待查询网段地址信息对应的地址分组,而不用遍历预设地址名单中的所有IP地址,可以减少IP地址查询的时长,提高IP地址的查询效率。[0139]可选的,在本发明实施例的互联网协议地址的查询装置中,IP地址的标识为:将该IP地址中除上述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;[0140]相应的,上述互联网协议地址的查询装置,还包括:[0141]整型化模块,用于将上述待检测IP地址中除上述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;[0142]相应的,上述检测模块504,包括:[0143]数值查询子模块,用于查询上述待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值;[0144]第一判定子模块,用于在上述待查询网段地址信息对应的地址分组中包含上述待查询整型化数值时,确定上述待检测IP地址位于上述预设地址名单中;[0145]第二判定子模块,用于在用于若上述待查询网段地址信息对应的地址分组中不包含上述待查询整型化数值时,确定上述待检测IP地址不位于上述预设地址名单中。[0146]在本发明实施例中,将待检测IP地址中除预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值,查询待查询网段地址信息对应的地址分组中是否包含待查询整型化数值,可以进一步增加查询速度。[0147]可选的,在本发明实施例的互联网协议地址的查询装置中,在上述待查询网段地址信息对应的地址分组中,上述整型化数值是按照数值大小进行排序的;[0148]相应的,上述数值查询子模块,具体用于:利用二分查找方法,查询上述待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值。[0149]在本发明实施例中,通过二分查找方法查询待查询网段地址信息对应的地址分组中是否包含上述待查询整型化数值,可以进一步加快1P地址的查询速度。[0150]可选的,在本发明实施例的互联网协议地址的查询装置中,上述预设地址名单为预设的黑名单。[0151]在本发明实施例中,预设地址名单为黑名单,能够实现确定待检测IP地址是否为黑名单中的IP地址。[0152]本发明实施例还提供了一种互联网协议地址的存储装置,参见图6,该装置包括:[0153]地址信息提取模块601,用于提取待存储互联网协议地址IP地址中预设网段的地址信息,作为待存储网段地址信息,上述待存储IP地址为预设地址名单中的1P地址;[0154]地址分组确定模块602,用于确定上述待存储网段地址信息对应的地址分组;[0155]地址存储模块603,用于确定上述待存储IP地址的标识,将上述待存储IP地址的标识,存储到与上述待存储网段地址信息对应的地址分组中。[0156]在本发明实施例中,将待存储IP地址的标识存储到相应的地址分组中,方便对预设地址名单中待存储IP地址的管理,方便后续IP地址的查询,能够加快后续IP地址查询的速度。[0157]可选的,上述地址存储模块603,包括:[0158]信息整型子模块,用于将上述待存储IP地址中除上述预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值;[0159]数值存储子模块,用于将上述待存储IP地址的上述待存储整型化数值,存储到与上述待存储网段地址信息对应的地址分组中。[0160]在本发明实施中,将待存储IP地址中除预设网段外的其他网段的地址信息进行整型化处理后得到的待存储整型化数值进行存储,后续IP地址查询时可以查询相应分组中是否包含相应的待存储整型化数值,可以进一步加快查询速度。[0161]可选的,上述互联网协议地址的存储装置还包括:[0162]排序模块,用于按照数值的预设大小顺序,对上述待存储网段地址信息对应的地址分组中的整型化数值进行排序。[0163]在本发明实施例中,按照数值的预设大小顺序,对上述待存储网段地址信息对应的地址分组中的整型化数值进行排序,方便后续通过二分查找方法进行查询,能够进一步加快查询速度。[0164]本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,[0165]存储器703,用于存放计算机程序;[0166]处理器701,用于执行存储器703上所存放的程序时,实现如下步骤:[0167]获取待检测互联网协议地址IP地址;[0168]提取上述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;[0169]确定上述待查询网段地址信息对应的地址分组,其中,上述待查询网段地址信息对应的地址分组中包含,预设地址名单中上述预设网段的地址信息与上述待查询网段地址信息相同的所有IP地址的标识;[0170]通过查询上述待查询网段地址信息对应的地址分组中是否包含上述待检测IP地址的标识,确定上述待检测IP地址是否位于上述预设地址名单中。[0171]在本发明实施例中,查询待查询网段地址信息对应的地址分组,而不用遍历预设地址名单中的所有IP地址,可以减少IP地址查询的时长,提高IP地址的查询效率。[0172]可选的,处理器701用于执行存储器703上所存放的程序时,还能够实现上述任一互联网协议地址的检测方法。[0173]本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,[0174]存储器803,用于存放计算机程序;[0175]处理器801,用于执行存储器803上所存放的程序时,实现如下步骤:[0176]提取待存储互联网协议地址IP地址中预设网段的地址信息,作为待存储网段地址信息,上述待存储IP地址为预设地址名单中的IP地址;[0177]确定上述待存储网段地址信息对应的地址分组;[0178]确定上述待存储IP地址的标识,将上述待存储IP地址的标识,存储到与上述待存储网段地址信息对应的地址分组中。[0179]在本发明实施例中,将待存储IP地址的标识存储到相应的地址分组中,方便对预设地址名单中待存储IP地址的管理,方便后续IP地址的查询,能够加快后续IP地址查询的速度。[0180]可选的,处理器801用于执行存储器803上所存放的程序时,还能够实现上述任一互联网协议地址的存储方法。[0181]上述电子设备提到的通7[目总线可以是外设部件互连标准PeripheralComponentInterconnect,简称PCI总线或扩展工业标准结构(ExtendedIndustryStandardArchitecture,简称EISA总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。[0182]通信接口用于上述电子设备与其他设备之间的通信。[0183]存储器可以包括随机存取存储器RandomAccessMemory,简称RAM,也可以包括非易失性存储器non-volatilememory,例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。[0184]上述的处理器可以是通用处理器,包括中央处理器CentralProcessingUnit,简称CPU、网络处理器(NetworkProcessor,简称NP等;还可以是数字信号处理器DigitalSignalProcessing,简称DSP、专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC、现场可编程门阵列(Field—ProgrammableGateArray,简称FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。[0185]在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的互联网协议地址的查询方法。[0186]在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的互联网协议地址的存储方法。[0187]在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的互联网协议地址的查询方法。[0188]在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的互联网协议地址的存储$法。[0189]在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线例如同轴电缆、光纤、数字用户线DSL或无线例如红外、无线、微波等方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质例如,DVD、或者半导体介质例如固态硬盘SolidStateDiskSSD等。[0190]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……,,限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。[0191]本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相^见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。[0192]以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

权利要求:1.一种互联网协议地址的查询方法,其特征在于,所述方法包括:获取待检测互联网协议地址IP地址;提取所述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;确定所述待查询网段地址信息对应的地址分组,其中,所述待查询网段地址信息对应的地址分组中包含,预设地址名单中所述预设网段的地址信息与所述待查询网段地址信息相同的所有IP地址的标识;通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中。2.根据权利要求1所述的方法,其特征在于,IP地址的标识为:将该IP地址中除所述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;在所述通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中之前,还包括:将所述待检测IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;所述通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中,包括:查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值;若所述待查询网段地址信息对应的地址分组中是包含所述待查询整型化数值,则确定所述待检测IP地址位于所述预设地址名单中;或者,若所述待查询网段地址信息对应的地址分组中不包含所述待查询整型化数值,则确定所述待检测IP地址不位于所述预设地址名单中。3.根据权利要求2所述的方法,其特征在于,在所述待查询网段地址信息对应的地址分组中,所述整型化数值是按照数值大小进行排序的;相应的,所述查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值,包括:利用二分查找方法,查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值。4.根据权利要求1-3任一项所述的方法,其特征在于,所述预设地址名单为预设的黑名单。5.—种互联网协议地址的存储方法,其特征在于,所述方法包括:提取待存储互联网协议地址IP地址中预设网段的地址信息,作为待存储网段地址信息,所述待存储IP地址为预设地址名单中的IP地址;确定所述待存储网段地址信息对应的地址分组;确定所述待存储IP地址的标识,将所述待存储IP地址的标识,存储到与所述待存储网段地址信息对应的地址分组中。6.根据权利要求5所述的方法,其特征在于,所述确定所述待存储IP地址的标识,将所述待存储IP地址的标识,存储到与所述待存储网段地址信息对应的地址分组,包括:将所述待存储IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值;将所述待存储IP地址的所述待存储整型化数值,存储到与所述待存储网段地址信息对应的地址分组中。7.根据权利要求6所述的方法,其特征在于,在所述将所述待存储IP地址的所述待存储整型化数值,存储到与所述待存储网段地址信息对应的地址分组中之后,所述方法还包括:按照数值的预设大小顺序,对所述待存储网段地址信息对应的地址分组中的整型化数值进行排序。8.—种互联网协议地址的查询装置,其特征在于,所述装置包括:待检测地址获取模块,用于获取待检测互联网协议地址IP地址;预设网段提取模块,用于提取所述待检测IP地址的预设网段的地址信息,作为待查询网段地址信息;地址分组确定模块,用于确定所述待查询网段地址信息对应的地址分组,其中,所述待查询网段地址信息对应的地址分组中包含,预设地址名单中所述预设网段的地址信息与所述待查询网段地址信息相同的所有IP地址的标识;检测模块,用于通过查询所述待查询网段地址信息对应的地址分组中是否包含所述待检测IP地址的标识,确定所述待检测IP地址是否位于所述预设地址名单中。9.根据权利要求8所述的装置,其特征在于,IP地址的标识为:将该IP地址中除所述预设网段的其他网段的地址信息进行整型化处理得到的整型化数值;相应的,所述互联网协议地址的查询装置,还包括:整型化模块,用于将所述待检测IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待查询整型化数值;相应的,所述检测模块,包括:数值查询子模块,用于查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值;第一判定子模块,用于在所述待查询网段地址信息对应的地址分组中包含所述待查询整型化数值时,确定所述待检测IP地址位于所述预设地址名单中;第二判定子模块,用于在用于若所述待查询网段地址信息对应的地址分组中不包含所述待查询整型化数值时,确定所述待检测IP地址不位于所述预设地址名单中。10.根据权利要求9所述的装置,其特征在于,在所述待查询网段地址信息对应的地址分组中,所述整型化数值是按照数值大小进行排序的;相应的,所述数值查询子模块,具体用于:利用二分查找方法,查询所述待查询网段地址信息对应的地址分组中是否包含所述待查询整型化数值。11.根据权利要求8-10任一项所述的装置,其特征在于,所述预设地址名单为预设的黑名单012.—种互联网协议地址的存储装置,其特征在于,所述装置包括:地址信息提取模块,用于提取待存储互联网协议地址113地址中预设网段的地址信息,作为待存储网段地址信息,所述待存储IP地址为预设地址名单中的IP地址;地址分组确定模块,用于确定所述待存储网段地址信息对应的地址分组;地址存储模块,用于确定所述待存储IP地址的标识,将所述待存储IP地址的标识,存储到与所述待存储网段地址信息对应的地址分组中。13.根据权利要求12所述的装置,其特征在于,所述地址存储模块,包括:信息整型子模块,用于将所述待存储IP地址中除所述预设网段外的其他网段的地址信息进行整型化处理,得到待存储整型化数值;数值存储子模块,用于将所述待存储IP地址的所述待存储整型化数值,存储到与所述待存储网段地址信息对应的地址分组中。14.根据权利要求13所述的装置,其特征在于,所述互联网协议地址的存储装置还包括:排序模块,用于按照数值的预设大小顺序,对所述待存储网段地址信息对应的地址分组中的整型化数值进行排序。15.—种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。16.—种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行存储器上所存放的程序时,实现权利要求5-7任一所述的方法步骤。

百度查询: 北京奇艺世纪科技有限公司 互联网协议地址的查询及存储方法、装置和电子设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。