一种面向物联网的大规模IPv6地址存活性探测方法与流程

文档序号:32159357发布日期:2022-11-12 01:50阅读:395来源:国知局
一种面向物联网的大规模IPv6地址存活性探测方法与流程
一种面向物联网的大规模ipv6地址存活性探测方法
技术领域
1.本发明涉及物联网技术领域,具体为一种面向物联网的大规模ipv6地址存活性探测方法。


背景技术:

2.ipv6(internet protocol version 6,互联网协议第6版),是互联网工程任务组(ietf)设计的用于替代ipv4的下一代ip协议,因其具有巨大的网络承载能力、安全高效的网络传输以及更大的创新空间,已成为全球公认的下一代互联网商业应用解决方案。物联网则是一种结合信息化工具和联网传感器的技术,其支持万物互联,已大量应用于智慧交通、智慧电网、智慧水务等领域。随着全球信息化技术及需求的不断提高,物联网终端的数量将多达百亿级甚至千亿级规模,而ip地址缺乏将成为其发展的最大瓶颈;
3.无论在资产发现、网络诊断还是安全研究方面,互联网扫描都起着基础性技术支撑的作用。经过多年的迭代推进,针对ipv4网络空间的扫描技术已经非常成熟且高效,如:masscan能够在6min内完成对ipv4全地址空间指定端口的扫描,zmap能够实现在45min内对整个ipv4地址空间的穷举扫描。随着近年ipv6的迅猛发展,对ipv6网络的现状测绘、拓扑发现和安全研究也逐渐成为热点方向。其中,最核心也是最基础的问题就是网络探测。相比于ipv4的2
32
的地址空间,ipv6具有2
128
的地址空间,如此庞大的地址空间使得传统探测方法不再适用,比如全空间穷举扫描,若在万兆链路条件下,zmapv6采用最高的配置模式进行ipv6全网空间扫描,也至少需要上亿年的时间。为此,亟需研究ipv6网络扫描,探索适用于ipv6网络空间的新式高效扫描技术。其对掌握ipv6部署和应用情况,以及为网络安全监控和威胁分析提供情报信息都具有重要意义。
4.针对ipv6环境下的地址存活性探测(地址扫描)问题,近年的研究已有一些进展。f.gont等对ipv6地址规律特征进行挖掘和分析,提出一种缩小待扫描ipv6地址空间的方法。foremski等在2016年提出基于entropy/ip的地址扫描方法,使用香农熵研究种子地址结构,并且使用贝叶斯模型去生成新的地址集合。随后,murdock等在2017年提出基于密度聚类的6gen算法,也是利用种子地址作为输入,然后聚类后生成最可能存活的新地址。2018年,gasser等首次指出种子地址的不平衡问题,对enrtopy/ip方法进行了改进,同时在6gen工作的基础上提出了新的别名检测算法,已有多数方法的基本思想是对大规模ipv6样本地址进行分析,挖掘其分布规律并构建对应的地址模型,进而通过启发式算法预测生成新的ipv6地址集,由此降低待扫描地址空间规模。这类方法的目的仅是缩小地址空间,并不是提高针对给定大规模地址集的扫描效率。针对该技术问题,本领域技术人员亟需研制一种面向物联网的大规模ipv6地址存活性探测方法。


技术实现要素:

5.本发明的目的在于提供一种面向物联网的大规模ipv6地址存活性探测方法,以解决上述背景技术存在的问题。
6.为实现上述目的,本发明提供如下技术方案:一种面向物联网的大规模ipv6地址存活性探测方法,探测方法包括以下步骤:
7.s1、将ipv6的地址类型分为:

random类型地址;

eui-64类型地址;

special_range类型地址;

embeded_ipv4类型地址;

lowbyte类型地址;

