CN112019652B - 一种ipv6地址段判断的方法及装置 - Google Patents

一种ipv6地址段判断的方法及装置 Download PDF

Info

Publication number
CN112019652B
CN112019652B CN202010880694.8A CN202010880694A CN112019652B CN 112019652 B CN112019652 B CN 112019652B CN 202010880694 A CN202010880694 A CN 202010880694A CN 112019652 B CN112019652 B CN 112019652B
Authority
CN
China
Prior art keywords
ipv6 address
dishu
zhu
ipv6
address
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
CN202010880694.8A
Other languages
English (en)
Other versions
CN112019652A (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.)
Beijing Act Technology Development Co ltd
Original Assignee
Beijing Act Technology Development Co ltd
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 Beijing Act Technology Development Co ltd filed Critical Beijing Act Technology Development Co ltd
Priority to CN202010880694.8A priority Critical patent/CN112019652B/zh
Publication of CN112019652A publication Critical patent/CN112019652A/zh
Application granted granted Critical
Publication of CN112019652B publication Critical patent/CN112019652B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses

Abstract

一种IPV6地址段判断的装置涉及信息技术领域。本发明由IPv6地址段读取模块、IPv6地址段转换模块、IPv6地址段朱迪树生成模块、IPv6地址读取模块、IPv6地址转换模块和IPv6地址朱迪树比较模块组成;通过构建IPv6地址段的朱迪树来快速定位IPv6地址所处于的地址段,相比现有技术IPV6地址段查询速度更快,构建IPV6地址段占用内存更少。

Description

