CN113315814B - 一种IPv6网络边界设备快速发现方法及系统 - Google Patents
一种IPv6网络边界设备快速发现方法及系统 Download PDFInfo
- Publication number
- CN113315814B CN113315814B CN202110502369.2A CN202110502369A CN113315814B CN 113315814 B CN113315814 B CN 113315814B CN 202110502369 A CN202110502369 A CN 202110502369A CN 113315814 B CN113315814 B CN 113315814B
- Authority
- CN
- China
- Prior art keywords
- address
- boundary
- detection
- preset range
- acquiring
- 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
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000001514 detection method Methods 0.000 claims abstract description 169
- 239000000523 sample Substances 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
-
- 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/4541—Directories for service discovery
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/668—Internet protocol [IP] address subnets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种IPv6网络边界设备快速发现方法及系统,该方法包括:获取预设范围网络内的任一IPv6网络边界设备地址;根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。本发明提高了探测IPv6网络边界设备的效率,能实时进行设备探测,无需额外的数据资源依赖。
Description
技术领域
本发明涉及网络设备发现技术领域,尤其涉及一种IPv6网络边界设备快速发现方法及系统。
背景技术
IPv6作为下一代互联网协议,是未来互联网的重要应用基石,它的广泛应用将决定性地推动移动互联网、物联网、工业互联网、5G和云计算等应用的快速发展。
IPv6满足了多种网络应用对于IP地址资源爆炸式增长的需求,但作为新式部署的网络协议,由于历史应用以及研究范围有限,也带来了一定的安全问题,比如,协议格式问题、地址隐私问题、报文分片和扩展头部问题等。对于网络空间中潜在的安全问题,一般采用网络设备发现方法进行设备与服务探测,进而分析其中存在的安全威胁。
在IPv4网络空间的安全研究与管理中,采用的网络设备发现方法主要为网络空间遍历枚举探测方法。由于IPv4的32位地址空间有限,将网络空间遍历枚举探测方法应用于IPv4网络空间的研究十分广泛,效果也极佳,比如,1Gbps的探测速度可以在1小时内遍历完毕整个IPv4网络空间。但是,由于IPv6引入的128位海量地址空间,传统的遍历枚举探测方法不易实现,以相同的探测速度仅遍历IPv6中某个地址的64位标识符空间,便需要4万余年的时间,耗费时间多,探测效率很低。因此,现在亟需一种IPv6网络边界设备快速发现方法及系统来解决上述问题。
发明内容
针对现有技术存在的问题,本发明提供一种IPv6网络边界设备快速发现方法及系统。
本发明提供一种IPv6网络边界设备快速发现方法,包括:
获取预设范围网络内的任一IPv6网络边界设备地址;
根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;
对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;
根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
根据本发明提供的一种IPv6网络边界设备快速发现方法,所述对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址,包括:
按照倒序的方式,对所述探测目标地址从第64位到第32位逐位进行修改,获取修改后的探测目标地址。
根据本发明提供的一种IPv6网络边界设备快速发现方法,所述对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀,包括:
S1、对修改后的探测目标地址发送第一探测包;
S2、若判断获知回复报文对应的源地址,与所述IPv6网络边界设备地址不相同,或所述源地址不存在,则根据上一轮修改后的探测目标地址对应的子网前缀长度,得到目标子网前缀;
S3、若判断获知回复报文对应的源地址,与所述IPv6网络边界设备地址相同,则对修改后的探测目标地址继续进行逐位倒序修改,并再次执行S1,直至回复报文对应的源地址,与所述IPv6网络边界设备地址不相同,或所述源地址不存在。
根据本发明提供的一种IPv6网络边界设备快速发现方法,根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备,包括:
根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,并对回复报文进行判断;
若判断获知所述回复报文为错误消息报文,则获取所述预设范围网络中对应子网内的IPv6网络边界设备。
根据本发明提供的一种IPv6网络边界设备快速发现方法,所述方法还包括:
若判断获知所述回复报文为正确消息报文,则构建新的虚构地址,并对所述新的虚构地址发送第二探测包,直至获取到的所述回复报文为错误消息报文,得到所述预设范围网络中对应子网内的IPv6网络边界设备。
根据本发明提供的一种IPv6网络边界设备快速发现方法,所述方法还包括:
获取所述预设范围网络内多个不同的目标子网前缀,并根据每个目标子网前缀构建对应的虚构地址;
根据遍历枚举法,对每个虚构地址发送第二探测包,获取所述预设范围内的IPv6网络边界设备。
根据本发明提供的一种IPv6网络边界设备快速发现方法,所述探测包包括ICMPv6、TCP和UDP数据包。
本发明还提供一种IPv6网络边界设备快速发现系统,包括:
设备地址获取模块,用于获取预设范围网络内的任一IPv6网络边界设备地址;
倒序探测模块,用于根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;
子网前缀获取模块,用于对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;
目标设备获取模块,用于根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述IPv6网络边界设备快速发现方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述IPv6网络边界设备快速发现方法的步骤。
本发明提供的IPv6网络边界设备快速发现方法及系统,通过对任一IPv6网络边界设备地址对应的探测目标地址进行逐位倒序修改,并对修改后的探测目标地址每次发送一个探测包,便可获取回复报文的地址,提高了探测IPv6网络边界设备的效率,然后通过遍历预设范围网络中分配的子网前缀,得到预设范围网络中对应子网内的IPv6网络边界设备,能实时进行设备探测,无需额外的数据资源依赖。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的IPv6网络边界设备快速发现方法的流程示意图;
图2为本发明提供的固定网络环境下的IPv6网络边界设备拓扑示意图;
图3为本发明提供的移动网络环境下的IPv6网络边界设备拓扑示意图;
图4为本发明提供的IPv6网络边界设备快速发现系统的结构示意图;
图5为本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
IPv6提供了2^128的编码地址空间,包括64位的地址前缀空间和64位的标识符空间,解决了IPv4地址资源枯竭问题,确保互联网中每个设备都能有对应的全球可路由的IPv6地址。IPv6同时引入了简化的报头格式与全新的地址分配模式,优化了网络传输效率,也简化了地址管理负担。
在IPv4网络中,主要通过遍历枚举探测网络边界设备,发现活跃设备的方法是通过轮询32位网络空间中的所有地址,需要发送2^32个探测数据包,根据被探测节点返回的应答包来发现活跃的地址;在IPv6网络中,依据传统的扫描方式,仅仅发现一个网络边界设备,便需要至少探测其管理前缀下的64位标识符空间,即发送2^64个数据包,这将占用大量的网络资源和非常长的时间,而且其时效性也无法被接受。
IPv6网络边界设备是指在IPv6网络拓扑中位于最后一跳的设备,包括固定网络环境下的家庭网关路由器和移动网络环境下的移动终端设备。由于IPv6引入的全新地址分配策略以及全球可路由的地址特性,该类网络边界设备在网络空间中的功能作用更加重要。一方面,其为自身和内部网络设备提供基本的网络访问和报文转发服务;另一方面,其担负着IPv6地址前缀管理的重任以及安全策略部署的职责。
现有的IPv6活跃地址发现技术,主要分为三类:其一,基于地址生成算法的地址模式和结构识别方法,需要一定的种子地址集作为算法的输入,通过算法对于地址模式和结构的识别,生成待探测的目标地址集,再利用发包探活技术对该目标地址集进行探测,发现其中活跃的地址,该方法运行的效果受到种子集优劣以及算法运行复杂度的影响。其二,基于各类数据资源的被动收集方法,比如从DNS数据库中进行IPv6地址的提取,从Web访问日志中获取客户端IPv6地址,该类方法受限于各类数据资源,且提取到的地址为历史数据。其三,活跃地址集维持方法(hitlists),该类方法维持实时活跃的IPv6地址集合,但通常结合前两种方法进行使用。上述已有的方法在一定程度上获取到了部分IPv6活跃地址,但与IPv4地址探测技术相比,仍不具备大规模全网络探测扫描的可行性,且存在种种局限:其一,均以128位终端地址作为探测目标,涵盖面过于宽泛,不易实现;其二,容易受到种子集合品质以及算法运行复杂度的影响。
图1为本发明提供的IPv6网络边界设备快速发现方法的流程示意图,如图1所示,本发明提供了一种IPv6网络边界设备快速发现方法,包括:
步骤101,获取预设范围网络内的任一IPv6网络边界设备地址。
在本发明中,预设范围网络内存在多个IPv6网络边界设备,预设范围网络可以是运营商网络的IPv6前缀下小规模范围的网络。针对运营商网络的IPv6前缀,发起小规模随机探测,获得任一IPv6网络边界设备地址。
可选地,任一IPv6网络边界设备地址可以是探测任意随机生成的探测目标地址所获取到的一个活跃IPv6网络边界设备地址。
步骤102,根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;
步骤103,对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀。
在本发明中,根据IPv6网络边界设备地址,得到对应的探测目标地址,具体地,通过小规模的随机扫描获取一个活跃的IPv6网络边界设备地址2001:db8:1:1:IID,然后得到IPv6网络边界设备地址对应的探测目标地址2001:db8:0:1:IID。对探测目标地址按照倒序的方式,依次从后往前逐位修改探测目标地址,每修改一次位数,则向修改后的探测目标地址发送第一探测包进行探测,获取回复报文消息的探测结果,根据探测结果得到运营商网络分配的子网前缀长度,以根据子网前缀长度得到预设范围网络内的目标子网前缀。
可选地,第一探测包可以是Ping6探测包,以IPv6为网络层协议的任意类型数据包。
步骤104,根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
在本发明中,通过遍历枚举法,遍历探测运营商网络下的IPv6子网前缀时,根据目标子网前缀构建得到虚构地址,虚拟地址为不存在的地址,可以通过随机生成的方式被获取。需要说明的是,IPv6全新的地址分配策略将128位地址中的右侧64位空间作为标识符空间,而全局主机地址是通过将边界设备管理的64位前缀与64位标识符合并生成的。64位无限制的标识符空间和实际有限的主机数量可以使得“不存在地址”任意随机生成。
进一步地,对目标子网前缀下的不存在地址发送第二探测包进行探测,得到回复报文消息该回复报文消息中可以携带有设备型号、设备地址和“ICMPv6目标不可达消息”等,从而可以获得运营商网络中预设范围网络对应子网内的IPv6网络边界设备。
可选地,第二探测包可以与第一探测包相同,也可以不相同。
可选地,本发明所提供的IPv6网络边界设备快速发现方法可以适用于运营商固定网络环境和移动网络环境,也可以适用于企业网络环境。
本发明提供的IPv6网络边界设备快速发现方法,通过对任一IPv6网络边界设备地址对应的探测目标地址进行逐位倒序修改,并对修改后的探测目标地址每次发送一个探测包,便可获取回复报文的地址,提高了探测IPv6网络边界设备的效率,然后通过遍历预设范围网络中分配的子网前缀,得到预设范围网络中对应子网内的IPv6网络边界设备,能实时进行设备探测,无需额外的数据资源依赖。
在上述实施例的基础上,所述对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址,包括:
按照倒序的方式,对所述探测目标地址从第64位到第32位逐位进行修改,获取修改后的探测目标地址。
在本发明中,采用IPv6子网前缀长度发现技术(邻位倒序探测技术),通过小规模的随机扫描获取一个活跃的IPv6网络边界设备地址2001:db8:1:1:IID,然后得到IPv6网络边界设备地址对应的探测目标地址2001:db8:0:1:IID,按照二进制位的倒序方式,对IPv6网络边界设备地址对应的探测目标地址从第64位依次到第32位逐位进行修改,获取每次修改完后的探测目标地址,并对每次修改完的探测目标地址进行探测。
在上述实施例的基础上,所述对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀,包括:
S1、对修改后的探测目标地址发送第一探测包;
S2、若判断获知回复报文对应的源地址,与所述IPv6网络边界设备地址不相同,或所述源地址不存在,则根据上一轮修改后的探测目标地址对应的子网前缀长度,得到目标子网前缀;
S3、若判断获知回复报文对应的源地址,与所述IPv6网络边界设备地址相同,则对修改后的探测目标地址继续进行逐位倒序修改,并再次执行S1,直至回复报文对应的源地址,与所述IPv6网络边界设备地址不相同,或所述源地址不存在。
在本发明中,对修改后的探测目标地址发送第一探测包,使得对应的网络边界设备产生回复报文,并将网络边界设备自身的全局IPv6地址作为回复报文的源地址,从而基于修改后的探测目标地址,得到对应的源地址,并对该源地址进行判断,若回复报文回复该源地址不存在,或者回复报文回复的源地址与IPv6网络边界设备地址不相同,则根据上一轮修改后的探测目标地址修改的位置,可以得到子网划分的边界,而修改位所在的位数即为子网前缀的长度。若回复报文对应的源地址与IPv6网络边界设备地址相同,则按照倒序的方式从第64位到第32位逐位修改探测目标地址,然后继续向修改后的探测目标地址发送第一探测包,获取修改后的探测目标地址回复报文对应的源地址,直至判断出回复报文回复该源地址不存在,或者回复报文回复该源地址与所述IPv6网络边界设备地址不相同。
在一实施例中,对于修改到第60位的探测目标地址2001:db8:0:8:IID,探测得到了相同的边界设备回复报文,而对于修改到第59位的探测目标地址2001:db8:0:10:IID,探测没有收到回复,则可以认定子网前缀长度为60。
在上述实施例的基础上,根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备,包括:
根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,并对回复报文进行判断;
若判断获知所述回复报文为错误消息报文,则获取所述预设范围网络中对应子网内的IPv6网络边界设备。
在本发明中,目标子网前缀构建的虚构地址为IPv6网络边界设备管理IPv6前缀下的任意不存在地址,通过向IPv6网络边界设备管理IPv6前缀下的任意不存在地址发送第二探测包,对回复报文进行判断,如果判断获知对应的边界设备产生错误消息报文作为回复,则将IPv6网络边界设备自身的全局IPv6地址作为回复报文的源地址。然后通过分析回复报文,便可以提取出边界设备的IPv6地址。
具体地,本发明利用RFC4443(Request For Comments,简称RFC,指一系列以编号排定的文件)中规定的互联网控制消息报文工作,主要包括属于错误控制消息之一的“ICMPv6目标不可达消息”。当一个数据包无法被转发到报文所指定的目标地址时,处理数据包的路由器或者原始节点自身应该生成“ICMPv6目标不可达消息”,作为对该数据包的回复。由于IPv6地址全球可路由的特性,如果向IPv6网络边界设备管理IPv6前缀下的任意不存在地址发包探测,可以使得对应的边界设备产生“ICMPv6目标不可达消息”报文作为回复。
由于IPv6的编码地址空间中存在巨大的64位标识符空间,不存在地址可以被任意生成,本发明可以将发现单个IPv6网络边界设备的发包数量从2^64个降低至1个,无需遍历轮询所有的IPv6地址。利用上述单个IPv6网络边界设备快速发现技术与探测原理,运营商网络的IPv6子网前缀长度可以被识别出来,进一步通过遍历枚举探测运营商IPv6前缀下的所有子网前缀,比如2001:db8::/32,整个运营商网络下的IPv6网络边界设备都可以被快速发现。
可选地,第二探测包可以是以IPv6为网络层协议的任意类型数据包,可以与第一探测包相同,也可以不相同。
可选地,错误消息报文可以是“ICMPv6目标不可达消息”,也可以是“ICMPv6超时消息”(可用于发现存在路由循环漏洞的设备)、“ICMPv6包过大消息”和“ICMPv6参数问题消息”。
在上述实施例的基础上,所述方法还包括:
若判断获知所述回复报文为正确消息报文,则构建新的虚构地址,并对所述新的虚构地址发送第二探测包,直至获取到的所述回复报文为错误消息报文,得到所述预设范围网络中对应子网内的IPv6网络边界设备。
在本发明中,通过向IPv6网络边界设备管理IPv6前缀下的任意不存在目标地址发送第二探测包,对回复报文进行判断,如果回复报文为正确消息报文,则表明探测包数据已经被成功发送给该目标地址。然后根据小规模随机探测技术随机生成新的不存在地址,对新的不存在地址发送第二探测包进行探测,直至获知边界设备产生错误消息报文作为回复,则将IPv6网络边界设备自身的全局IPv6地址作为回复报文的源地址。然后通过分析回复报文,便可以提取出边界设备的IPv6地址。在本发明中,正确消息报文为ICMPv6回声回复消息。
在上述实施例的基础上,所述方法还包括:
获取所述预设范围网络内多个不同的目标子网前缀,并根据每个目标子网前缀构建对应的虚构地址;
根据遍历枚举法,对每个虚构地址发送第二探测包,获取所述预设范围内的IPv6网络边界设备。
在本发明中,预设范围网络内存在多个不同的目标子网,可以采用大规模IPv6网络边界设备快速发现技术:即当识别出目标运营商网络的IPv6子网前缀长度后,针对每个子网前缀发送第二探测包,以探测一个不存在地址(即构建子网前缀对应的虚构地址),通过遍历枚举该运营商IPv6前缀下的所有子网前缀,便可以获取运营商网络下所有的IPv6网络边界设备。虽然IPv6的128位终端地址数量几乎是无限的,然而其子网前缀的数量却是有限的。以2001:db8::/32为例,当探测出其子网前缀长度为60后,其子网前缀数量仅为2^28个。当前的扫描速度完全可以在可行的资源条件下完成对其的遍历枚举探测。
在上述实施例的基础上,所述探测包包括ICMPv6、TCP和UDP数据包。
在本发明中,探测包为Ping6探测包,可以是以IPv6为网络层协议的任意类型数据包,包括ICMPv6、TCP和UDP数据包,探测包的目标地址为不存在的地址。
图2为本发明提供的固定网络环境下的IPv6网络边界设备拓扑示意图,如图2所示,位于网络拓扑中最后一跳的路由器设备,以及对应网络的子网划分信息通过以下过程得到:IPv6网络边界(IPv6Network Periphery)中存在多个用户侧网关路由器(CPERouters)。网络边界设备的发现是基于IPv6新型地址分配策略与ICMPv6控制消息报文的,通过向广域网下的网络边界设备管理IPv6前缀(即WAN(IPv6)Prefix)下的任意不存在地址(NX WAN(IPv6)Address),或者局域网下的网络边界设备管理IPv6前缀(即LAN(IPv6)Prefix)下的任意不存在地址(NX Host(IPv6)Address)发送Ping6报文,使得网络边界设备对其做出响应,返回“ICMPv6目标不可达消息”报文,并将自身的全局IPv6地址(WAN(IPv6)Address)作为回复报文的源地址,从而发现IPv6网络下的网络边界设备。根据IPv6地址分配策略,每个网络边界设备至少能够分配得到一个长度小于64位的子网前缀地址(LAN(IPv6)Address),并且选择其中的某个64位长度的前缀(Subnet(IPv6)Address)组建内部网络使用,而子网前缀的数量通常是有限的。通过小规模探测技术可以获取到固定网络环境下分配的子网前缀(LAN(IPv6)Prefix),进而通过遍历该固定网络环境下的所有IPv6子网前缀,即对于每个子网前缀探测一个不存在的主机地址(NX Host(IPv6)Address),可以获得该固定网络环境内所有的IPv6网络边界设备。
图3为本发明提供的移动网络环境下的IPv6网络边界设备拓扑示意图,如图3所示,在移动网络环境中,可能会存在多个基站以供移动设备实现网络切换,在本发明中以单一的基站为例,IPv6网络边界(IPv6 Network Periphery)中存在多个移动用户设备,移动用户设备(User Equipment)与基站网络之间通过无线电接入(Radio Access),通过IPv6地址分配策略保证每个移动用户设备至少能够分配得到一个长度至多为64位的移动用户设备前缀地址(UE(IPv6)Prefix),以生成设备地址(UE(IPv6)Address)。通过小规模探测技术可以获取到移动网络环境下分配的移动用户设备前缀长度,进而通过遍历该移动网络环境下的所有IPv6网络前缀,对于每个网络前缀探测一个不存在地址(NX UE(IPv6)Address),可以获得该移动网络环境内所有的IPv6网络边界设备。
本发明从全新的探测角度出发,以网络边界设备为目标,利用IPv6新型地址分配策略与ICMPv6控制消息报文发现IPv6网络边界设备的方法,解决了IPv6网络空间节点的探测问题,来快速获取IPv6网络边界设备以及对应的子网边界信息。该方法具有以下优点:针对某个IPv6网络边界设备,本发明通过探测一次即发送一个探测包便可以获取其地址,而不必遍历64位标识符空间,具有极高的效率;已有的IPv6地址发现技术需要依赖于某种地址生成算法或者额外的数据资源,比如DNS服务,本发明可以实时即时地单独运行来进行设备探测,无需任何额外的数据资源依赖;此外,本发明使得普遍认为的“IPv6空间扫描不具备可行性和有效性”的观点不再准确,通过本发明可以对IPv6网络空间进行大规模高效率的扫描。
图4为本发明提供的IPv6网络边界设备快速发现系统的结构示意图,如图4所示,本发明提供了一种IPv6网络边界设备快速发现系统,包括设备地址获取模块401、倒序探测模块402、子网前缀获取模块403和目标设备获取模块404,其中,设备地址获取模块401用于获取预设范围网络内的任一IPv6网络边界设备地址;倒序探测模块402用于根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;子网前缀获取模块403用于对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;目标设备获取模块404用于根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
本发明提供的IPv6网络边界设备快速发现系统,通过对任一IPv6网络边界设备地址对应的探测目标地址进行逐位倒序修改,并对修改后的探测目标地址每次发送一个探测包,便可获取回复报文的地址,提高了探测IPv6网络边界设备的效率,然后通过遍历预设范围网络中分配的子网前缀,得到预设范围网络中对应子网内的IPv6网络边界设备,能实时进行设备探测,无需额外的数据资源依赖。
可选地,IPv6网络边界设备快速发现系统还可以包括判断单元,该判断单元可以设置在目标设备获取模块404中,用于根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,并对回复报文进行判断;若判断获知所述回复报文为错误消息报文,则获取所述预设范围网络中对应子网内的IPv6网络边界设备。
可选地,IPv6网络边界设备快速发现系统还可以同时获取预设范围网络内多个不同的目标子网前缀,并根据每个目标子网前缀构建对应的虚构地址;根据遍历枚举法,对每个虚构地址发送第二探测包,获取预设范围内的IPv6网络边界设备。
图5为本发明提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(processor)501、通信接口(Communications Interface)502、存储器(memory)503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。处理器501可以调用存储器503中的逻辑指令,以执行IPv6网络边界设备快速发现方法,该方法包括:获取预设范围网络内的任一IPv6网络边界设备地址;根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
此外,上述的存储器503中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的IPv6网络边界设备快速发现方法,该方法包括:获取预设范围网络内的任一IPv6网络边界设备地址;根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的IPv6网络边界设备快速发现方法,该方法包括:获取预设范围网络内的任一IPv6网络边界设备地址;根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种IPv6网络边界设备快速发现方法,其特征在于,包括:
获取预设范围网络内的任一IPv6网络边界设备地址;
根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;
对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;
根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
2.根据权利要求1所述的IPv6网络边界设备快速发现方法,其特征在于,所述对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址,包括:
按照倒序的方式,对所述探测目标地址从第64位到第32位逐位进行修改,获取修改后的探测目标地址。
3.根据权利要求1所述的IPv6网络边界设备快速发现方法,其特征在于,所述对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀,包括:
S1、对修改后的探测目标地址发送第一探测包;
S2、若判断获知回复报文对应的源地址,与所述IPv6网络边界设备地址不相同,或所述源地址不存在,则根据上一轮修改后的探测目标地址对应的子网前缀长度,得到目标子网前缀;
S3、若判断获知回复报文对应的源地址,与所述IPv6网络边界设备地址相同,则对修改后的探测目标地址继续进行逐位倒序修改,并再次执行S1,直至回复报文对应的源地址,与所述IPv6网络边界设备地址不相同,或所述源地址不存在。
4.根据权利要求1所述的IPv6网络边界设备快速发现方法,其特征在于,根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备,包括:
根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,并对回复报文进行判断;
若判断获知所述回复报文为错误消息报文,则获取所述预设范围网络中对应子网内的IPv6网络边界设备。
5.根据权利要求4所述的IPv6网络边界设备快速发现方法,其特征在于,所述方法还包括:
若判断获知所述回复报文为正确消息报文,则构建新的虚构地址,并对所述新的虚构地址发送第二探测包,直至获取到的所述回复报文为错误消息报文,得到所述预设范围网络中对应子网内的IPv6网络边界设备。
6.根据权利要求1所述的IPv6网络边界设备快速发现方法,其特征在于,所述方法还包括:
获取所述预设范围网络内多个不同的目标子网前缀,并根据每个目标子网前缀构建对应的虚构地址;
根据遍历枚举法,对每个虚构地址发送第二探测包,获取所述预设范围内的IPv6网络边界设备。
7.根据权利要求1所述的IPv6网络边界设备快速发现方法,其特征在于,所述探测包包括ICMPv6、TCP和UDP数据包。
8.一种IPv6网络边界设备快速发现系统,其特征在于,包括:
设备地址获取模块,用于获取预设范围网络内的任一IPv6网络边界设备地址;
倒序探测模块,用于根据所述IPv6网络边界设备地址,获取对应的探测目标地址,并对所述探测目标地址进行逐位倒序修改,得到修改后的探测目标地址;
子网前缀获取模块,用于对所述修改后的探测目标地址发送第一探测包,并根据探测结果,获取所述预设范围网络内的目标子网前缀;
目标设备获取模块,用于根据遍历枚举法,对根据所述目标子网前缀构建的虚构地址发送第二探测包,获取所述预设范围网络中对应子网内的IPv6网络边界设备。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述IPv6网络边界设备快速发现方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述IPv6网络边界设备快速发现方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110502369.2A CN113315814B (zh) | 2021-05-08 | 2021-05-08 | 一种IPv6网络边界设备快速发现方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110502369.2A CN113315814B (zh) | 2021-05-08 | 2021-05-08 | 一种IPv6网络边界设备快速发现方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113315814A CN113315814A (zh) | 2021-08-27 |
CN113315814B true CN113315814B (zh) | 2022-04-08 |
Family
ID=77371795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110502369.2A Active CN113315814B (zh) | 2021-05-08 | 2021-05-08 | 一种IPv6网络边界设备快速发现方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113315814B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113824813B (zh) * | 2021-09-18 | 2022-06-17 | 中电信数智科技有限公司 | 一种IPv6子网范围获取方法及查询系统 |
CN113783757B (zh) * | 2021-11-10 | 2022-10-28 | 杭州熙菱信息技术有限公司 | 跨网边界设备探测方法、装置、设备及可读存储介质 |
CN115102922A (zh) * | 2022-04-25 | 2022-09-23 | 国家计算机网络与信息安全管理中心山东分中心 | 一种基于多地址比对结果扩展的IPv6活跃地址探测方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7823202B1 (en) * | 2007-03-21 | 2010-10-26 | Narus, Inc. | Method for detecting internet border gateway protocol prefix hijacking attacks |
US8165065B2 (en) * | 2008-10-09 | 2012-04-24 | Harris Corporation | Ad-hoc network acquisition using chaotic sequence spread waveform |
CN101621414B (zh) * | 2009-08-21 | 2012-01-04 | 杭州华三通信技术有限公司 | 一种网络资源及拓扑的发现方法及装置 |
CN101753460B (zh) * | 2010-01-15 | 2012-07-11 | 杭州华三通信技术有限公司 | 一种ipv6路由前缀的处理方法及装置 |
CN102457900B (zh) * | 2010-11-03 | 2016-03-23 | 上海贝尔股份有限公司 | 传输基于IPv6低功耗无线个域网数据包的方法和装置 |
CN103685598B (zh) * | 2013-12-06 | 2017-01-25 | 国家计算机网络与信息安全管理中心 | 在IPv6网络中发现活跃IP地址的方法及装置 |
US9490419B2 (en) * | 2014-07-21 | 2016-11-08 | Cisco Technology, Inc. | DHCPv6 address autoconfiguration for source-routed networks |
CN105262687B (zh) * | 2015-09-14 | 2018-06-22 | 重庆邮电大学 | 一种基于wia-pa技术的用电信息采集系统组网通信方法 |
JP6730845B2 (ja) * | 2016-05-23 | 2020-07-29 | キヤノン株式会社 | 通信装置、その制御方法、及びプログラム |
CN106027400A (zh) * | 2016-07-28 | 2016-10-12 | 国网山东省电力公司威海供电公司 | IPv6本地链路拓扑发现方法 |
CN107547407B (zh) * | 2017-09-15 | 2021-03-09 | 新华三技术有限公司 | 报文传输方法、装置和实现装置 |
CN112543351A (zh) * | 2020-12-17 | 2021-03-23 | 瓴盛科技有限公司 | 一种网络视频数据处理方法和处理系统 |
-
2021
- 2021-05-08 CN CN202110502369.2A patent/CN113315814B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113315814A (zh) | 2021-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113315814B (zh) | 一种IPv6网络边界设备快速发现方法及系统 | |
CN106412142B (zh) | 一种资源设备地址获取方法及装置 | |
US9712559B2 (en) | Identifying frames | |
Ullrich et al. | {IPv6} security: Attacks and countermeasures in a nutshell | |
Hsu et al. | Prime DHCP: a prime numbering address allocation mechanism for MANETs | |
Rohatgi et al. | A detailed survey for detection and mitigation techniques against ARP spoofing | |
US20220174072A1 (en) | Data Processing Method and Device | |
Reshmi et al. | Filter-based address autoconfiguration protocol (FAACP) for duplicate address detection and recovery in MANETs | |
Groat et al. | What DHCPv6 says about you | |
CN112714126B (zh) | 一种在IPv6地址空间中提升蜜罐诱捕攻击能力的方法及系统 | |
CN115334044A (zh) | 一种面向物联网的大规模IPv6地址存活性探测方法 | |
Ahmed et al. | Securing the neighbour discovery protocol in IPv6 state-ful address auto-configuration | |
CN109842692A (zh) | 用于获得物理网络中主机信息的VxLAN交换机、系统和方法 | |
US10015179B2 (en) | Interrogating malware | |
KR100582181B1 (ko) | 다수 개의 아이피 주소를 사용하는 통신 시스템 및 통신방법 | |
Luo et al. | Research of neighbor discovery for IPv6 over low-power wireless personal area networks | |
US9912557B2 (en) | Node information detection apparatus, node information detection method, and program | |
CN102377835B (zh) | 一种网元群组网络的通信方法和装置 | |
EP2362610B1 (en) | Method and system for assigning an IPv6 link-local address | |
Bruns | Network Reconnaissance in IPv6-based Residential Broadband Networks | |
CN112995353A (zh) | 基于流量分析的IPv6地址存活性扫描系统及扫描方法 | |
Yao et al. | A FNV Based IPv6 Address Autoconfiguration Scheme for Power IoT Sensory Device | |
To et al. | Strip interoperability for wireless ad hoc routing protocols | |
KR101303030B1 (ko) | ⅠPv6를 지원하는 프로토콜을 이용한 호스트 동작상태 및 탐색 방법 | |
RU2726900C1 (ru) | Способ защиты вычислительных сетей |
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 |