CN118041824B - 测试旁路镜像功能的方法、装置、电子设备及存储介质 - Google Patents
测试旁路镜像功能的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN118041824B CN118041824B CN202410445287.2A CN202410445287A CN118041824B CN 118041824 B CN118041824 B CN 118041824B CN 202410445287 A CN202410445287 A CN 202410445287A CN 118041824 B CN118041824 B CN 118041824B
- Authority
- CN
- China
- Prior art keywords
- address
- tested
- http
- message
- port
- 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 75
- 238000012360 testing method Methods 0.000 title claims abstract description 55
- 230000005540 biological transmission Effects 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 7
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 238000010998 test method Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 29
- 230000008569 process Effects 0.000 description 18
- 230000004044 response Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书提供一种测试旁路镜像功能的方法、装置、电子设备及存储介质,所述方法包括:针对待测试IP地址段中每个IP地址,构造Host字段为IP地址的HTTP报文;待测试的IP地址段包含至少一个IP地址;向IP地址的预设端口发送IP地址对应的HTTP报文,IP地址对应的HTTP报文在流经镜像端口时期望被镜像得到镜像报文,镜像报文期望被域名拦截处理;如果收到镜像报文已被拦截处理的指示信息,确定IP地址对应的HTTP报文在流经镜像端口时已被镜像。本说明书适用于测试未启用网页服务却亟需验证旁路镜像情况的IP地址段,提高了报文旁路镜像功能的测试范围和准确性。
Description
技术领域
本说明书一个或多个实施例涉及网络信息安全技术领域,尤其涉及一种测试旁路镜像功能的方法、装置、电子设备及存储介质。
背景技术
域名拦截技术是一种对网络中涉及特定域名的通信进行监测、筛选和控制的技术。它通过识别网络中传输的HTTP报文,并依据预设的域名白名单对HTTP报文进行放行或拦截,从而确保仅访问经过授权的、符合安全政策的域名资源,从而防止恶意或未经授权的访问行为。
在一些实施例中,通过旁路镜像机制实现域名拦截。旁路镜像机制是在网络架构中设立报文镜像点,在不影响网络中原始HTTP报文传输过程的情况下,将原始HTTP报文复制一份得到镜像报文,然后将镜像报文传输到域名拦截系统,由域名拦截系统解析镜像报文中的域名信息,并将域名信息与预先设定的域名白名单进行比较。如果域名信息位于域名白名单中,则域名拦截系统允许原始HTTP报文继续传输至目的地;反之,则域名拦截系统对镜像报文执行拦截操作并阻断原始HTTP报文的访问结果展示。
发明内容
有鉴于此,本说明书提供一种测试旁路镜像功能的方法,以解决相关技术中如果待测试的IP地址暂未提供网页服务,就不能够触发域名拦截系统的旁路镜像机制,从而无法验证其是否能够捕捉并复制待测试的IP地址的报文的技术问题。
本申请提供一种测试旁路镜像功能的方法,所述方法包括:
针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址;
向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理;
如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像。
可选的,所述方法还包括:
如果未接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时未被旁路镜像。
可选的,所述构造Host字段为所述IP地址的HTTP报文,包括:
在应用层创建Host字段为待测试的IP地址的HTTP请求,所述HTTP请求为待封装的数据结构,在经过传输层封装和网络层封装后形成HTTP报文;
根据所述传输层的TCP协议,将所述HTTP请求前面添加TCP头并将所述HTTP请求与所述TCP头整体封装为TCP报文段,其中,所述TCP头的目的端口为预设端口;
根据所述网络层的IP协议,将所述TCP报文段前面添加IP头并将所述TCP报文段与所述IP头整体封装为IP数据包,其中,所述IP头的目的IP地址为待测试的IP地址,所述IP数据包内部包含HTTP报文。
可选的,所述方法还包括:
如果所述至少一个IP地址的数量达到预设数值,通过全局位图存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
可选的,所述方法还包括:
如果所述至少一个IP地址的数量未达到预设数值,通过第一哈希表存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
可选的,所述方法还包括:
获取与所述待测试的IP地址段对应的阈值,所述阈值为所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例阈值;
如果所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例未达到所述阈值,确定所述待测试的IP地址段对应的HTTP报文在流经所述镜像端口时旁路镜像异常。
可选的,获取与所述待测试的IP地址段对应的阈值,包括:
通过第二哈希表存储各个待测试的IP地址段和各个待测试的IP地址段对应的阈值,其中,各个待测试的IP地址段为索引,各个待测试的IP地址段对应的阈值为所述索引对应的值;
根据作为索引的所述待测试的IP地址段,在所述第二哈希表中查找与所述待测试的IP地址段对应的阈值。
本申请还提供一种测试旁路镜像功能的装置,所述装置包括:
构造单元,用于针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址;
发送单元,用于向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理;
第一确定单元,用于如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像。
本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述方法。
本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。
通过以上方式,通过针对待测试的IP地址段中每个IP地址,构造Host字段为所述IP地址的HTTP报文,并将其发送至预设端口,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且镜像报文期望被域名拦截处理;如果收到表示所述镜像报文已被拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经镜像端口时已被旁路镜像。据此,通过构造IP地址对应的HTTP报文验证旁路镜像功能,可以模拟客户端对待测试的IP地址发起HTTP请求的行为,即使待测试的IP地址暂未提供网页服务,也能够触发域名拦截系统的旁路镜像机制,验证其是否能够捕捉并复制待测试的IP地址的报文。相较于传统的在浏览器手动输入待测试的IP地址,且依赖实际服务响应的旁路镜像测试方法,一方面,本公开实现了自动化评估网络中待测试的IP地址段中每个IP地址对应的HTTP报文是否被旁路镜像,无需逐一手动输入,节省了时间和人力资源,提高了旁路镜像功能测试的效率和便捷性;另一方面,本公开适用于测试未启用网页服务却亟需验证旁路镜像情况的IP地址段,扩大旁路镜像功能的测试范围,提高测试通用性。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是一示例性的实施例示出的一种旁路镜像过程示意图;
图2是一示例性的实施例示出的一种测试旁路镜像功能的方法流程示意图;
图3是一示例性的实施例示出的另一种测试旁路镜像功能的方法流程示意图;
图4是一示例性的实施例示出的一种测试旁路镜像功能装置所在电子设备的硬件结构图;
图5是一示例性的实施例示出的一种测试旁路镜像功能装置的框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
域名拦截技术是一种对网络中涉及特定域名的通信进行监测、筛选和控制的技术。它通过识别网络中传输的HTTP报文,并依据预设的域名白名单对HTTP报文进行放行或拦截,从而确保仅访问经过授权的、符合安全政策的域名资源,从而防止恶意或未经授权的访问行为。
在一些实施例中,通过旁路镜像机制实现域名拦截。旁路镜像机制是在网络架构中设立报文镜像点,在不影响网络中原始HTTP报文传输过程的情况下,将原始HTTP报文复制一份得到镜像报文,然后将镜像报文传输到域名拦截系统,由域名拦截系统解析镜像报文中的域名信息,并将域名信息与预先设定的域名白名单进行比较。如果域名信息位于域名白名单中,则域名拦截系统允许原始HTTP报文继续传输至目的地;反之,则域名拦截系统对镜像报文执行拦截操作并阻断原始HTTP报文的访问结果展示。
例如,请参见图1,图1是一示例性的实施例示出的一种报文旁路镜像过程示意图。如图1所示,请求网页服务的报文首先从客户端101发出,经过至少一个网络交换设备(如交换机、路由器),最后到达目标服务器104的目的端口(通常是80端口提供网页服务)。由于交换设备配置了旁路镜像功能,交换设备可以将源端口102(又称镜像端口)收到的报文在不影响原始报文转发的情况下额外复制一份,得到镜像报文,并将镜像报文发送至观察端口103,由观察端口103转发镜像报文至域名拦截系统105,由域名拦截系统105分析并判断是否拦截该镜像报文。
然而,相关技术在处理待测试的IP地址段变更时,在镜像配置上可能存在问题。例如,当需要增加、删除或修改待测试的IP地址段时,不仅需要在域名拦截系统中进行操作,还需确保镜像策略同样做出相应调整,但在这个过程中时常会出现遗漏或错误,例如报文镜像未完全覆盖所需的待测试的IP地址段,或未能及时更新到最新的待测试的IP地址段,导致部分IP地址的报文未被纳入测试,使得域名拦截系统可能错漏部分非法或未经授权的访问。因此,需要测试发往IP地址的报文是否被旁路镜像。
通常可以采用人工的方式进行测试,即向域名拦截系统添加待测试的IP地址段后,在浏览器输入该待测试的IP地址进行访问,查看网页是否拦截且有域名拦截系统返回的特征码。但是待测试的IP地址段包含的IP地址总数较多,以IP地址段192.168.1.0/24为例,共有256个IP地址,将每个IP地址通过浏览器进行访问判断,效率低下且浪费人工成本。
此外,该方法在应对特定场景时表现出明显的局限性。例如,对于暂时没有提供网页服务的IP地址,无法通过浏览器访问或服务端响应等方式判断发往该IP地址的报文是否被正确地旁路镜像。因为试图通过Web浏览器访问一个IP地址所提供的服务时,实际上是尝试与该IP地址上监听HTTP或HTTPS请求的服务器进程建立TCP连接。默认情况下,网页服务一般运行在80端口(HTTP)或443端口(HTTPS)。如果目标IP地址并未运行任何网页服务,也就是说,在指定的端口上没有服务进程监听并准备接受连接请求,那么客户端(这里是浏览器)向该IP地址发送的连接请求将不会得到响应,因此客户端(如Web浏览器)无法与之建立正常的TCP连接,也不会有任何有意义的HTTP请求或响应报文发生。在这种情况下,域名拦截系统也就无法直接依靠正常的网络交互旁路镜像发往这些未提供网页服务的IP地址的报文,从而难以验证发往这些IP地址的报文是否被旁路镜像。
总之,由于目前的旁路镜像技术往往是被动地等待实际访问发生并通过系统日志分析,缺乏有效的主动检测手段,致使无法快速定位到未被正确镜像的IP地址段,且目前的旁路镜像技术无法测试无网页服务的IP地址,致使在测试发往待测试的IP地址的报文是否被旁路镜像时存在盲区,无法完整验证发往IP地址的报文是否被旁路镜像。
有鉴于此,本说明书旨在提出一种验证发往未提供网页服务的IP地址的报文是否被旁路镜像的技术方案。
在实现时,首先,针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址;进一步地,向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理;如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像。
例如,如图1所示,待测试的IP地址段包含至少一个IP地址,对于每个IP地址,将构造好的Host字段为所述IP地址的HTTP报文投放到网络中,HTTP报文经过至少一个网络交换设备(如交换机、路由器),最后到达目标服务器104的目的端口(通常是80端口提供网页服务)。由于交换设备配置了旁路镜像功能,交换设备可以将源端口102(又称镜像端口)收到的报文在不影响原始报文转发的情况下额外复制一份,得到镜像报文,并将镜像报文发送至观察端口103,由观察端口103转发镜像报文至域名拦截系统105,由域名拦截系统105分析并判断是否拦截该镜像报文。在接收到表示镜像报文已被域名拦截系统105拦截处理的指示信息的情况下,确定HTTP报文在流经源端口102时已被旁路镜像。
通过以上方式,通过针对待测试的IP地址段中每个IP地址,构造Host字段为所述IP地址的HTTP报文,并将其发送至预设端口,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且镜像报文期望被域名拦截处理;如果收到表示所述镜像报文已被拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经镜像端口时已被旁路镜像。据此,通过构造IP地址对应的HTTP报文验证旁路镜像功能,可以模拟客户端对待测试的IP地址发起HTTP请求的行为,即使待测试的IP地址暂未提供网页服务,也能够触发域名拦截系统的旁路镜像机制,验证其是否能够捕捉并复制待测试的IP地址的报文。相较于传统的在浏览器手动输入待测试的IP地址,且依赖实际服务响应的旁路镜像测试方法,一方面,本公开实现了自动化评估网络中待测试的IP地址段中每个IP地址对应的HTTP报文是否被旁路镜像,无需逐一手动输入,节省了时间和人力资源,提高了旁路镜像功能测试的效率和便捷性;另一方面,本公开适用于测试未启用网页服务却亟需验证旁路镜像情况的IP地址段,扩大旁路镜像功能的测试范围,提高测试通用性。
下面通过具体实施例,结合具体的应用场景对本申请进行描述。
请参见图2,图2是一示例性的实施例示出的一种测试旁路镜像功能的方法流程示意图。所述方法可以执行以下步骤:
步骤S202:针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址。
例如,待测试的IP地址段为网段192.168.1.1到192.168.1.254,该网段范围包含至少一个IP地址,针对该网段范围内的每个IP地址,构造相应的HTTP报文,该HTTP报文的Host字段为待测试的IP地址,如192.168.1.2。
其中,待测试的IP地址为需要进行旁路镜像功能测试的IP地址,即需要测试发往这些IP地址的报文是否被旁路镜像。在CIDR(Classless Inter-Domain Routing,无类别域间路由)记法中,网段192.168.1.1到192.168.1.254也可以表示为192.168.1.0/24,"/24"代表了IP地址的网络前缀长度,即IP地址总共32位,有24位标识网络部分,剩余8位标识主机部分。关于网段的表示方法,本说明书对此并不进行限制。HTTP报文是基于HTTP协议进行数据传输的基本单位,它在网络通信中承载着客户端与服务器之间的请求和响应信息。HTTP报文通常包括起始行、头部字段和可选的消息主体三大部分,Host字段是HTTP头部字段之一,通常填充的内容是请求的目标服务器的主机名或IP地址。例如,如果要访问www.example.com的网页,那么Host头字段的值将是"www.example.com"。服务器根据接收到的Host头字段来确定请求应该由哪个主机处理。
步骤S204:向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理。
例如,如图1所示,由客户端向待测试的IP地址192.168.1.2的预设的80端口发送构造好的HTTP报文,该HTTP报文经由交换设备转发至目标服务器104,在HTTP报文流经交换设备的源端口102(又称镜像端口)时期望被旁路镜像,并且镜像报文期望被域名拦截系统105拦截处理。
其中,IP地址的预设端口可以为80端口。HTTP报文的目的端口可以为IP地址的预设端口。HTTP报文是一种基于HTTP协议构建的数据包,包含了客户端请求服务器特定资源或服务的相关信息。发送HTTP报文可以由客户端进行,客户端具体可以为任意一个能够向服务器发送报文的硬件设备,其包括但不限于手机、台式电脑、智能家居设备、平板电脑等。除了现成的客户端,发送HTTP报文的源设备可以是任何能够构造并发送HTTP请求的网络终端或应用程序。对于发送HTTP报文的源设备,本说明书对此并不进行限制。待测试的IP地址是网络中需要验证发往该地址的报文是否被正确镜像的特定IP地址。80端口是HTTP服务的标准端口,客户端向192.168.1.2的80端口发送HTTP报文,意在模拟正常HTTP服务访问。旁路镜像是网络技术中的一种策略,即在不影响正常数据传输的情况下,通过镜像端口复制部分或全部网络报文,用于监视、记录或进一步处理。域名拦截系统是一种网络安全设备或软件系统,其功能是对网络报文进行检测和控制,根据预设策略对特定域名或IP地址的报文进行拦截。
步骤S206:如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像。
例如,如图1所示,在接收到表示镜像报文已被域名拦截系统105拦截处理的指示信息的情况下,确定HTTP报文在流经源端口102(又称镜像端口)时已被旁路镜像。
其中,被拦截处理的指示信息是域名拦截系统在成功拦截镜像报文后返回的反馈信息,表明该镜像报文已被按照预设的拦截策略进行了处理。指示信息可以是一个特定的标志、代码或是系统日志中的记录,用于证明域名拦截系统正常工作并对镜像报文进行了拦截操作。在实际应用中,指示信息通常是域名拦截系统返回的特征码。特征码是通过以下两方面识别的:首先,TCP层标志字段等于RST:当域名拦截系统对一个报文进行拦截时,会在TCP报文的标志(flag)字段中设置RST(reset)标志位,表示连接被复位或拒绝。其次,返回数据6字符,前四字符为ffff:因为在拦截后返回的报文中,会有一段特定的数据载荷,长度为6个字符,其中前四个字符为固定的十六进制值ffff。这四位字符是特征码的一部分,用于标识该报文是来自域名拦截系统的特殊响应。对于指示信息的具体形式,本说明书对此并不进行限制。
在一些实施例中,如果未收到表示镜像报文已被域名拦截系统拦截处理的指示信息,可以确定HTTP报文在流经源端口时未被旁路镜像得到镜像报文或是镜像报文未被域名拦截处理。如果收到表示镜像报文已被域名拦截系统拦截处理的指示信息,可以确定HTTP报文在流经源端口时被旁路镜像得到镜像报文,且镜像报文被域名拦截处理。
在一些可能的实现方式中,如果域名拦截功能正常,则在未收到表示镜像报文已被域名拦截系统拦截处理的指示信息的情况下,可以确定HTTP报文在流经源端口时未被旁路镜像。
在一些可能的实现方式中,如果域名拦截功能正常,则在收到表示镜像报文已被域名拦截系统拦截处理的指示信息的情况下,可以确定HTTP报文在流经源端口时被旁路镜像。
在示出的一种实施方式中,所述方法还包括:如果未接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时未被旁路镜像。
例如,如图1所示,由客户端向待测试的IP地址192.168.1.2的预设的80端口发送构造好的HTTP报文,该HTTP报文经由交换设备转发至目标服务器104,在HTTP报文流经交换设备的源端口102(又称镜像端口)时期望被旁路镜像,并且镜像报文期望被域名拦截系统105拦截处理。如果未接收到表示镜像报文已被域名拦截系统105拦截处理的指示信息的情况下,确定HTTP报文在流经源端口102(又称镜像端口)时未被旁路镜像。
在本说明书中,为了避免一直等待接收指示信息,可以设置预设时长,如果在预设时长内未接收到表示所述镜像报文已被域名拦截处理的指示信息,则确定待测试的IP地址对应的HTTP报文在流经镜像端口时未被旁路镜像。
其中,预设时长为等待时长,设置预设时长用于在该时长内等待和监测从域名拦截系统返回的关于镜像报文处理状态的反馈信号。预设时长可以根据实际需要进行设置,例如设置为5秒。通常情况下,域名拦截系统如果拦截报文,返回信息较为迅速,但是考虑到网络抖动等因素,需要设置等待时长,如果等待超时了还未收到表示镜像报文已被拦截处理的指示信息,就说明发往待测试的IP地址的HTTP报文没有被旁路镜像。
其中,预设时长的设置应考虑以下因素:首先是网络延迟,预设时长应足够长,以包容网络传输过程中的合理延迟,包括报文在网络中传播所需的时间以及域名拦截系统处理报文所需的时间。其次是系统响应时间,预设时长应考虑到域名拦截系统的处理速度,预设时长应足以让系统接收到报文、执行拦截操作并返回响应。最后是容错空间,为了应对网络波动和其他不可预见的因素,预设时长应留有一定的余量,确保在大多数情况下都能够准确判断镜像功能是否正常。
预设时长具体可以通过经验值设置:如根据网络环境和域名拦截系统的平均响应时间来设定合理的时长,如设置为5秒、10秒或更长时间。预设时长还可以通过实验验证:通过实际测试和测量来确定最优的预设时长,确保既能及时作出判断,又能减少误判的可能性。预设时长可作为可配置参数之一,在系统配置界面或API接口中提供预设时长参数供用户自定义,允许用户根据实际网络状况进行调整预设时长。对于预设时长的设置方式和预设时长的具体数值,本说明书对此并不进行限制。
在示出的一种实施方式中,所述构造Host字段为所述IP地址的HTTP报文,包括:在应用层创建Host字段为待测试的IP地址的HTTP请求,所述HTTP请求为待封装的数据结构,在经过传输层封装和网络层封装后形成HTTP报文;根据所述传输层的TCP协议,将所述HTTP请求前面添加TCP头并将所述HTTP请求与所述TCP头整体封装为TCP报文段,其中,所述TCP头的目的端口为预设端口;根据所述网络层的IP协议,将所述TCP报文段前面添加IP头并将所述TCP报文段与所述IP头整体封装为IP数据包,其中,所述IP头的目的IP地址为待测试的IP地址,所述IP数据包内部包含HTTP报文。
例如,在应用层创建Host字段为IP地址192.168.1.1的HTTP请求,传输层的TCP协议将所述HTTP请求的前部添加目的端口为预设的80端口的TCP头,并将添加了TCP头的所述HTTP请求整体封装为TCP报文段。然后IP协议用于将所述TCP报文段前面添加目的IP地址为192.168.1.1的IP头并将所述TCP报文段和所述IP头封装为包含HTTP报文的IP数据包。其中,本说明书构建Host字段为待测试的IP地址的HTTP报文,是因为域名拦截系统通常会通过读取HTTP报文中的Host字段内容,从中获取域名信息,然后将获取到的域名与事先设置好的域名白名单进行比对,判断是否进行拦截。将Host字段不再设为域名,而设为待测试的IP地址,使得域名拦截系统基于旁路镜像的报文获取Host字段中的待测试的IP地址,然后基于预先设定的拦截规则,判断是否对旁路镜像的报文进行拦截处理,从而实现对发往未提供网页服务的IP地址(这种IP地址对应的域名不可用或没有对应的域名)的报文旁路镜像功能的检测。
其中,通常在OSI(Open Systems Interconnection,开放式系统互连)七层模型中对HTTP请求进行层层封装,得到可在网络中传输的HTTP报文。应用层是OSI模型的第七层(即最高层),在应用层创建HTTP请求,包含了请求方法(如GET、POST等)、请求的资源路径、协议版本以及请求头部和正文等信息。传输层是OSI模型的第四层,将HTTP报文分割成合适的数据段,并将HTTP报文封装到TCP或UDP协议中,确保数据段能够按顺序到达目的地并得到确认。网络层是OSI模型的第三层,负责数据包从源到目的地的路由选择。例如,将HTTP报文的数据段封装到IP数据包中,并可能被进一步封装到其他网络层协议中。
在报文封装的整个过程中,每一层都会为HTTP报文添加相应的头部信息,这些头部信息在接收端被相应层解析并去除,以确保报文能够正确地被接收和处理。这个过程被称为封装,在接收端的对应过程是解封装。
在示出的一种实施方式中,所述方法还包括:如果所述至少一个IP地址的数量达到预设数值,通过全局位图存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
例如,预设数值为512M,待测试的IP地址段为IPv4的所有IP地址,由于IPv4的所有IP地址共有4 GB,达到了预设数值。在实施所述方法时:通过全局位图存储IPv4的所有IP地址和与每个IP地址对应的报文被旁路镜像的结果,全局位图中的每个位与该待测试的IP地址段中的每一个待测试的IP地址一一对应。具体的,可以通过特定的系统或算法,将IP地址转换为一个数值,并将这个数值映射到全局位图中的某个位置。例如,全局位图的第一位对应0.0.0.0,全局位图的第二位对应0.0.0.1,依此类推。当针对待测试的IP地址段中每个IP地址构造并发送HTTP报文后,如果以IP地址0.0.0.0构造的HTTP报文被旁路镜像,将该IP地址在全局位图中对应第一位的位标识设置为第一取值(比如1,表示旁路镜像成功)。如果以IP地址0.0.0.1构造的HTTP报文被旁路镜像,那么在全局位图中对应第二位的位标识设为1。在完成所有待测试IP地址的HTTP报文发送和旁路镜像检测后,统计全局位图中所有设为第一取值(1)的位数量,即可确定有多少个IP地址的HTTP报文被旁路镜像。
其中,全局位图是一种数据结构,它通过连续的比特位(bit)来表示一组数据项的状态,通常用于存储大量布尔值(True/False或1/0)。在本发明方案中,全局位图用于记录待测试的IP地址段中每个待测试的IP地址的旁路镜像结果。每个待测试的IP地址在全局位图中对应一个唯一的位标识,这个位标识就是一个比特位的位置,用来标记该待测试的IP地址的HTTP报文是否被成功镜像。对于待测试的IP地址段为IPv4的所有IP地址的情况,由于IPv4的所有IP地址共有4GB(IPv4的IP地址共有32位,每一位为0或1两种情况,2的32次方所表示的数值是4,294,967,296,这个数值用字节(Bytes)作为单位时,等于4 GB)。如果我们使用一个全局位图来表示这些内容的状态,每个位代表一个状态(例如,0表示未被旁路镜像,1表示已被旁路镜像),相当于把每一字节的内容压缩到一位,因为每个字节有8位,那么全局位图占用的内存仅为4GB的1/8,即512M。
在上述实施方式中,如果将IPv4的所有IP地址以索引形式进行存储,需要4G的内存空间,通过使用全局位图存储,将需要的内存压缩为1/8,仅需要512M的内存空间。可见,对超过512M的待测试IP地址使用全局位图存储,可实现以少量的内存空间来跟踪大量IP地址的镜像状态,降低存储空间需求;而且由于位运算的速度快,可以快速统计出有多少IP地址的报文被成功镜像,提高了检测效率。
在示出的一种实施方式中,所述方法还包括:如果所述至少一个IP地址的数量未达到预设数值,通过第一哈希表存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
例如,预设数值为512M,有一个待测试的IP地址段192.168.1.0/24,这个待测试的IP地址段中共有256个IP地址,未达到预设数值。在实施所述方法时:首先,创建一个第一哈希表,用于存储待测试的IP地址段中每个IP地址及其对应的旁路镜像结果。例如,键(Key)为IP地址字符串(如192.168.1.1),值(Value)为旁路镜像结果(假设取值为1表示被旁路镜像)。当针对IP地址(如192.168.1.50)构造并发送HTTP报文后,如果该IP地址的报文被旁路镜像,在第一哈希表中将该IP地址的值更新为1。在完成所有待测试IP地址的HTTP报文发送和旁路镜像检测后,通过遍历第一哈希表,统计所有IP地址的值为1的条目数量,即可得出在待测试的IP地址段中有多少个IP地址对应的HTTP报文被旁路镜像。
在上述实施方式中,当待测试的IP地址数量少于512M时,如果使用全局位图会浪费内存(针对IPv4的IP地址的全局位图内存为512M),此时通过使用哈希表存储,能够精确地记录待测试的IP地址段中每个IP地址的旁路镜像结果,便于针对性地进行问题排查和统计。由于哈希表具有较快的查找和更新速度,能在大规模的待测试的IP地址段中高效地管理和维护每个待测试的IP地址的旁路镜像结果,而如果待测试的IP地址较少,哈希表也能做到资源的有效利用,不会造成过大内存负担。
需要说明的是,为了减少待测试的IP地址哈希冲突带来的问题,对于不同的待测试的IP地址段,每个待测试的IP地址段对应一个哈希表,当各个待测试的IP地址段中所有待测试的IP地址的总数在后续达到512M后,就不在哈希表中存储,需要将各个待测试的IP地址段中所有待测试的IP地址对应的旁路镜像结果存储至全局位图,以节约内存。
在可能的一种实施方式中,也可以不采用哈希表,通过使用一维数组来存储一个待测试的IP地址段中每个待测试的IP地址及对应的旁路镜像结果。例如,有两个待测试的IP地址段,分别为0.0.0.0/25和0.0.0.128/25,其中0.0.0.0/25对应的IP地址段为0.0.0.0-0.0.0.127,0.0.0.128/25对应的IP地址段为0.0.0.128-0.0.0.255,这两个待测试的IP地址段都分别有128个待测试的IP地址。分别创建2个数组,即数组A和数组B,每个数组包含128个元素,每个元素的索引从数组头到数组尾分别为0至127,每个待测试的IP地址存在对应的数值,该数值映射至数组元素的索引,该数组元素用于存储该待测试的IP地址对应的旁路镜像结果。例如,对于待测试的IP地址段0.0.0.0/25,待测试的IP地址0.0.0.0对应的数值为0,该数值0映射至数组元素索引0,因此待测试的IP地址0.0.0.0对应的旁路镜像结果存储至数组A的第一个元素中。
由于待测试的IP地址在数值上是不断递增的,对于第二个及后续的待测试的IP地址,需要先在待测试的IP地址对应的数值基础上与待测试的IP地址段中IP地址总数取余,再映射至数组元素的索引。例如,对于待测试的IP地址段0.0.0.128/25,待测试的IP地址0.0.0.128对应的数值为128,而待测试的IP地址段中IP地址总数为128,128与128取余结果为0,则待测试的IP地址0.0.0.128对应的数值为0,该数值0映射至数组元素索引0,因此待测试的IP地址0.0.0.128对应的旁路镜像结果存储至数组B的第一个元素中。
同样的,当各个待测试的IP地址段中所有待测试的IP地址的总数在后续达到512M后,就不在数组中存储,需要将各个待测试的IP地址段中所有待测试的IP地址对应的旁路镜像结果存储至全局位图,以节约内存。
在示出的一种实施方式中,所述方法还包括:获取与所述待测试的IP地址段对应的阈值,所述阈值为所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例阈值;如果所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例未达到所述阈值,确定所述待测试的IP地址段对应的HTTP报文在流经所述镜像端口时旁路镜像异常。
例如,首先获取与待测试的IP地址段192.168.1.0/24对应的阈值,如98%。待测试的IP地址段192.168.1.0/24包含256个IP地址,通过发送与每个IP地址对应的HTTP报文并检查与每个IP地址对应的HTTP报文被旁路镜像的结果,确认有248个IP地址对应的HTTP报文被旁路镜像,大约占待测试的IP地址段中IP地址总数的97%,不满足98%的HTTP报文被旁路镜像的比例要求,从而确定所述待测试的IP地址段192.168.1.0/24对应的HTTP报文在流经所述镜像端口时旁路镜像异常。
在上述实施方式中,设置阈值有助于量化和客观评价旁路镜像功能的覆盖率和效果,为调试和优化提供依据。当旁路镜像成功率低于预设阈值时,能够及时发现并定位网络中可能存在的镜像配置错误或故障节点,有利于快速修复。
在示出的一种实施方式中,获取与所述待测试的IP地址段对应的阈值,包括:通过第二哈希表存储各个待测试的IP地址段和各个待测试的IP地址段对应的阈值,其中,各个待测试的IP地址段为索引,各个待测试的IP地址段对应的阈值为所述索引对应的值;根据作为索引的待测试的IP地址段,在所述第二哈希表中查找与所述待测试的IP地址段对应的阈值。
例如,有一个待测试的IP地址段列表,包括以下三个IP地址段及其对应的阈值:192.168.1.0/24和对应的阈值85%;10.0.0.0/16和对应的阈值90%,172.16.0.0/12和对应的阈值95%,在实施所述方法时:首先,创建一个第二哈希表,用于存储每个待测试IP地址段及其对应的旁路镜像结果。例如,一个键值对的键(Key)为192.168.1.0/24,值(Value)为对应的阈值85%。一个键值对的键(Key)为10.0.0.0/16,值(Value)为对应的阈值90%。一个键值对的键(Key)为172.16.0.0/12,值(Value)为对应的阈值95%。在需要获取待测试的IP地址段172.16.0.0/12对应的阈值时,以172.16.0.0/12作为索引,在第二哈希表中进行查找。
其中,待测试的IP地址段对应的阈值可以通过域名拦截系统的查询接口查询得到。
在上述实施方式中,通过哈希表查询的方式,可以快速查找任何一个待测试IP地址段对应的阈值,而不需要遍历整个配置列表或数据库,极大地提高了检索效率。
需要说明的是,由于待测试的IP地址段会发生变更,因此在测试过程中,每个待测试的IP地址可能存储至全局位图,也可能存储至哈希表中,需要在每次执行测试过程前进行判断。
为了帮助本领域技术人员更好地理解上述实施例,下面结合图3对上述实施例进行说明。
请参见图3,图3是一示例性的实施例示出的另一种测试旁路镜像功能的方法流程示意图。如图3所示,首先,通过域名拦截系统提供的API接口,获取到所有的待测试的IP地址段和与待测试的IP地址段对应的阈值并将二者存储至第二哈希表。其次,统计所有待测试的IP地址段中待测试的IP地址个数,如果达到预设数值,则待测试的IP地址段和对应的阈值需要存储在全局位图中,如果存在全局位图则将全局位图清空,如果不存在全局位图则创建全局位图,在操作完上述步骤后,标记全局位图的准备就绪标记为1;如果未达到预设数值,则标记全局位图的准备就绪标记为0。然后,遍历每一个待测试的IP地址段,判断全局位图的准备就绪标记是否为1,如果是,则解析出所有待测试的IP地址,否则的话要先创建第一哈希表并清空数据,然后再解析出所有待测试的IP地址。最后,遍历每个解析出的待测试的IP地址,基于待测试的IP地址构建HTTP报文发送到网络中,如果预设时长内收到拦截特征码,说明与待测试的IP地址对应的HTTP报文被拦截,如果待测试的IP地址存在第一哈希表,则在第一哈希表对应位置为1,否则就在全局位图的对应位置为1,再遍历下一个待测试的IP地址。如果预设时长内收到返回的数据不为拦截特征码,或未收到返回的数据,则继续往后执行,遍历下一个待测试的IP地址。
在所有的待测试的IP地址测试完毕后,获得了与每个待测试的IP地址对应的HTTP报文的旁路镜像结果,后续可以进行旁路镜像结果的输出。首先,启动一个线程判断全局准备就绪标记是否为1,如果为1,获取待测试的IP地址段作为传入参数,如果不为1,获取待测试的IP地址段和第一哈希表作为传入参数;然后将存储在本地以待测试的IP地址段命名的文件清空,解析出待测试的IP地址进行遍历,针对每一个待测试的IP地址,判断是存在第一哈希表还是全局位图,进行对应位的查询,如果对应位置为1,将拦截计数加1,将针对待测试的IP地址的拦截结果信息(例如:IP YES)写入本地以待测试的IP地址段命名的文件,再执行下一个待测试的IP地址。如果对应位没有置为1,将针对待测试的IP地址的拦截结果信息(例如:IP NO)写入本地以待测试的IP地址段命名的文件,执行下一个待测试的IP地址。遍历完所有待测试的IP地址后,将获取的拦截计数除于待测试的IP地址总数取整获取旁路镜像百分比,同样写入本地以待测试的IP地址段命名的文件。文件格式为:每一行是每个待测试的IP地址及旁路镜像结果(YES/NO),最后一行是每个待测试的IP地址段及旁路镜像百分比,由线程输出文件结果。上述实施例仅为示例,关于文件格式的具体形式,本说明书对此并不进行限制。之后,查询第二哈希表获取与待测试的IP地址段对应的阈值,将阈值与测试得到的旁路镜像百分比进行比较,如果旁路镜像百分比的值大于阈值,则删除第二哈希表(如果存在),结束线程。如果旁路镜像百分比的值小于或等于阈值,那么进行告警到具体联系人,删除第二哈希表(如果存在),结束线程。
本说明书还提供接口生成详细/概况报表,提供给需要者查询,流程如下:当查询者调用接口查询某一待测试的IP地址段的详细信息时,由系统获取传入接口的待测试的IP地址段参数后,使用此待测试的IP地址段从本地读取以此待测试的IP地址段命名的文件,将读取的信息返回给调用者。读取的信息具体可以是概括的信息,即以待测试的IP地址段命名的文件中最后一行关于每个待测试的IP地址段及旁路镜像百分比,也可以是每个待测试的IP地址及旁路镜像结果,本说明书对此并不进行限制。
与上述测试旁路镜像功能的方法实施例对应的,本说明书还提供了一种测试旁路镜像功能装置的实施例。
请参见图4,图4是一示例性的实施例示出的一种测试旁路镜像功能装置所在电子设备的硬件结构图。在硬件层面,该设备包括处理器402、内部总线404、网络接口406、内存408以及非易失性存储器410,当然还可能包括其他所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器402从非易失性存储器410中读取对应的计算机程序到内存408中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参见图5,图5是一示例性的实施例示出的一种测试旁路镜像功能装置的框图。该测试旁路镜像功能装置可以应用于如图4所示的电子设备中,以实现本说明书的技术方案。所述装置可以包括:
构造单元502,用于针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址;
发送单元504,用于向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理;
第一确定单元506,用于如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像。
在本实施例中,所述装置还包括:
第二确定单元,用于如果未接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时未被旁路镜像。
在本实施例中,所述构造单元,包括:
创建子单元,用于在应用层创建Host字段为待测试的IP地址的HTTP请求,所述HTTP请求为待封装的数据结构,在经过传输层封装和网络层封装后形成HTTP报文;
第一封装子单元,用于根据所述传输层的TCP协议,将所述HTTP请求前面添加TCP头并将所述HTTP请求与所述TCP头整体封装为TCP报文段,其中,所述TCP头的目的端口为预设端口;
第二封装子单元,用于根据所述网络层的IP协议,将所述TCP报文段前面添加IP头并将所述TCP报文段与所述IP头整体封装为IP数据包,其中,所述IP头的目的IP地址为待测试的IP地址,所述IP数据包内部包含HTTP报文。
在本实施例中,所述装置还包括:
第一存储单元,用于如果所述至少一个IP地址的数量达到预设数值,通过全局位图存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
在本实施例中,所述装置还包括:
第二存储单元,用于如果所述至少一个IP地址的数量未达到预设数值,通过第一哈希表存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
在本实施例中,所述装置还包括:
获取单元,用于获取与所述待测试的IP地址段对应的阈值,所述阈值为所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例阈值;
第三确定单元,用于如果所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例未达到所述阈值,确定所述待测试的IP地址段对应的HTTP报文在流经所述镜像端口时旁路镜像异常。
在本实施例中,所述获取单元,包括:
存储子单元,用于通过第二哈希表存储各个待测试的IP地址段和各个待测试的IP地址段对应的阈值,其中,各个待测试的IP地址段为索引,各个待测试的IP地址段对应的阈值为所述索引对应的值;
查找子单元,用于根据作为索引的所述待测试的IP地址段,在所述第二哈希表中查找与所述待测试的IP地址段对应的阈值。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例只是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (8)
1.一种测试旁路镜像功能的方法,其特征在于,所述方法包括:
针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址;
向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理;
如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像;
记录所述IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像;
获取与所述待测试的IP地址段对应的阈值,所述阈值为所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例阈值;
如果所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例未达到所述阈值,确定所述待测试的IP地址段对应的HTTP报文在流经所述镜像端口时旁路镜像异常;
其中,获取与所述待测试的IP地址段对应的阈值,包括:
通过第二哈希表存储各个待测试的IP地址段和各个待测试的IP地址段对应的阈值,其中,各个待测试的IP地址段为索引,各个待测试的IP地址段对应的阈值为所述索引对应的值;
根据作为索引的所述待测试的IP地址段,在所述第二哈希表中查找与所述待测试的IP地址段对应的阈值。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果未接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时未被旁路镜像。
3.根据权利要求1所述的方法,其特征在于,所述构造Host字段为所述IP地址的HTTP报文,包括:
在应用层创建Host字段为待测试的IP地址的HTTP请求,所述HTTP请求为待封装的数据结构,在经过传输层封装和网络层封装后形成HTTP报文;
根据所述传输层的TCP协议,将所述HTTP请求前面添加TCP头并将所述HTTP请求与所述TCP头整体封装为TCP报文段,其中,所述TCP头的目的端口为预设端口;
根据所述网络层的IP协议,将所述TCP报文段前面添加IP头并将所述TCP报文段与所述IP头整体封装为IP数据包,其中,所述IP头的目的IP地址为待测试的IP地址,所述IP数据包内部包含HTTP报文。
4.根据权利要求1所述的方法,其特征在于,所述记录所述IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像,包括:
如果所述至少一个IP地址的数量达到预设数值,通过全局位图存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
5.根据权利要求1所述的方法,其特征在于,所述记录所述IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像,包括:
如果所述至少一个IP地址的数量未达到预设数值,通过第一哈希表存储各个IP地址和各个IP地址对应的测试结果,所述测试结果用于表示各个IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像。
6.一种测试旁路镜像功能的装置,其特征在于,所述装置包括:
构造单元,用于针对待测试的IP地址段中的每个IP地址,构造Host字段为所述IP地址的HTTP报文;其中,所述待测试的IP地址段包含至少一个IP地址;
发送单元,用于向所述IP地址的预设端口发送所述IP地址对应的HTTP报文,其中,所述IP地址对应的HTTP报文在流经镜像端口时期望被旁路镜像得到镜像报文,并且所述镜像报文期望被域名拦截处理;
第一确定单元,用于如果接收到表示所述镜像报文已被域名拦截处理的指示信息,确定所述IP地址对应的HTTP报文在流经所述镜像端口时已被旁路镜像;
记录单元,用于记录所述IP地址对应的HTTP报文在流经所述镜像端口时是否已被旁路镜像;
获取单元,用于获取与所述待测试的IP地址段对应的阈值,所述阈值为所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例阈值;
其中,获取与所述待测试的IP地址段对应的阈值,包括:
通过第二哈希表存储各个待测试的IP地址段和各个待测试的IP地址段对应的阈值,其中,各个待测试的IP地址段为索引,各个待测试的IP地址段对应的阈值为所述索引对应的值;
根据作为索引的所述待测试的IP地址段,在所述第二哈希表中查找与所述待测试的IP地址段对应的阈值;
第二确定单元,用于如果所述待测试的IP地址段中所有IP地址对应的HTTP报文在流经所述镜像端口时被旁路镜像的比例未达到所述阈值,确定所述待测试的IP地址段对应的HTTP报文在流经所述镜像端口时旁路镜像异常。
7.一种电子设备,其特征在于,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行权利要求1至5任一项所述的方法。
8.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410445287.2A CN118041824B (zh) | 2024-04-12 | 2024-04-12 | 测试旁路镜像功能的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410445287.2A CN118041824B (zh) | 2024-04-12 | 2024-04-12 | 测试旁路镜像功能的方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118041824A CN118041824A (zh) | 2024-05-14 |
CN118041824B true CN118041824B (zh) | 2024-07-23 |
Family
ID=90991798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410445287.2A Active CN118041824B (zh) | 2024-04-12 | 2024-04-12 | 测试旁路镜像功能的方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118041824B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109981805A (zh) * | 2017-12-28 | 2019-07-05 | 中国移动通信集团山东有限公司 | 一种域名解析的方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101002421B1 (ko) * | 2010-04-09 | 2010-12-21 | 주식회사 플랜티넷 | 공인 아이피를 공유하는 인터넷 접속 요청 트래픽의 선별적 허용/차단 방법 및 그 방법을 실행하기 위한 공인 아이피 공유 상태 검출 및 차단 시스템 |
CN105991634A (zh) * | 2015-04-29 | 2016-10-05 | 杭州迪普科技有限公司 | 访问控制的方法和装置 |
CN113765731B (zh) * | 2020-06-28 | 2023-09-05 | 北京沃东天骏信息技术有限公司 | 信息处理方法、装置及计算机可读存储介质 |
CN113448835B (zh) * | 2020-09-25 | 2023-10-20 | 北京新氧科技有限公司 | 一种静态资源测试方法、装置、电子设备及存储介质 |
CN112468416B (zh) * | 2020-10-23 | 2022-08-30 | 曙光网络科技有限公司 | 网络流量镜像方法、装置、计算机设备和存储介质 |
CN115208951B (zh) * | 2022-06-28 | 2024-03-15 | 平安银行股份有限公司 | 请求处理方法、装置、电子设备及计算机可读存储介质 |
-
2024
- 2024-04-12 CN CN202410445287.2A patent/CN118041824B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109981805A (zh) * | 2017-12-28 | 2019-07-05 | 中国移动通信集团山东有限公司 | 一种域名解析的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN118041824A (zh) | 2024-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111953770B (zh) | 一种路由转发方法、装置、路由设备及可读存储介质 | |
CN108683553B (zh) | 故障注入的方法和装置 | |
CN114145004A (zh) | 用于使用dns消息以选择性地收集计算机取证数据的系统及方法 | |
CN113810381B (zh) | 一种爬虫检测方法、web应用云防火墙、装置和存储介质 | |
CN118041824B (zh) | 测试旁路镜像功能的方法、装置、电子设备及存储介质 | |
JP2014523671A (ja) | 対話型アプリケーションサービスの全体的なパフォーマンスの評価 | |
CN112769635B (zh) | 多粒度特征解析的服务识别方法及装置 | |
CN110784364B (zh) | 一种数据监测方法、装置、存储介质及终端 | |
CN113098852A (zh) | 一种日志处理方法及装置 | |
CN112527772A (zh) | 一种图数据库审计方法及审计设备 | |
US9577669B2 (en) | Methods, systems, and computer readable media for optimized message decoding | |
CN113098727A (zh) | 一种数据包检测处理方法与设备 | |
CN114979236B (zh) | 数据传输方法、装置、存储介质以及电子设备 | |
CN114301813A (zh) | 一种ping检测的时延测量方法及装置 | |
CN114125030B (zh) | 连接跟踪方法、装置、电子设备和计算机可读存储介质 | |
CN107493231A (zh) | 一种cdn的动态路由方法及装置 | |
CN114143088B (zh) | 网络故障诊断方法、装置、设备及计算机可读存储介质 | |
CN114697380B (zh) | 访问请求的重定向方法、系统、装置以及存储介质 | |
CN115243248B (zh) | 终端的流量共享类型识别方法、装置及电子设备 | |
CN118573605B (zh) | Fttr系统中的丢包监控方法和装置、网关设备及存储介质 | |
CN113055395B (zh) | 一种安全检测方法、装置、设备及存储介质 | |
CN110196862B (zh) | 一种数据场景构造方法、装置、服务器与系统 | |
CN118473831B (zh) | IPv6设备IP标识指纹信息探测方法、装置和设备 | |
CN103457789A (zh) | 一种并机检测方法和装置 | |
CN115623485B (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 |