一种IPV6地址段判断的方法及装置
技术领域
本发明涉及信息技术领域。
背景技术
IPv6 协议的研究起源于 20 世纪 90 年代,该协议是 IETF 在比较多种 Ipng方案的基础上,最后以“简单互联网协议增强 SIPP ”为基础加以改进而形成的。 IPv6 协议最初的草案是 1995 年由 Cisco 公司的 Steve Deering 和 Nokia 公司的 RobertHinden 起草完成的即 RFC2460。IETF 对 RFC2460 进行了较大改进,形成了现有的RFC2460。IPv6 的其他标准也陆续由 IETF 的相关工作组制定出来。经过多年的努力,IETF已经制定出 100 多项有关 IPv6 协议的RFC 。到 1998 年夏末为止,新的 IPv6RFC 获准发表。其中尤其值得注意的是, RFC2373 作为 IPv6 的寻址体系结构替换了RFC1883 ,RFC2374 一种可聚合全球单播地址格式的 IPv6 替换了RFC2073。其他允许发表的新的RFC 描述了 ICMPv6 和IPv6 中的邻居发现和无状态自动配置。
IPV4判断IP地址属于某一IP地址段的方法是将已知的IP段地址转换为两个32位无符号整数存入哈希表即hashmap中,比较时逐一取出哈希表中的节点,如果一个待判断的IP地址不小于起始IP且不大于终止IP,那么此待判断IP就在此IP地址段内。但是IPV6地址的数量是IPV4地址数量的 2的96次方倍,因此使用这种方式来判断IPV6地址的IP段就非常慢,且建立IPV6的哈希表时会消耗巨大内存。
现有技术说明
相比IPv4地址,IPv6地址具有巨大的地址空间,而且在地址表示、地址配置等方面均有显著不同。因此,就会导致IPv4的遍历的扫描方法和工具变得不可行。目前,国内外对IPv6地址扫描的研究主要集中在以下两个方面:一方面是缩小扫描空间,另一方面是使用算法生成预测地址集。
缩小扫描空间主要包括:基于抽样的地址扫描和挖掘地址结构特征。
基于抽样的地址扫描
因为活动主机地址的分布状况在不同链路中是各不相同的,根据地址分布的特点,可以考虑IPv6地址均匀分布与非均匀分布两种情况。通过为IPv6地址扫描建立合理的数学模型,对影响其效率的各个因素进行分析,可以找出针对不同网络情况的最佳扫描策略。有关文献提出了一种基于地址抽样的IPv6地址扫描方法,因为IPv6网络提供了巨大的地址空间,所以活动主机地址的分布通常是非均匀的,此时如果仍然使用随机地址扫描模型来讨论,随机地选择被扫描地址进行扫描,则得不到理想的扫描效率。这里可以使用抽样地址扫描模型来描述扫描过程,引入统计学中的方法,采用整群抽样的思想,先将大地址空间划分为若干个大小相等的子空间区域,对每个区域进行抽样,利用得到的结果对各个区域内含有活动主机的概率进行预测分析、排序,得出拥有活动主机相对较多的区域,然后合理分配扫描资源优先对这些区域进行扫描,从而有效地提高扫描效率。通过对非均匀分布的IPv6地址进行扫描测试,SAS模型比RAS模型扫描时间约节省了80%。但模型中并没有给出关于将大地址空间合理地划分为多少个子区域的计算公式,并且IPv6地址空间是巨大的,就算合理划分了抽样的区域,对各个子区域进行抽样扫描花费的时间也将会是巨大的。
挖掘地址特征扫描
虽然IPv6地址空间巨大,但是地址分配是具有一定的规律性的,RFC3587等文档描述了地址结构和分配方法,研究人员可利用上述文档分析IPv6地址结构特征来缩小扫描空间。文献采用多个数据集对IPv6地址进行了分析通过对一定量的地址进行统计,结果发现70%以上的主机应用的是无状态自动配置地址类型和内嵌IPv4地址类型,70%的路由器使用的是低位地址类型。这样就会使得IPv6网络中主机的扫描范围大大缩小,这对IPv6网络扫描提供了一个重要参考。根据IPv6地址分布存在的规律,有文献列出了许多利用地址分布特征来缩小IPv6地址扫描范围的方法,例如虚拟机地址、低位地址和EUI-64地址等扫描方法。利用地址特征的扫描方法虽然简单、有效且具有可操作性,但是其缺点也十分明显,例如仅能适用于发现属于标准的格式之内的网络地址,而对于临时分配地址、复杂的手动配置地址等情况,有效的扫描就无法完全实现。为了能够更有效地扫描和处理IPv6临时地址,需要对IPv6地址的规律进行更深的挖掘与研究。
通过种子集生成预测地址集
目前研究论文比较多IPv6地址扫描方法是通过地址集生成可能存活的预测目标集,来扩展可能存活的地址空间。而这种方法首先需要收集一些高质量的种子集。高质量的IPv6地址种子集有:Hitlist目前是在IPv6地址积累比较多的开源数据集;域名列表,通过公开的域名集合获取获得IPv6地址,比如Zone files,恶意域名情报等;DNS转发,Rapid7中的转发域名集合;CA证书提取,在TLS的CA证书中提取的域名;比特币节点,比特币节点的IPv6地址;RIPE Atlas,提取RIPE Atlas中的traceroutes产生的IPv6地址;Scamper,使用Scamper工具探测获得的IPv6地址。
发明内容
鉴于现有技术的不足,本发明提供的一种IPV6地址段判断的方法及装置由IPv6地址段读取模块、IPv6地址段转换模块、IPv6地址段朱迪树生成模块、IPv6地址读取模块、IPv6地址转换模块和IPv6地址朱迪树比较模块组成;
IPv6地址段读取模块负责读入IPv6地址种子集,并将每个IPv6地址根据IPv6地址规则生成IPv6地址段起始地址和IPv6地址段终止地址,完成生成IPv6地址段列表的工作;IPv6地址段读取模块将IPv6地址段列表发送给IPv6地址段转换模块;
IPv6地址段转换模块将IPv6地址段列表转换为不缩写的IPv6地址段记录形式,生成全写模式的IPv6地址段列表;IPv6地址段转换模块对全写模式的IPv6地址段列表执行去除重复值的计算得到全写模式的无重复的IPv6地址段列表;IPv6地址段转换模块将全写模式的无重复的IPv6地址段列表发送给IPv6地址段朱迪树生成模块;
IPv6地址段朱迪树生成模块为全写模式的无重复的IPv6地址段列表中的每个IPv6地址段生成一个朱迪树,具体方法是:用StartIP表示一个IPv6地址段中的起始地址,用EndIP表示一个IPv6地址段中的终止地址,从StartIP开始到EndIP截止生成包含所有中间地址的朱迪树,将StartIP的地址字符串插入朱迪树中并将对应位置的值置为1,将EndIP的地址字符串插入朱迪树中并将对应位置的值置为1,然后在朱迪树中从StartIP到EndIP设置每一个位置的值为1,朱迪树中StartIP位置和EndIP位置不重复设置为1;
IPv6地址读取模块负责读取待判定的IPv6地址,并将待判定的IPv6地址发送给IPv6地址转换模块;
IPv6地址转换模块将待判定的IPv6地址转换为不缩写的IPv6地址记录形式,生成全写模式的IPv6地址,IPv6地址转换模块将全写模式的IPv6地址发送给IPv6地址朱迪树比较模块;
IPv6地址朱迪树比较模块将全写模式的IPv6地址在每个IPv6地址段生成的朱迪树中确定对应的位置,当全写模式的IPv6地址在确定的IPv6地址段生成的朱迪树中具备位置且位置对应的值为1时,全写模式的IPv6地址属于确定的IPv6地址段。
有益效果
本发明的通过构建IPv6地址段的朱迪树来快速定位IPv6地址所处于的地址段,相比现有技术IPV6地址段查询速度更快,构建IPV6地址段占用内存更少。
附图说明
图1是本发明的系统结构图。
具体实施方式
参看图1,实现本发明的一种IPV6地址段判断的方法及装置由IPv6地址段读取模块1、IPv6地址段转换模块2、IPv6地址段朱迪树生成模块3、IPv6地址读取模块4、IPv6地址转换模块5和IPv6地址朱迪树比较模块6组成;
IPv6地址段读取模块1负责读入IPv6地址种子集,并将每个IPv6地址根据IPv6地址规则生成IPv6地址段起始地址和IPv6地址段终止地址,完成生成IPv6地址段列表的工作;IPv6地址段读取模块1将IPv6地址段列表发送给IPv6地址段转换模块2;
IPv6地址段转换模块2将IPv6地址段列表转换为不缩写的IPv6地址段记录形式,生成全写模式的IPv6地址段列表;IPv6地址段转换模块2对全写模式的IPv6地址段列表执行去除重复值的计算得到全写模式的无重复的IPv6地址段列表;IPv6地址段转换模块2将全写模式的无重复的IPv6地址段列表发送给IPv6地址段朱迪树生成模块3;
IPv6地址段朱迪树生成模块3为全写模式的无重复的IPv6地址段列表中的每个IPv6地址段生成一个朱迪树,具体方法是:用StartIP表示一个IPv6地址段中的起始地址,用EndIP表示一个IPv6地址段中的终止地址,从StartIP开始到EndIP截止生成包含所有中间地址的朱迪树,将StartIP的地址字符串插入朱迪树中并将对应位置的值置为1,将EndIP的地址字符串插入朱迪树中并将对应位置的值置为1,然后在朱迪树中从StartIP到EndIP设置每一个位置的值为1,朱迪树中StartIP位置和EndIP位置不重复设置为1;
IPv6地址读取模块4负责读取待判定的IPv6地址,并将待判定的IPv6地址发送给IPv6地址转换模块5;
IPv6地址转换模块5将待判定的IPv6地址转换为不缩写的IPv6地址记录形式,生成全写模式的IPv6地址,IPv6地址转换模块5将全写模式的IPv6地址发送给IPv6地址朱迪树比较模块6;
IPv6地址朱迪树比较模块6将全写模式的IPv6地址在每个IPv6地址段生成的朱迪树中确定对应的位置,当全写模式的IPv6地址在确定的IPv6地址段生成的朱迪树中具备位置且位置对应的值为1时,全写模式的IPv6地址属于确定的IPv6地址段。