embeded_port类型地址;
8.s2、对初始待探测地址集进行合并清洗;
9.s3、然后利用目标分类算法将待探测地址集进行归类到步骤s1中相对应的地址类型;
10.s4、针对待探测地址集所划分到的不同地址类型,根据调度策略,自适应地选择探测手段对地址子集中的ipv6地址实施存活性探测。
11.优选的,所述步骤s3的分类算法为采用基于特征标识和信息熵的方法对ipv6地址进行分类,具体为:
[0012]ⅰ、识别iid部分是否包含有符合预先定义的显性特征,并根据适配的显性特征对其归类;其中,如果iid包含有“fffe”字符,则为eui-64类型地址;如果iid的大部分字节被设置为0,则为lowbyte类型地址;如果iid中嵌入网络接口的ipv4地址,则为embeded_ipv4类型地址;如果iid中嵌入在该节点上运行的主服务的tcp/udp服务端口号,则为embeded_port类型地址;
[0013]ⅱ、针对iid空间进行信息熵的计算,根据熵值大小判定其是否落在预先定义的某个区间内,如果是,则归类为special_range类型地址;
[0014]ⅲ、对于不具有显性特征且未找到匹配模式的地址,将其归类为random类型地址。
[0015]
优选的,所述步骤s1中地址类型的分类方法包括手动配置和自动配置两种方式;
[0016]
所述自动配置的方法分为两种:无状态地址自动配置和用于ipv6的动态主机配置协议;
[0017]
所述手动配置的方法具体为在已知前缀的情况下人工配置主机的ipv6地址。
[0018]
优选的,所述步骤s4中的探测方法有三种,分别为基于icmpv6协议的探测、基于tcp协议的探测和基于udp协议的探测;
[0019]
其中,地址类型若为embeded_ipv4和eui-64类型地址,则采取基于udp协议的探测方法;地址类型若为lowbyte、special_range和random类型地址,则采取基于icmpv6协议的探测方法;地址类型若为embeded_port类型地址,则采取基于tcp的探测方法。
[0020]
优选的,所述基于icmpv6协议的探测方法具体为:直接向目标地址连续发送两个请求报文,以确保目标能够收到消息,当目标主机做出响应则判定为活跃主机;
[0021]
所述基于tcp协议的探测方法具体为:主动向目标主机的某一端口发送syn或ack包,只要接收到来自目标主机的回复报文,就说明目标主机处于活跃状态;
[0022]
所述基于udp协议的探测方法具体为:主动向目标主机的某一端口发送udp报文,只要接收到来自目标主机的回复报文,就说明目标主机处于活跃状态。
[0023]
与现有技术相比,本发明的有益效果为:
[0024]
本发明提出一种基于地址类型自适应的融合探测方法,首先对初始待探测地址集进行合并清洗,然后利用目标分类算法将待探测地址集进行分类,进而针对不同类型的地址子集,根据调度策略,自适应地选择探测手段对地址子集中的ipv6地址实施存活性探测,
从而提高针对大规模ipv6地址的存活性探测的整体效率。
附图说明
[0025]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0026]
图1为本发明探测方法的原理示意图;
[0027]
图2为本发明中基于icmpv6协议的探测过程示意图;
[0028]
图3为本发明中基于tcp协议的探测过程示意图;
[0029]
图4为本发明中基于udp协议的探测过程示意图。
具体实施方式
[0030]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0031]
请参阅图1-4,本发明提供一种技术方案:一种面向物联网的大规模ipv6地址存活性探测方法,所述探测方法包括以下步骤:
[0032]
s1、将ipv6的地址类型分为:

random类型地址;

eui-64类型地址;

special_range类型地址;

embeded_ipv4类型地址;

lowbyte类型地址;

embeded_port类型地址;
[0033]
s2、对初始待探测地址集进行合并清洗;
[0034]
s3、然后利用目标分类算法将待探测地址集进行归类到步骤s1中相对应的地址类型;
[0035]
s4、针对待探测地址集所划分到的不同地址类型,根据调度策略,自适应地选择探测手段对地址子集中的ipv6地址实施存活性探测。
[0036]
具体的,所述步骤s3的分类算法为采用基于特征标识和信息熵的方法对ipv6地址进行分类,具体为:
[0037]ⅰ、识别iid部分是否包含有符合预先定义的显性特征,并根据适配的显性特征对其归类;其中,如果iid包含有“fffe”字符,则为eui-64类型地址;如果iid的大部分字节被设置为0,则为lowbyte类型地址;如果iid中嵌入网络接口的ipv4地址,则为embeded_ipv4类型地址;如果iid中嵌入在该节点上运行的主服务的tcp/udp服务端口号,则为embeded_port类型地址;
[0038]ⅱ、针对iid空间进行信息熵的计算,根据熵值大小判定其是否落在预先定义的某个区间内,如果是,则归类为special_range类型地址;
[0039]ⅲ、对于不具有显性特征且未找到匹配模式的地址,将其归类为random类型地址。
[0040]
具体的,所述步骤s1中地址类型的分类方法包括手动配置和自动配置两种方式;
[0041]
所述自动配置的方法分为两种:无状态地址自动配置和用于ipv6的动态主机配置
协议;
[0042]
所述手动配置的方法具体为在已知前缀的情况下人工配置主机的ipv6地址。
[0043]
具体的,所述步骤s4中的探测方法有三种,分别为基于icmpv6协议的探测、基于tcp协议的探测和基于udp协议的探测;
[0044]
其中,地址类型若为embeded_ipv4和eui-64类型地址,则采取基于udp协议的探测方法;地址类型若为lowbyte、special_range和random类型地址,则采取基于icmpv6协议的探测方法;地址类型若为embeded_port类型地址,则采取基于tcp的探测方法。
[0045]
具体的,所述基于icmpv6协议的探测方法具体为:直接向目标地址连续发送两个请求报文,以确保目标能够收到消息,当目标主机做出响应则判定为活跃主机;
[0046]
所述基于tcp协议的探测方法具体为:主动向目标主机的某一端口发送syn或ack包,只要接收到来自目标主机的回复报文,就说明目标主机处于活跃状态;
[0047]
所述基于udp协议的探测方法具体为:主动向目标主机的某一端口发送udp报文,只要接收到来自目标主机的回复报文,就说明目标主机处于活跃状态。
[0048]
实施例:
[0049]
一种面向物联网的大规模ipv6地址存活性探测方法,所述探测方法包括以下步骤:
[0050]
s1、将ipv6的地址类型分为:

random类型地址;

eui-64类型地址;

special_range类型地址;

embeded_ipv4类型地址;

lowbyte类型地址;

embeded_port类型地址;
[0051]
ipv6地址配置有手动和自动两种方式。其中,自动配置又可分为两种:无状态地址自动配置(slaac)和用于ipv6的动态主机配置协议(通常是dhcpv6协议),手动配置就是在已知前缀的情况下人工配置主机的ipv6地址;
[0052]
其中slaac的设计目标是让接入ipv6网络的主机能够自动获取到网络前缀并生成可用的ipv6地址。在第一次连接到网络时,主机会以组播方式向本地链路上的路由器发送一条路由器请求(router solicitation,rs)消息。路由器则以路由器通告(router-advertisement,ra)消息进行应答,其中包含其所属的前缀等网络层参数。主机从中获取前缀,结合本地生成的接口标识符(iid)即可以生成ipv6地址。
[0053]
传统的iid通过主机网卡的mac地址生成,这种方式被称为eui-64地址。例如,主机网卡mac地址为00:1b:38:83:88:3c,对应的iid为021b:38ff:fe83:883c,其中插入的ff:fe即为明显特征。为了保护主机对外通信时的匿名性,微软提出一种保护隐私的iid随机生成方式(rfc4941)。可见,通过slacc方式配置的地址有两种:eui-64地址和随机地址;
[0054]
dhcpv6是一种基于c/s架构的有状态地址配置协议。服务端不仅可以给客户端实施有策略的地址分配,还可以记录地址与客户端主机的对应关系。在dhcpv6服务中,客户端得到的地址是由服务器根据预先配置的地址范围和策略分配的,通常是在指定范围内按顺序分配地址。但由于这种分配策略会大幅缩小地址扫描的搜索空间,为此rfc5157、rfc7707建议应该改为从大规模地址池中随机分配地址。rfc7217进而提出一种能够生成不遵循任何特定模式的地址算法。可见,通过dhcpv6分配的地址有两种:特定范围地址和随机地址
[0055]
s2、对包括alexa1m、umbrella、statvoo、ripe、rapid7、bitnodes等项目提供的公开数据地址集进行合并清洗;
[0056]
s3、然后利用目标分类算法将待探测地址集进行归类到步骤s1中相对应的地址类型;
[0057]
且由于ipv6地址应用16进制表示法时,包含32个16进制字符,故在语义表达上具有明显优势。通过对大量ipv6地址的统计分析,尤其对手动分配的地址,可以归纳出其所具有的特征标识。如:对于eui-64地址,其iid部分必然包含“fffe”字段;对于embeded_ipv4类型地址,其iid部分必然包含ipv4地址,且位于ipv6地址的最后4个字段(如:2001:db8::192.1.2.3),因此可以提取ipv6地址的最后4个字段,如果值都小于28,即可判断是embeded_ipv4类型地址。另外,虽然当前操作系统所采用的隐私扩展方式不尽相同,但其本质仍以散列计算方法为核心。依据散列算法的特性,对于大量输入,其计算结果符合均匀分布,生成的散列值具有良好的随机性。而信息熵可以用于表征一个信源的不确定性、分散性、无序性和变异性等。若信源样本差异较大,则信息熵的值就相应较大。据此,利用信息熵的特性,ipv6地址的随机程度和无序程度能够通过信息熵的计算得以体现,因此步骤s3的分类算法为采用基于特征标识和信息熵的方法对ipv6地址进行分类,具体为:
[0058]ⅰ、识别iid部分是否包含有符合预先定义的显性特征,并根据适配的显性特征对其归类;其中,如果iid包含有“fffe”字符,则为eui-64类型地址;如果iid的大部分字节被设置为0(最小的字节除外),则为lowbyte类型地址;如果iid中嵌入网络接口的ipv4地址,则为embeded_ipv4类型地址;如果iid中嵌入在该节点上运行的主服务的tcp/udp服务端口号,则为embeded_port类型地址;
[0059]ⅱ、针对iid空间进行信息熵的计算,根据熵值大小判定其是否落在预先定义的某个区间内,如果是,则归类为special_range类型地址;
[0060]ⅲ、对于不具有显性特征且未找到匹配模式的地址,将其归类为random类型地址;
[0061]
s4、针对待探测地址集所划分到的不同地址类型,根据调度策略,自适应地选择探测手段对地址子集中的ipv6地址实施存活性探测。
[0062]
其中ipv6主机存活性探测就是判断ipv6地址是否可达。若该ipv6地址可达,说明其地址主机为活跃状态,相反,若地址不可达,则其地址主机为不活跃状态,因此探测方法有三种,分别为基于icmpv6协议的探测、基于tcp协议的探测和基于udp协议的探测;
[0063]
其中,地址类型若为embeded_ipv4和eui-64类型地址,则采取基于udp协议的探测方法;udp探测方法的基本原理是主动向目标主机的某一端口发送udp报文,只要接收到来自目标主机的回复报文,就说明目标主机处于活跃状态。常见的应用是基于dns的探测方法。扫描主机向目标地址发送dns请求报文,如果目标地址存活且53端口开放,就会回复dns响应报文;如果地址存活但端口未开放,会返回一个unreachable(目标不可达)的icmp数据包;如果地址不存活,则不会响应请求报文;
[0064]
地址类型若为lowbyte、special_range和random类型地址,则采取基于icmpv6协议的探测方法;本方法不需要指定端口可以直接向目标地址连续发送两个请求报文,以确保目标能够收到消息,当目标主机做出响应则判定为活跃主机,由于icmpv6协议的请求/响应机制,一般活跃主机都会做出响应,所以这种扫描方法适用于大部分场景。
[0065]
地址类型若为embeded_port类型地址,则采取基于tcp的探测方法;本方法主动向目标主机的某一端口发送syn或ack包,只要接收到来自目标主机的回复报文,就说明目标主机处于活跃状态,例如当向目标主机直接发送ack数据包时,如果目标主机存活,就会返
回一个rst数据包以终止这个不正常的tcp连接。也可以发送正常的syn数据包,如果目标主机返回syn/ack或者rst数据包,也可以证明目标主机为存活状态。
[0066]
通过对比实验也可以验证本发明所提方法的有效性。对包括alexa1m、umbrella、statvoo、ripe、rapid7、bitnodes等项目提供的公开数据集进行合并清洗,得到约1500万个有效的ipv6地址,然后从中随机抽取50万个地址作为测试使用的数据集。分别从探测的准确率和时间开销考察本发明提出的方法与各单种探测方法的对比。准确率的计算方式为:
[0067][0068]
式中num_hitaddress()指的是该探测方法探测到为存活的地址的数量,n为探测方法的数量。本发明方法的准确率为93%,要明显高于其它探测方法(基于dns的探测方法准确率为79%,基于icmpv6的探测方法准确率为76%,基于tcp的探测方法准确率为45%)。在时间开销上,虽然本专利方法要先对地址集进行分类,但总体时间开销与其它探测方法差异不大,属于可接受范围。
[0069]
本发明提出一种基于地址类型自适应的融合探测方法,首先对初始待探测地址集进行合并清洗,然后利用目标分类算法将待探测地址集进行分类,进而针对不同类型的地址子集,根据调度策略,自适应地选择探测手段对地址子集中的ipv6地址实施存活性探测,从而提高针对大规模ipv6地址的存活性探测的整体效率。
[0070]
在本发明的描述中,要理解的是,术语“同轴”、“底部”、“一端”、“顶部”、“中部”、“另一端”、“上”、“一侧”、“顶部”、“内”、“前部”、“中央”、“两端”等指示的方位或位置关系为基于附图的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0071]
在本发明中,除非另有明确的规定和限定,术语“安装”、“设置”、“连接”、“固定”、“旋接”等术语应做广义理解,除非另有明确的限定,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0072]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行变型,本发明的范围由所附权利要求及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1