Claims (1)

1.一种IPV6地址段判断的装置,其特征在于由IPv6地址段读取模块、IPv6地址段转换模块、IPv6地址段朱迪树生成模块、IPv6地址读取模块、IPv6地址转换模块和IPv6地址朱迪树比较模块组成;
IPv6地址段读取模块负责读入IPv6地址种子集,并将每个IPv6地址根据IPv6地址规则生成IPv6地址段起始地址和IPv6地址段终止地址,完成生成IPv6地址段列表的工作;IPv6地址段读取模块将IPv6地址段列表发送给IPv6地址段转换模块;
IPv6地址段转换模块将IPv6地址段列表转换为不缩写的IPv6地址段记录形式,生成全写模式的IPv6地址段列表;IPv6地址段转换模块对全写模式的IPv6地址段列表执行去除重复值的计算得到全写模式的无重复的IPv6地址段列表;IPv6地址段转换模块将全写模式的无重复的IPv6地址段列表发送给IPv6地址段朱迪树生成模块;
IPv6地址段朱迪树生成模块为全写模式的无重复的IPv6地址段列表中的每个IPv6地址段生成一个朱迪树,具体方法是:用StartIP表示一个IPv6地址段中的起始地址,用EndIP表示一个IPv6地址段中的终止地址,从StartIP开始到EndIP截止生成包含所有中间地址的朱迪树,将StartIP的地址字符串插入朱迪树中并将对应位置的值置为1,将EndIP的地址字符串插入朱迪树中并将对应位置的值置为1,然后在朱迪树中从StartIP到EndIP设置每一个位置的值为1,朱迪树中StartIP位置和EndIP位置不重复设置为1;
IPv6地址读取模块负责读取待判定的IPv6地址,并将待判定的IPv6地址发送给IPv6地址转换模块;
IPv6地址转换模块将待判定的IPv6地址转换为不缩写的IPv6地址记录形式,生成全写模式的IPv6地址,IPv6地址转换模块将全写模式的IPv6地址发送给IPv6地址朱迪树比较模块;
IPv6地址朱迪树比较模块将全写模式的IPv6地址在每个IPv6地址段生成的朱迪树中确定对应的位置,当全写模式的IPv6地址在确定的IPv6地址段生成的朱迪树中具备位置且位置对应的值为1时,全写模式的IPv6地址属于确定的IPv6地址段。
CN202010880694.8A 2020-08-27 2020-08-27 一种ipv6地址段判断的方法及装置 Active CN112019652B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010880694.8A CN112019652B (zh) 2020-08-27 2020-08-27 一种ipv6地址段判断的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010880694.8A CN112019652B (zh) 2020-08-27 2020-08-27 一种ipv6地址段判断的方法及装置

Publications (2)

Publication Number Publication Date
CN112019652A CN112019652A (zh) 2020-12-01
CN112019652B true CN112019652B (zh) 2023-01-24

Family

ID=73502638

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010880694.8A Active CN112019652B (zh) 2020-08-27 2020-08-27 一种ipv6地址段判断的方法及装置

Country Status (1)

Country Link
CN (1) CN112019652B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630482A (zh) * 2021-08-23 2021-11-09 南京莱克贝尔信息技术有限公司 一种基于隐半马尔可夫的IPv6快速探测方法
CN114039914B (zh) * 2021-11-03 2023-08-08 中盈优创资讯科技有限公司 一种城域网存活IPv6地址与规划分析方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101945139A (zh) * 2010-06-30 2011-01-12 赛尔网络有限公司 IPv6地址存储和查找方法及相关设备
CN105530327A (zh) * 2014-10-27 2016-04-27 任子行网络技术股份有限公司 一种dns关键信息处理方法和系统
CN110505322A (zh) * 2019-08-28 2019-11-26 杭州迪普科技股份有限公司 一种ip地址段查找方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735595B2 (en) * 2000-11-29 2004-05-11 Hewlett-Packard Development Company, L.P. Data structure and storage and retrieval method supporting ordinality based searching and data retrieval
DE112010004940B4 (de) * 2009-08-13 2018-07-12 International Business Machines Corporation Automatisches Erkennen von Adressbereichen für IP-Netzwerke
CN104935676A (zh) * 2014-03-17 2015-09-23 阿里巴巴集团控股有限公司 确定ip地址段及其对应的经纬度的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101945139A (zh) * 2010-06-30 2011-01-12 赛尔网络有限公司 IPv6地址存储和查找方法及相关设备
CN105530327A (zh) * 2014-10-27 2016-04-27 任子行网络技术股份有限公司 一种dns关键信息处理方法和系统
CN110505322A (zh) * 2019-08-28 2019-11-26 杭州迪普科技股份有限公司 一种ip地址段查找方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
朱迪树(judy trie/array/tree);watter1985;《ITeye(https://www.iteye.com/blog/watter1985-1884713)》;20130609;全文 *

Also Published As

Publication number Publication date
CN112019652A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
CN112019652B (zh) 一种ipv6地址段判断的方法及装置
US6618755B1 (en) Automatically identifying subnetworks in a network
Plonka et al. Temporal and spatial classification of active IPv6 addresses
CN112653764B (zh) IPv6服务探测方法及系统、电子设备及存储介质
CN110995883A (zh) 基于EUI-64的DHCPv6固定地址配置的方法、系统及存储介质
CN111600762A (zh) 一种网络拓扑结构生成方法、装置、设备及介质
CN113315814B (zh) 一种IPv6网络边界设备快速发现方法及系统
CN103167049A (zh) 按需分配的网络地址转换方法、设备和系统
CN102184234B (zh) 用于查询、增加、更新或删除信息处理规则的方法和设备
CN114422627A (zh) 基于CANoe动态链接库的BLF数据读写与CAN报文转译方法
Qin et al. MUCM: multilevel user cluster mining based on behavior profiles for network monitoring
CN113382092B (zh) 基于图社区发现的活跃地址探测方法及装置
CN115334044A (zh) 一种面向物联网的大规模IPv6地址存活性探测方法
Shen et al. Observations of IPv6 traffic
Zheng et al. An effective target address generation method for IPv6 address scan
CN111343008B (zh) 一种用于发现IPv6加速部署状态的综合性测量方法和系统
CN113949690B (zh) IPv6种子地址的抽样方法、装置、设备及存储介质
CN112995353A (zh) 基于流量分析的IPv6地址存活性扫描系统及扫描方法
CN114500451A (zh) 一种ipv4/ipv6地址及解析装置
CN115378912B (zh) 一种活跃IPv6地址的扫描方法及系统
CN114095471A (zh) 地址转换方法、装置以及地址溯源方法、装置
CN100337446C (zh) 一种快速访问邻居设备的方法
CN112866275A (zh) 一种流量抽样方法、装置和计算机可读存储介质
Carpene et al. A survey of IPv6 address usage in the public domain name system
Lu et al. Empirical analysis of different hierarchical addressing deployments

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