CN116260600A - 网络地址识别方法、装置及系统 - Google Patents
网络地址识别方法、装置及系统 Download PDFInfo
- Publication number
- CN116260600A CN116260600A CN202111506633.6A CN202111506633A CN116260600A CN 116260600 A CN116260600 A CN 116260600A CN 202111506633 A CN202111506633 A CN 202111506633A CN 116260600 A CN116260600 A CN 116260600A
- Authority
- CN
- China
- Prior art keywords
- address
- equipment
- access request
- protection
- request message
- 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.)
- Pending
Links
Images
Classifications
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- 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/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请公开了一种网络地址识别方法、装置及系统,属于网络技术领域。防护设备接收到源地址为公网地址、目的地址为受保护设备的私网地址的访问请求报文后,向使用该公网地址的主机发送重定向报文。该重定向报文中携带防护设备的设备标识和位于外部网络的管理设备的IP地址,以触发主机向管理设备发送访问请求报文,以便管理设备判断该公网地址是否属于内网地址。防护设备协同管理设备判断主机所使用的公网地址是否属于内网地址,进而能够准确判断主机流量是来自内部网络还是外部网络的。避免防护设备在防护过程中对来自内部网络的主机流量造成误阻断,提高了内部网络中业务通信的稳定性和可靠性。
Description
技术领域
本申请涉及网络技术领域,特别涉及一种网络地址识别方法、装置及系统。
背景技术
互联网协议(Internet Protocol,IP)地址可以被分为公网地址(也被称为互联网地址)和私网地址。公网地址和私网地址分别对应不同的IP地址范围。通常企业内部网络中的计算机被配置一个私网地址,并使用配置的私网地址与其他计算机进行通信。
在不同网络之间,例如企业内部网络与外部网络之间或者内部子网之间,通常配置有防护设备,例如安全网关或者防火墙。防护设备根据预先配置的访问策略对流经该防护设备的流量进行安全检测。为了简便起见,访问策略通常都是使用地址段进行配置,例如针对私网地址和公网地址分别配置对应的访问策略。例如基于针对公网地址配置的访问策略,防护设备对来自外部网络的流量进行检测,确认是否存在对内部网络发起的攻击,并在存在攻击的情况下及时阻断攻击流量,从而保证内部网络的安全。
在实际使用过程中,企业内部网络中的计算机也可能被配置公网地址对应的IP地址范围中的一个IP地址。即该内部网络中的计算机被配置的IP地址虽然为公网地址,但实际上是作为内网地址被使用。在这种场景下,防护设备拦截到来自该内部网络中的计算机的报文后,会判定该报文是来自外部网络的,进而有可能基于针对公网地址配置的访问策略阻断该报文。因此造成对内部网络的计算机相关流量的误阻断,影响内网计算机的正常业务通信。
发明内容
本申请提供了一种网络地址识别方法、装置及系统,能够准确识别出主机使用的公网地址是否属于内网地址。
第一方面,提供了一种网络地址识别方法。防护设备接收第一访问请求报文,第一访问请求报文的源地址为第一公网地址、目的地址为受保护设备的私网地址,第一公网地址是第一主机的IP地址,受保护设备位于防护设备所保护的内部网络中。防护设备向第一主机发送重定向报文,重定向报文中携带管理设备的IP地址和防护设备的设备标识,以触发第一主机向管理设备发送第二访问请求报文,第二访问请求报文中携带第一公网地址和防护设备的设备标识,第二访问请求报文用于管理设备判断第一公网地址是否属于内部网络的内网地址,管理设备位于内部网络之外的外部网络。
本申请中,防护设备触发使用公网地址作为IP地址的主机向管理设备发送访问请求报文,以验证该主机的IP地址是否属于内网地址,而非直接将源地址为公网地址的报文判定为是来自外部网络的。能够避免防护设备在防护过程中对来自内部网络的主机流量造成误阻断,提高了内部网络中业务通信的稳定性和可靠性。
可选地,在防护设备向第一主机发送重定向报文之前,防护设备向受保护设备转发第一访问请求报文。防护设备接收来自受保护设备的第一访问响应报文,第一访问响应报文是第一访问请求报文对应的响应报文。防护设备基于第一访问响应报文生成重定向报文。
换句话说,防护设备对第一访问请求报文对应的响应报文修改得到重定向报文。
可选地,防护设备基于第一访问响应报文生成重定向报文的一种实现方式,包括:防护设备修改第一访问响应报文的响应码为重定向响应码,并在第一访问响应报文中添加定位字段,以得到重定向报文,定位字段包括管理设备的IP地址和标识码,标识码是基于防护设备的设备标识和第一公网地址生成的。
本申请中,重定向报文基于Location字段触发主机自动向管理设备发送第二访问请求报文。此过程用户无感知,保证了用户体验。
可选地,第二访问请求报文中携带管理设备的IP地址和标识码。
可选地,防护设备采用与管理设备约定的信息处理方式对防护设备的设备标识和第一公网地址进行编码处理和/或加密处理,以得到标识码。
本申请中,通过标识码携带防护设备的设备标识和第一公网地址,能够降低报文传输过程中信息丢失的风险。
可选地,标识码是基于防护设备的设备标识、第一公网地址和第一访问请求报文携带的统一资源定位符(uniform resource locator,URL)生成的。
可选地,防护设备采用与管理设备约定的信息处理方式对防护设备的设备标识、第一公网地址和第一访问请求报文携带的URL进行编码处理和/或加密处理,以得到标识码。
本申请中,通过标识码携带防护设备的设备标识、第一公网地址和第一访问请求报文携带的URL,能够降低报文传输过程中信息丢失的风险。
可选地,在防护设备根据第一访问请求报文的源地址,向使用第一公网地址的第一主机发送重定向报文之后,防护设备向第一主机发送第一访问响应报文。
本申请中,在防护设备协同管理设备完成对主机的IP地址识别的同时,使主机得到对发出的访问请求报文的响应,从而保证主机上业务的正常运行。整个网络地址识别过程用户无感知,保证了用户体验。
可选地,在防护设备向第一主机发送重定向报文之前,防护设备判断第一公网地址是否在IP地址集合中,IP地址集合包括属于内部网络的已知内网地址。如果第一公网地址不在IP地址集合中,防护设备向第一主机发送重定向报文。
可选地,在防护设备向第一主机发送重定向报文之后,防护设备接收来自管理设备的网络地址识别结果,网络地址识别结果指示第一公网地址是否属于内网地址。如果网络地址识别结果指示第一公网地址属于内网地址,防护设备将第一公网地址添加至IP地址集合,得到更新后的IP地址集合。
本申请中,通过IP地址集合记录属于内部网络的已知内网地址,这样,针对每个未知的公网地址只需识别一次,对防护设备和管理设备的性能影响较小。
可选地,防护设备接收第三访问请求报文,第三访问请求报文的源地址为第二公网地址,第二公网地址是第二主机的IP地址。如果第二公网地址在IP地址集合中,防护设备向第三访问请求报文的目的地址转发第三访问请求报文,省略向第二主机发送重定向报文。
可选地,防护设备部署于内部网络与外部网络之间,或者,防护设备部署于内部网络。
第二方面,提供了一种网络地址识别方法。管理设备接收来自第一主机的第一访问请求报文,第一访问请求报文中携带第一公网地址和第一防护设备的设备标识,第一公网地址是第一主机的IP地址,管理设备位于第一防护设备所保护的内部网络之外的外部网络。管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址。
如果第一主机是第一防护设备所保护的内部网络中的内网主机,那么管理设备接收到的来自第一主机的访问请求报文的源地址为该内部网络的网络出口地址。如果第一主机相对于第一防护设备所保护的内部网络为外网主机,那么管理设备接收到的来自第一主机的访问请求报文的源地址为其它私有网络的网络出口地址或第一主机的IP地址。
本申请中,管理设备能够判断主机所使用的公网地址是否属于防护设备所保护的内部网络的内网地址。以使防护设备能够准确判断来自该主机的流量是属于内部网络还是外部网络的。能够避免防护设备在防护过程中对来自内部网络的主机流量造成误阻断,从而提高了内部网络中业务通信的稳定性和可靠性。
可选地,管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址的一种实现方式,包括:管理设备根据第一访问请求报文的源地址以及第一防护设备的设备标识,判断第一公网地址是否属于内网地址。
可选地,管理设备中存储有至少一组映射关系,该至少一组映射关系中的每组映射关系包括一个或多个防护设备的设备标识对应的一个网络出口地址。该一个或多个防护设备属于同一内部网络。管理设备根据第一访问请求报文的源地址以及第一防护设备的设备标识,判断第一公网地址是否属于内网地址的实现过程,包括:管理设备根据第一防护设备的设备标识,在至少一组映射关系中查找第一防护设备的标识对应的网络出口地址。如果第一访问请求报文的源地址与第一防护设备的标识对应的网络出口地址相同,管理设备确定第一公网地址属于内网地址。如果第一访问请求报文的源地址与第一防护设备的标识对应的网络出口地址不同,管理设备确定第一公网地址不属于内网地址。
由于管理设备位于防护设备所保护的内部网络之外的外部网络,因此如果主机的IP地址属于防护设备所保护的内部网络的内网地址,那么管理设备接收到的来自该主机的访问请求报文的源地址为防护设备所保护的内部网络的网络出口地址。如果主机的IP地址不属于防护设备所保护的内部网络的内网地址,那么管理设备接收到的来自该主机的访问请求报文的源地址不会是防护设备所保护的内部网络的网络出口地址。基于此,管理设备通过判断来自主机的访问请求报文的源地址是否与防护设备所保护的内部网络的网络出口地址相同,就能够确定该主机的IP地址是否属于防护设备所保护的内部网络的内网地址。
可选地,第一公网地址和第一防护设备的设备标识是通过标识码携带在第一访问请求报文中的,标识码是基于第一防护设备的设备标识和第一公网地址生成的。在管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址之前,管理设备对第一访问请求报文进行应用层解析,从应用层解析结果中获得标识码。管理设备从标识码中获取第一防护设备的设备标识和第一公网地址。
可选地,管理设备从标识码中获取第一防护设备的设备标识和第一公网地址的实现方式,包括:管理设备采用与第一防护设备约定的信息处理方式对标识码进行解码处理和/或解密处理,从解码处理和/或解密处理的结果中得到第一防护设备的设备标识和第一公网地址。
可选地,标识码是基于第一防护设备的设备标识、第一公网地址和URL生成的,该URL是受保护设备提供的资源的URL,受保护设备位于内部网络中。管理设备从标识码中获取URL。管理设备向第一主机发送重定向报文,重定向报文中携带URL,以触发第一主机基于URL向受保护设备发送第二访问请求报文。
本申请中,管理设备能够触发第一主机基于第一访问请求报文中携带的URL向受保护设备发送第二访问请求报文。由于第二访问请求报文基于的URL与第一访问请求报文基于的URL相同,因此第二访问请求报文的请求内容与第一访问请求报文的请求内容相同。第一主机基于第二访问请求报文能够得到发送第一访问请求报文所需获取的响应。
可选地,在管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址之后,管理设备向第一防护设备发送网络地址识别结果,网络地址识别结果指示第一公网地址是否属于内网地址。
第三方面,提供了一种防护设备。所述防护设备包括多个功能模块,所述多个功能模块相互作用,实现上述第一方面及其各实施方式中的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。
第四方面,提供了一种管理设备。所述管理设备包括多个功能模块,所述多个功能模块相互作用,实现上述第二方面及其各实施方式中的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。
第五方面,提供了一种防护设备,包括:存储器、网络接口和至少一个处理器,
所述存储器用于存储程序指令,
所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述防护设备执行上述第一方面及其各实施方式中的方法。
第六方面,提供了一种管理设备,包括:存储器、网络接口和至少一个处理器,
所述存储器用于存储程序指令,
所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述防护设备执行上述第二方面及其各实施方式中的方法。
第七方面,提供了一种网络地址识别系统,包括:防护设备和管理设备;
所述防护设备用于执行上述第一方面及其各实施方式中的方法,所述管理设备用于执行上述第二方面及其各实施方式中的方法。
第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被防护设备的处理器执行时,实现上述第一方面及其各实施方式中的方法;或者,当所述指令被管理设备的处理器执行时,实现上述第二方面及其各实施方式中的方法。
第九方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被防护设备的处理器执行时,实现上述第一方面及其各实施方式中的方法;或者,所述计算机程序被管理设备的处理器执行时,实现上述第二方面及其各实施方式中的方法。
第十方面,提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当芯片运行时,实现上述第一方面及其各实施方式中的方法或上述第二方面及其各实施方式中的方法。
附图说明
图1是本申请实施例提供的一种企业内部网络的部署示意图;
图2是本申请实施例提供的一种应用场景的示意图;
图3是本申请实施例提供的一种网络地址识别方法的流程示意图;
图4是本申请实施例提供的另一种网络地址识别方法的流程示意图;
图5是本申请实施例提供的又一种网络地址识别方法的流程示意图;
图6是本申请实施例提供的再一种网络地址识别方法的流程示意图;
图7是本申请实施例提供的还一种网络地址识别方法的流程示意图;
图8是本申请实施例提供的一种防护设备的硬件结构示意图;
图9是本申请实施例提供的一种管理设备的硬件结构示意图;
图10是本申请实施例提供的一种防护设备的结构示意图;
图11是本申请实施例提供的一种管理设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
IP地址可以被分为公网地址和私网地址。公网地址和私网地址分别对应不同的IP地址范围。以IPv4地址(第四版IP地址)为例,编号为1918的请求评论(request forcomments,RFC)(简称:RFC 1918)文档中规定,私网地址分为A类、B类和C类。其中,A类对应的地址范围为10.0.0.0~10.255.255.255。B类对应的地址范围为172.16.0.0~172.31.255.255。C类对应的地址范围为192.168.0.0~192.168.255.255。IP地址中除私网地址以外的其它IP地址均为公网地址。
通常企业内部网络中的计算机被配置一个私网地址,并使用配置的私网地址与其他计算机进行通信。但是在实际使用过程中,企业内部网络中的计算机也可能被配置公网地址对应的IP地址范围中的一个IP地址,并将配置的该IP地址作为内网地址来使用。在企业内部网络中的计算机将配置的公网地址作为内网地址来使用的场景下,用来保护该企业内部网络的防护设备拦截到来自该计算机的报文后,会判定该报文是来自外部网络的,进而有可能基于针对公网地址配置的访问策略阻断该报文。因此造成对内部网络的计算机相关流量的误阻断,影响内网计算机的正常业务通信。
例如,图1是本申请实施例提供的一种企业内部网络的部署示意图。如图1所示,企业内部网络包括内部子网1和内部子网2。内部子网1中部署有计算机。内部子网2中部署有服务器。内部子网1和内部子网2之间配置有防护设备。假设内部子网1中的计算机被配置的IP地址为170.170.11.2,该IP地址为公网地址。当内部子网1中的计算机向内部子网2中的服务器发送访问请求报文时,防护设备会将该访问请求报文判定为是来自外部网络的,而实际上该访问请求报文是由企业内部网络的计算机发送的。如果防护设备基于针对公网地址配置的访问策略拦截了该访问请求报文,就会影响该计算机在内部网络中的正常业务通信。
有鉴于此,本申请实施例提出了一种识别网络地址的技术方案。防护设备通过实施本技术方案,在接收到源地址为公网地址、目的地址为受保护设备的私网地址的访问请求报文后,向使用该公网地址作为IP地址的主机发送重定向报文。防护设备通过在重定向报文中携带管理设备的IP地址和该防护设备的设备标识,以触发主机向管理设备发送访问请求报文。主机向管理设备发送的访问请求报文中携带主机的IP地址和防护设备的设备标识,以用于管理设备判断该主机的IP地址是否属于该防护设备所保护的内部网络的内网地址。其中,管理设备位于防护设备所保护的内部网络之外的外部网络。本申请实施例中,防护设备触发使用公网地址作为IP地址的主机向管理设备发送访问请求报文,以验证该主机的IP地址是否属于内网地址,而非直接将源地址为公网地址的报文判定为是来自外部网络的。能够避免防护设备在防护过程中对来自内部网络的主机流量造成误阻断,提高了内部网络中业务通信的稳定性和可靠性。
在一些实施例中,管理设备接收到来自主机的访问请求报文后,根据该访问请求报文的源地址以及防护设备的设备标识,判断该主机的IP地址是否属于该防护设备所保护的内部网络的内网地址。如果该访问请求报文的源地址与该防护设备所保护的内部网络的网络出口地址相同,则管理设备确定该主机的IP地址属于该防护设备所保护的内部网络的内网地址。如果该访问请求报文的源地址与该防护设备所保护的内部网络的网络出口地址不同,则管理设备确定该主机的IP地址不属于该防护设备所保护的内部网络的内网地址。
上述技术方案识别网络地址的基本原理在于,内网主机被配置的内网地址只能用来在内部网络中进行通信。当内网主机需要向外网设备发送报文时,内部网络的出口网关会对来自内网主机的报文进行源网络地址转换(source network address translation,SNAT),以将该报文的源地址(即内网主机使用的内网地址)映射成一个合法的公网地址,然后将经过SNAT处理的报文发送给相应的外网设备。其中,经过SNAT处理的报文的源地址即内部网络的网络出口地址。每个内部网络的网络出口地址都会被配置成合法的公网地址。由于管理设备位于防护设备所保护的内部网络之外的外部网络,因此如果主机的IP地址属于防护设备所保护的内部网络的内网地址,那么该主机向管理设备发送的访问请求报文在经过该内部网络的出口网关时,源地址会被转换为该内部网络的网络出口地址,即最终管理设备接收到的来自该主机的访问请求报文的源地址为防护设备所保护的内部网络的网络出口地址。如果主机的IP地址不属于防护设备所保护的内部网络的内网地址,那么该主机向管理设备发送的访问请求报文不会经过该内部网络的出口网关,最终管理设备接收到的来自该主机的访问请求报文的源地址也不会是防护设备所保护的内部网络的网络出口地址。基于此,管理设备通过判断来自主机的访问请求报文的源地址是否与防护设备所保护的内部网络的网络出口地址相同,就能够确定该主机的IP地址是否属于防护设备所保护的内部网络的内网地址。
值得说明的是,本申请涉及的内部网络和外部网络是相对防护设备而言的。内部网络指防护设备所保护的私有网络,外部网络指互联网(也称公共网络)。
下面从应用场景、方法流程、硬件装置、软件装置等多个角度,对本技术方案进行详细介绍。
下面对本申请实施例的应用场景举例说明。
例如,图2是本申请实施例提供的一种应用场景的示意图。如图2所示,该应用场景主要涉及到五类设备,这五类设备分别是管理设备、防护设备、出口网关、主机和受保护设备。下面对这五类设备分别举例说明。
(1)管理设备
管理设备部署于互联网,用于管理防护设备,例如协助防护设备进行版本升级等。可选地,管理设备用于管理一个或多个私有网络所配置的防护设备。管理设备例如是一台服务器、或者由若干台服务器构成的服务器集群,或者是公有云平台等任何能够提供网络地址识别功能的本地/云上的模块、设备或系统。管理设备对外开放服务,能够承载私有网络发起的请求。
(2)防护设备
防护设备部署于私有网络与互联网之间,即防护设备部署在私有网络的边界。或者,防护设备部署于私有网络的内部子网之间,即防护设备部署在私有网络中。可选地,私有网络包括一个或多个内部子网。不同内部子网可部署在不同地域。从防护设备的角度来看,防护设备所保护的私有网络为内部网络,互联网为外部网络。防护设备用于保护内部网络中的受保护设备免受攻击。防护设备对从外部网络进入内部网络的流量进行安全性检测,从而确认流量是正常流量还是攻击流量。此外,防护设备还会阻断攻击流量从而保证受保护设备的安全性,同时转发正常流量从而保证受保护设备能向正常客户端提供服务。防护设备包括但不限于防火墙、安全网关(如路由器或交换机)、入侵检测系统(intrusiondetection system,IDS)类设备、入侵防御系统(intrusion prevention system,IPS)类设备、统一威胁管理(unified threat management,UTM)设备、反病毒(anti-virus,AV)设备、抗分布式拒绝服务攻击(anti-DDoS)设备、下一代防火墙(next generation firewall,NGFW)中一项或多项的集成。
(3)出口网关
出口网关也称网络地址转换(network address translation,NAT)网关,部署于私有网络与互联网之间。出口网关具有2个网络端口,包括公共网络端口和私有网络端口。其中公共网络端口的IP地址是统一分配的公共地址,在互联网中作为合法的公网地址来使用。每个私有网络配置一个出口网关。本申请实施例中,将出口网关的公共网络端口的IP地址称为私有网络的网络出口地址。私有网络端口的IP地址是私网地址,用于在内部网络中使用。出口网关用于根据NAT映射表中保存的地址端口对应关系,对内网设备向外网设备发送的报文进行SNAT,并对外网设备向内网设备发送的报文进行目的网络地址转换(destination NAT,DNAT),从而实现内网设备与外网设备之间的通信。可选地,出口网关为独立部署的网关。或者出口网关与部署在私有网络的边界的防护设备集成在一台设备中。本申请实施例以出口网关为独立部署的网关为例进行说明。
(4)主机
主机指安装有客户端的终端设备,例如是智能手机、平板电脑、台式计算机、物联网(internet of things,IoT)设备、网络设备、工作站或服务器等。部署在私有网络中的主机为内网主机。部署在私有网络之外的主机为外网主机。对于一个私有网络而言,部署在互联网或其它私有网络的主机均为外网主机。可选地,本申请实施例中的主机能够基于超文本传输协议(hyper text transfer protocol,HTTP)请求服务。
(5)受保护设备
受保护设备位于防护设备所保护的内部网络中。受保护设备的IP地址被配置为私网地址。受保护设备为受保护的服务器。受保护设备用于向客户端提供服务。受保护设备包括但不限于应用服务器或网页服务器。其中,应用服务器包括但不限于游戏服务器、视频应用服务器、文件服务器、搜索引擎服务器、即时通信服务器等等。网页服务器也称万维网(world wide web,web)服务器或者网站服务器。可选地,本申请实施例中的受保护设备基于HTTP提供服务。
下面对本申请实施例的方法流程举例说明。
图3是本申请实施例提供的一种网络地址识别方法300的流程示意图。如图3所示,方法300包括步骤301至步骤305。在方法300中,受保护设备1位于防护设备1所保护的内部网络中。管理设备位于防护设备1所保护的内部网络之外的外部网络。防护设备1部署于内部网络与外部网络之间,或者,防护设备1部署于内部网络。例如方法300能够应用于如图2所示的应用场景。方法300中的主机1为图2中的内网主机或外网主机。方法300中的防护设备1为图2中的防护设备。方法300中的受保护设备1为图2中的受保护设备。方法300中的管理设备为图2中的管理设备。可选地,方法300中的防护设备1包括但不限于一台物理设备、或者包含多台物理设备的分布式系统(有时也称为防护系统)。
步骤301、主机1向受保护设备1发送访问请求报文1。
访问请求报文1的源地址为公网地址1、目的地址为受保护设备1的私网地址。公网地址1是主机1的IP地址。
可选地,访问请求报文1是基于HTTP的请求报文。访问请求报文1中携带URL,该URL是受保护设备1提供的资源的URL。可选地,URL中包括受保护设备1的私网地址。例如,访问请求报文1中携带的URL为“http://10.10.23.11/blog”。在该URL中,“10.10.23.11”是受保护设备1的私网地址,“blog”是路径。该URL为受保护设备1提供的一个网页链接。
由于受保护设备1位于防护设备1所保护的内部网络中,因此主机1发送的访问请求报文1在到达受保护设备1之前,会先经过防护设备1。防护设备1接收到访问请求报文1之后,执行如下步骤302。
步骤302、防护设备1向主机1发送重定向报文1,重定向报文1中携带管理设备的IP地址和防护设备1的设备标识。
可选地,防护设备1中维护一个IP地址集合,该IP地址集合包括属于防护设备1所保护的内部网络的已知内网地址。IP地址集合用于记录内部网络中配置的用作内网地址的公网地址。可选地,IP地址集合还用于记录内部网络中配置的私网地址。
防护设备1向主机1发送重定向报文1之前,判断公网地址1是否在IP地址集合中。如果公网地址1不在IP地址集合中,则防护设备1向主机1发送重定向报文1。如果公网地址1在IP地址集合中,则防护设备1向受保护设备1转发访问请求报文1,省略向主机1发送重定向报文1。
可选地,重定向报文1是基于HTTP的重定向报文。可选地,重定向报文1包括定位(Location)字段,该定位字段包括管理设备的IP地址和标识码。该标识码是基于防护设备1的设备标识和公网地址1生成的。可选地,防护设备1的设备标识为防护设备1的IP地址或设备序列号等。例如,重定向报文1中的定位字段为“Location:http://124.90.34.214/SecCode”。其中,“124.90.34.214”是管理设备的IP地址。“SecCode”是标识码,标识码中携带的关于防护设备1的设备标识和公网地址1的信息为认证信息。
可选地,防护设备1采用与管理设备约定的信息处理方式对防护设备1的设备标识和公网地址1进行编码处理和/或加密处理,以得到标识码。例如,防护设备1与管理设备约定采用特定编码方式对防护设备1的设备标识和公网地址1进行编码处理,以得到标识码。或者,防护设备1与管理设备约定采用特定加密算法对防护设备1的设备标识和公网地址1进行加密处理,以得到标识码。又或者,防护设备1与管理设备约定先采用特定编码方式对防护设备1的设备标识和公网地址1进行编码处理,再采用特定加密算法对编码结果进行加密处理,以得到标识码。又或者,防护设备1与管理设备约定先采用特定加密算法对防护设备1的设备标识和公网地址1进行加密处理,再采用特定编码算法对加密结果进行编码处理,以得到标识码。可选地,编码方式包括但不限于base64编码。加密算法包括但不限于高级加密标准(advanced encryption standard,AES)算法、数据加密算法(data encryptionalgorithm,DES)。
重定向报文1用于触发针对主机1的IP地址的识别流程,具体实现过程参见以下步骤303至步骤304。
步骤303、主机1向管理设备发送访问请求报文2,访问请求报文2中携带公网地址1和防护设备1的设备标识。
主机1在重定向报文1的触发下向管理设备发送访问请求报文2。可选地,如果重定向报文1中携带管理设备的IP地址和标识码,则访问请求报文2中也携带管理设备的IP地址和标识码,公网地址1和防护设备1的设备标识通过标识码携带在访问请求报文2中。
可选地,访问请求报文2是基于HTTP的请求报文。例如参考步骤302中的例子,重定向报文1中携带定位字段“Location:http://124.90.34.214/SecCode”,则主机1接收到重定向报文1后,自动响应重定向报文1,响应重定向报文1所执行的内容为向管理设备发送访问请求报文2,访问请求报文2中携带的URL为“http://124.90.34.214/SecCode”。
步骤304、管理设备基于访问请求报文2中携带的防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。
如果主机1是防护设备1所保护的内部网络中的内网主机,那么主机1向管理设备发送的访问请求报文2会经过该内部网络的出口网关,由出口网关进行SNAT之后再发送给管理设备,最终到达管理设备的访问请求报文是经过SNAT处理的报文。即管理设备最终接收到的来自主机1的访问请求报文的源地址为该内部网络的网络出口地址。
如果主机1相对于防护设备1所保护的内部网络为外网主机,那么主机1向管理设备发送的访问请求报文2不会经过该内部网络的出口网关。若主机1是其它私有网络中的主机,则管理设备最终接收到的来自主机1的访问请求报文的源地址为其它私有网络的网络出口地址。若主机1是互联网中的主机,则管理设备最终接收到的来自主机1的访问请求报文的源地址为主机1的IP地址。
可选地,步骤304的一种实现方式包括:管理设备根据接收到的来自主机1的访问请求报文的源地址以及防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。
可选地,管理设备中存储有至少一组映射关系。该至少一组映射关系中的每组映射关系包括一个或多个防护设备的设备标识对应的一个网络出口地址。这一个或多个防护设备属于同一内部网络,也即是,一个内部网络中的所有防护设备对应同一个网络出口地址,这个网络出口地址即该内部网络的网络出口地址,例如是该内部网络的出口网关被配置的公网地址。管理设备根据接收到的来自主机1的访问请求报文的源地址以及防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址的实现过程,包括:管理设备根据防护设备1的设备标识,在存储的至少一组映射关系中查找防护设备1的标识对应的网络出口地址。如果管理设备接收到的来自主机1的访问请求报文的源地址与防护设备1的标识对应的网络出口地址相同,管理设备确定公网地址1属于防护设备1所保护的内部网络的内网地址。如果管理设备接收到的来自主机1的访问请求报文的源地址与防护设备1的标识对应的网络出口地址不同,管理设备确定公网地址1不属于防护设备1所保护的内部网络的内网地址。
可选地,公网地址1和防护设备1的设备标识是通过标识码携带在访问请求报文2中的。则管理设备在执行步骤304之前,先对接收到的来自主机1的访问请求报文进行应用层解析,从应用层解析结果中获得标识码,然后从标识码中获取防护设备1的设备标识和公网地址1,以得到待验证信息。
可选地,管理设备从标识码中获取防护设备1的设备标识和公网地址1的实现方式包括:管理设备采用与防护设备1约定的信息处理方式对标识码进行解码处理和/或解密处理,从解码处理和/或解密处理的结果中得到防护设备1的设备标识和公网地址1。例如,防护设备1与管理设备约定采用特定编码方式对防护设备1的设备标识和公网地址1进行编码处理以得到标识码,那么管理设备采用相应的解码方式对标识码进行解码处理以得到防护设备1的设备标识和公网地址1。或者,防护设备1与管理设备约定采用特定加密算法对防护设备1的设备标识和公网地址1进行加密处理以得到标识码,那么管理设备采用相应的解密算法对标识码进行解密处理以得到防护设备1的设备标识和公网地址1。又或者,防护设备1与管理设备约定先采用特定编码方式对防护设备1的设备标识和公网地址1进行编码处理、再采用特定加密算法对编码结果进行加密处理以得到标识码,那么管理设备先采用相应的解密算法对标识码进行解密处理、再采用相应的解码方式对解密结果进行解码处理以得到防护设备1的设备标识和公网地址1。又或者,防护设备1与管理设备约定先采用特定加密算法对防护设备1的设备标识和公网地址1进行加密处理、再采用特定编码算法对加密结果进行编码处理以得到标识码,那么管理设备先采用相应的解码方式对标识码进行解码处理、再采用相应的解密算法对解码结果进行解密处理以得到防护设备1的设备标识和公网地址1。
可选地,管理设备在判定公网地址1是否属于防护设备1所保护的内部网络的内网地址后,还执行以下步骤305。
步骤305、管理设备向防护设备1发送网络地址识别结果。
该网络地址识别结果指示公网地址1是否属于防护设备1所保护的内部网络的内网地址。网络地址识别结果包括公网地址1以及针对公网地址1的识别结果指示符。可选地,识别结果指示符采用多种可能的表示方式,例如,通过不同的字符串分别指示内网地址或外网地址,或者通过不同整数值(或整数值范围)分别指示内网地址或外网地址。
例如,识别结果指示符为inIP,表示公网地址1属于内网地址。识别结果指示符为outIP,表示公网地址1不属于内网地址。又例如,识别结果指示符为1,表示公网地址1属于内网地址。识别结果指示符为0,表示公网地址1不属于内网地址。本申请实施例对识别结果指示符的表示方式不做限定。
可选地,管理设备在判定公网地址1是否属于防护设备1所保护的内部网络的内网地址后,主动向防护设备1发送网络地址识别结果。或者,管理设备在判定公网地址1是否属于防护设备1所保护的内部网络的内网地址后,保存网络地址识别结果,防护设备在升级过程中将管理设备中保存的网络地址识别结果同步至本地。本申请实施例对防护设备获取网络地址识别结果的时机和方式均不做限定。
可选地,如果防护设备1接收到的网络地址识别结果指示公网地址1属于防护设备1所保护的内部网络的内网地址,防护设备将公网地址1添加至IP地址集合,得到更新后的IP地址集合。此后,防护设备1再接收到来自主机1的访问请求报文,基于更新后的IP地址集合确定该访问请求报文的源地址属于内网地址,然后直接向该访问请求报文的目的地址转发该访问请求报文,而无需再向主机1发送重定向报文以触发对主机1的IP地址的识别流程。这种实现机制下,针对每个未知的公网地址只需识别一次,对防护设备和管理设备的性能影响较小。
本申请实施例中,通过防护设备以及位于防护设备所保护的内部网络之外的外部网络的管理设备,协同判断主机所使用的公网地址是否属于防护设备所保护的内部网络的内网地址,进而能够准确判断来自该主机的流量是属于内部网络还是外部网络的。能够避免防护设备在防护过程中对来自内部网络的主机流量造成误阻断,从而提高了内部网络中业务通信的稳定性和可靠性。
可选地,在上述步骤301的执行过程中,防护设备1接收到来自主机1的访问请求报文1之后,拦截访问请求报文1,并直接生成重定向报文1,然后执行步骤302。或者,防护设备1接收到来自主机1的访问请求报文1之后,向受保护设备1转发访问请求报文1,并在接收到来自受保护设备1的访问响应报文1之后,基于访问响应报文1生成重定向报文1,然后执行步骤302。
可选地,结合防护设备1基于访问响应报文1生成重定向报文1的实现方式,通过以下实施例对本申请技术方案的实现过程进行说明。例如,图4是本申请实施例提供的一种网络地址识别方法400的流程示意图。如图4所示,方法400包括步骤401至步骤408。在方法400中,受保护设备1位于防护设备1所保护的内部网络中。管理设备位于防护设备1所保护的内部网络之外的外部网络。防护设备1部署于内部网络与外部网络之间,或者,防护设备1部署于内部网络。例如方法400能够应用于如图2所示的应用场景。方法400中的主机1为图2中的内网主机或外网主机。方法400中的防护设备1为图2中的防护设备。方法400中的受保护设备1为图2中的受保护设备。方法400中的管理设备为图2中的管理设备。可选地,方法400中的防护设备1包括但不限于一台物理设备、或者包含多台物理设备的分布式系统(有时也称为防护系统)。
步骤401、主机1向受保护设备1发送访问请求报文1。
此步骤401的实现过程参考上述步骤301的相关内容,本申请实施例在此不再赘述。
步骤402、防护设备1向受保护设备1转发访问请求报文1。
换句话说,主机1向受保护设备1发送的访问请求报文1经过防护设备1后到达受保护设备1。
步骤403、受保护设备向主机1发送访问响应报文1。
访问响应报文1是访问请求报文1对应的响应报文。
可选地,访问请求报文1是基于HTTP的请求报文。相应地,访问响应报文1是基于HTTP的响应报文。例如,访问响应报文1为“http/1.1 200ok”。其中,“200”是请求响应码。
步骤404、防护设备1基于访问响应报文1生成重定向报文1,重定向报文1中携带管理设备的IP地址和防护设备1的设备标识。
可选地,步骤404的一种实现方式包括:防护设备1修改访问响应报文1的响应码为重定向响应码,并在访问响应报文1中添加定位字段,以得到重定向报文1。定位字段包括管理设备的IP地址和标识码。标识码是基于防护设备1的设备标识和公网地址1生成的。标识码的生成方式可参考上述步骤302中的相关内容,本申请实施例在此不再赘述。
例如,参考步骤403中的例子,基于访问响应报文1“http/1.1 200ok”生成的重定向报文1为“http/1.1 302Location:http://124.90.34.214/SecCode ok”。其中,“302”是重定向响应码。“Location:http://124.90.34.214/SecCode”是定位字段。对定位字段的解释可参考上述步骤302中的相关内容,本申请实施例在此不再赘述。
步骤405、防护设备1向主机1发送重定向报文1。
步骤406、主机1向管理设备发送访问请求报文2,访问请求报文2中携带公网地址1和防护设备1的设备标识。
步骤407、管理设备基于访问请求报文2中携带的防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。
步骤408、管理设备向防护设备1发送网络地址识别结果。
该网络地址识别结果指示公网地址1是否属于防护设备1所保护的内部网络的内网地址。
上述步骤405至步骤408的实现过程参考上述步骤302至步骤305的相关内容,本申请实施例在此不再赘述。
主机基于业务需求向受保护设备发送访问请求报文。为了保证主机上的业务能够正常运行,主机向受保护设备发送访问请求报文后,需要得到受保护设备对该访问请求报文的响应。
在上述方法400中,防护设备1接收到了受保护设备针对访问请求报文1发送的访问响应报文1。因此在方法400的基础上,主机1获取对访问请求报文的响应的第一种实现方式为,防护设备1向主机1发送访问响应报文1。结合第一种实现方式,通过以下实施例对本申请技术方案的实现过程进行说明。例如,图5是本申请实施例提供的一种网络地址识别方法500的流程示意图。如图5所示,方法500包括步骤501至步骤509。在方法500中,受保护设备1位于防护设备1所保护的内部网络中。管理设备位于防护设备1所保护的内部网络之外的外部网络。防护设备1部署于内部网络与外部网络之间,或者,防护设备1部署于内部网络。例如方法500能够应用于如图2所示的应用场景。方法500中的主机1为图2中的内网主机或外网主机。方法500中的防护设备1为图2中的防护设备。方法500中的受保护设备1为图2中的受保护设备。方法500中的管理设备为图2中的管理设备。可选地,方法500中的防护设备1包括但不限于一台物理设备、或者包含多台物理设备的分布式系统(有时也称为防护系统)。
步骤501、主机1向受保护设备1发送访问请求报文1。
步骤502、防护设备1向受保护设备1转发访问请求报文1。
步骤503、受保护设备向主机1发送访问响应报文1。
步骤504、防护设备1基于访问响应报文1生成重定向报文1,重定向报文1中携带管理设备的IP地址和防护设备1的设备标识。
步骤505、防护设备1向主机1发送重定向报文1。
步骤506、主机1向管理设备发送访问请求报文2,访问请求报文2中携带公网地址1和防护设备1的设备标识。
步骤507、防护设备1向主机1发送访问响应报文1。
可选地,主机1接收到访问响应报文1之后,按照业务需求与受保护设备进行业务交互。
步骤508、管理设备基于访问请求报文2中携带的防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。
步骤509、管理设备向防护设备1发送网络地址识别结果。
该网络地址识别结果指示公网地址1是否属于防护设备1所保护的内部网络的内网地址。
上述步骤501至步骤506的实现过程参考上述步骤401至步骤406的相关内容,上述步骤508至步骤509的实现过程参考上述步骤407至步骤408的相关内容,本申请实施例在此不再赘述。
可选地,上述方法500中,步骤507能够在步骤508至步骤509之后执行。或者,步骤507也能够与步骤508至步骤509同时执行。
本申请实施例中,在防护设备协同管理设备完成对主机的IP地址识别的同时,能够保证主机上业务的正常运行。整个网络地址识别过程用户无感知,保证了用户体验。
可选地,主机1获取对访问请求报文的响应的第二种实现方式为,由管理设备触发主机1再次发送访问请求报文,以使主机1得到对访问请求报文的响应。第二种实现方式在上述方法300或方法400的基础上均能实现。
在上述方法300的基础上结合第二种实现方式,通过以下实施例对本申请技术方案的实现过程进行说明。例如,图6是本申请实施例提供的一种网络地址识别方法600的流程示意图。如图6所示,方法600包括步骤601至步骤610。在方法600中,受保护设备1位于防护设备1所保护的内部网络中。管理设备位于防护设备1所保护的内部网络之外的外部网络。防护设备1部署于内部网络与外部网络之间,或者,防护设备1部署于内部网络。例如方法600能够应用于如图2所示的应用场景。方法600中的主机1为图2中的内网主机或外网主机。方法600中的防护设备1为图2中的防护设备。方法600中的受保护设备1为图2中的受保护设备。方法600中的管理设备为图2中的管理设备。可选地,方法600中的防护设备1包括但不限于一台物理设备、或者包含多台物理设备的分布式系统(有时也称为防护系统)。
步骤601、主机1向受保护设备1发送访问请求报文1。
步骤602、防护设备1向主机1发送重定向报文1,重定向报文1中携带管理设备的IP地址、防护设备1的设备标识和访问请求报文1中携带的URL。
访问请求报文1中携带的URL是受保护设备1提供的资源的URL。
可选地,重定向报文1是基于HTTP的重定向报文。可选地,重定向报文1包括定位字段,该定位字段包括管理设备的IP地址和标识码。该标识码是基于防护设备1的设备标识、公网地址1和访问请求报文1携带的URL生成的。
可选地,防护设备1采用与管理设备约定的信息处理方式对防护设备1的设备标识、公网地址1和访问请求报文1携带的URL进行编码处理和/或加密处理,以得到标识码。
此步骤602的其余实现过程参考上述步骤302的相关内容,本申请实施例在此不再赘述。
步骤603、主机1向管理设备发送访问请求报文2,访问请求报文2中携带公网地址1、防护设备1的设备标识和访问请求报文1中携带的URL。
可选地,公网地址1、防护设备1的设备标识和访问请求报文1中携带的URL通过标识码携带在访问请求报文2中。
此步骤603的其余实现过程参考上述步骤303的相关内容,本申请实施例在此不再赘述。
步骤604、管理设备基于访问请求报文2中携带的防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。
步骤605、管理设备向防护设备1发送网络地址识别结果。
该网络地址识别结果指示公网地址1是否属于防护设备1所保护的内部网络的内网地址。
上述步骤604至步骤605的实现过程参考上述步骤304至步骤305的相关内容,本申请实施例在此不再赘述。
步骤606、管理设备向主机1发送重定向报文2,重定向报文2中携带访问请求报文1中携带的URL。
可选地,公网地址1、防护设备1的设备标识和访问请求报文1中携带的URL通过标识码携带在访问请求报文2中。则管理设备在执行步骤304之前,对接收到的来自主机1的访问请求报文进行应用层解析,从应用层解析结果中获得标识码之后,能够从标识码中获取防护设备1的设备标识、公网地址1和访问请求报文1中携带的URL。管理设备基于访问请求报文1中携带的URL生成重定向报文2。
重定向报文2是对访问请求报文2的响应报文。可选地,重定向报文2是基于HTTP的重定向报文。可选地,重定向报文2包括定位字段,该定位字段包括访问请求报文1中携带的URL。例如,参考步骤301中的例子,访问请求报文1中携带的URL为“http://10.10.23.11/blog”,则重定向报文2中的定位字段为“Location:http://10.10.23.11/blog”。
重定向报文2用于触发主机1基于URL向受保护设备1发送访问请求报文。
步骤607、主机1基于重定向报文2中携带的URL向受保护设备1发送访问请求报文3。
由于访问请求报文3基于的URL与访问请求报文1基于的URL相同,因此访问请求报文3的请求内容与访问请求报文1的请求内容相同。主机1基于访问请求报文3能够得到发送访问请求报文1所需获取的响应。
可选地,重定向报文2基于Location字段触发主机1自动基于重定向报文2中携带的URL向受保护设备1发送访问请求报文3。此过程用户无感知,保证了用户体验。
步骤608、防护设备1向受保护设备1转发访问请求报文3。
换句话说,主机1向受保护设备1发送的访问请求报文3经过防护设备1后到达受保护设备1。由于防护设备1在步骤602中已触发过针对主机1的IP地址的识别流程,因此防护设备1再次接收到来自主机1的访问请求报文后,不再向主机1发送重定向报文。
步骤609、受保护设备1向主机1发送访问响应报文2。
访问响应报文2是访问请求报文3对应的响应报文。此步骤608的实现过程参考上述步骤403的相关内容,本申请实施例在此不再赘述。
步骤610、防护设备1向主机1转发访问响应报文2。
换句话说,受保护设备1向主机1发送的访问响应报文2经过防护设备1后到达主机1。访问响应报文2的响应内容与访问响应报文1的响应内容相同。
可选地,上述方法600中,步骤606至步骤610能够在步骤604至步骤605之前执行。或者,步骤606至步骤610也能够与步骤604至步骤605同时执行。
本申请实施例中,在防护设备协同管理设备完成对主机的IP地址识别的同时,能够保证主机上业务的正常运行。
在上述方法400的基础上结合第二种实现方式,通过以下实施例对本申请技术方案的实现过程进行说明。例如,图7是本申请实施例提供的一种网络地址识别方法700的流程示意图。如图7所示,方法700包括步骤701至步骤713。在方法700中,受保护设备1位于防护设备1所保护的内部网络中。管理设备位于防护设备1所保护的内部网络之外的外部网络。防护设备1部署于内部网络与外部网络之间,或者,防护设备1部署于内部网络。例如方法700能够应用于如图2所示的应用场景。方法700中的主机1为图2中的内网主机或外网主机。方法700中的防护设备1为图2中的防护设备。方法700中的受保护设备1为图2中的受保护设备。方法700中的管理设备为图2中的管理设备。可选地,方法700中的防护设备1包括但不限于一台物理设备、或者包含多台物理设备的分布式系统(有时也称为防护系统)。
步骤701、主机1向受保护设备1发送访问请求报文1。
步骤702、防护设备1向受保护设备1转发访问请求报文1。
步骤703、受保护设备向主机1发送访问响应报文1。
步骤704、防护设备1基于访问响应报文1生成重定向报文1,重定向报文1中携带管理设备的IP地址、防护设备1的设备标识和访问请求报文1中携带的URL。
步骤705、防护设备1向主机1发送重定向报文1。
步骤706、主机1向管理设备发送访问请求报文2,访问请求报文2中携带公网地址1、防护设备1的设备标识和访问请求报文1中携带的URL。
步骤707、管理设备基于访问请求报文2中携带的防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。
步骤708、管理设备向防护设备1发送网络地址识别结果。
该网络地址识别结果指示公网地址1是否属于防护设备1所保护的内部网络的内网地址。
步骤709、管理设备向主机1发送重定向报文2,重定向报文2中携带访问请求报文1中携带的URL。
步骤710、主机1基于重定向报文2中携带的URL向受保护设备1发送访问请求报文3。
步骤711、防护设备1向受保护设备1转发访问请求报文3。
步骤712、受保护设备1向主机1发送访问响应报文2。
步骤713、防护设备1向主机1转发访问响应报文2。
上述步骤701至步骤708的实现过程参考上述步骤401至步骤408的相关内容,上述步骤709至步骤713的实现过程参考上述步骤606至步骤610的相关内容,本申请实施例在此不再赘述。
可选地,上述方法700中,步骤709至步骤713能够在步骤707至步骤708之前执行。或者,步骤709至步骤713也能够与步骤707至步骤708同时执行。
本申请实施例中,在防护设备协同管理设备完成对主机的IP地址识别的同时,能够保证主机上业务的正常运行。
本申请实施例提供的上述网络地址识别方法的步骤的先后顺序能够进行适当调整,步骤也能够根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内。例如,上述方法400至方法700中,除了上述添加Location字段内容生成重定向报文,以触发主机产生跳转以外,也能够使用在报文中插入JavaScript脚本等其他技术手段生成重定向报文。
本申请实施例提供了一种网络地址识别方法。该方法包括以下步骤S101至S102。
在步骤S101中,防护设备接收第一访问请求报文,第一访问请求报文的源地址为第一公网地址、目的地址为受保护设备的私网地址,第一公网地址是第一主机的IP地址,受保护设备位于防护设备所保护的内部网络中。
在步骤S102中,防护设备向第一主机发送重定向报文,重定向报文中携带管理设备的IP地址和防护设备的设备标识,以触发第一主机向管理设备发送第二访问请求报文,第二访问请求报文中携带第一公网地址和防护设备的设备标识,第二访问请求报文用于管理设备判断第一公网地址是否属于内部网络的内网地址,管理设备位于内部网络之外的外部网络。
该方法具体用于实现上述方法300、方法400、方法500、方法600或方法700。防护设备例如是附图3至附图7所描述的实施例中的防护设备1,第一主机例如是附图3至附图7所描述的实施例中的主机1,受保护设备例如是附图3至附图7所描述的实施例中的受保护设备1。第一访问请求报文例如是访问请求报文1,第一公网地址例如是公网地址1,重定向报文例如是重定向报文1,第二访问请求报文例如是访问请求报文2。步骤S101和步骤S102的具体实现过程参考上述方法中的相关步骤,本申请实施例在此不再赘述。
可选地,在防护设备向第一主机发送重定向报文之前,防护设备向受保护设备转发第一访问请求报文。防护设备接收来自受保护设备的第一访问响应报文,第一访问响应报文是第一访问请求报文对应的响应报文。防护设备基于第一访问响应报文生成重定向报文。可选地,该方式具体用于实现上述方法400、方法500或方法700。第一访问响应报文例如是访问响应报文1。
可选地,防护设备基于第一访问响应报文生成重定向报文的一种实现方式,包括:防护设备修改第一访问响应报文的响应码为重定向响应码,并在第一访问响应报文中添加定位字段,以得到重定向报文,定位字段包括管理设备的IP地址和标识码,标识码是基于防护设备的设备标识和第一公网地址生成的。可选地,该方式具体用于实现上述方法400、方法500或方法700。
可选地,第二访问请求报文中携带管理设备的IP地址和标识码。
可选地,防护设备采用与管理设备约定的信息处理方式对防护设备的设备标识和第一公网地址进行编码处理和/或加密处理,以得到标识码。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,标识码是基于防护设备的设备标识、第一公网地址和第一访问请求报文携带的URL生成的。
可选地,防护设备采用与管理设备约定的信息处理方式对防护设备的设备标识、第一公网地址和第一访问请求报文携带的URL进行编码处理和/或加密处理,以得到标识码。可选地,该方式具体用于实现上述方法600或方法700。
可选地,在防护设备根据第一访问请求报文的源地址,向使用第一公网地址的第一主机发送重定向报文之后,防护设备向第一主机发送第一访问响应报文。可选地,该方式具体用于实现上述方法500。
可选地,在防护设备向第一主机发送重定向报文之前,防护设备判断第一公网地址是否在IP地址集合中,IP地址集合包括属于内部网络的已知内网地址。如果第一公网地址不在IP地址集合中,防护设备向第一主机发送重定向报文。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,在防护设备向第一主机发送重定向报文之后,防护设备接收来自管理设备的网络地址识别结果,网络地址识别结果指示第一公网地址是否属于内网地址。如果网络地址识别结果指示第一公网地址属于内网地址,防护设备将第一公网地址添加至IP地址集合,得到更新后的IP地址集合。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,防护设备接收第三访问请求报文,第三访问请求报文的源地址为第二公网地址,第二公网地址是第二主机的IP地址。如果第二公网地址在IP地址集合中,防护设备向第三访问请求报文的目的地址转发第三访问请求报文,省略向第二主机发送重定向报文。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,防护设备部署于内部网络与外部网络之间,或者,防护设备部署于内部网络。
本申请实施例还提供了一种网络地址识别方法。该方法包括以下步骤S201至S202。
在步骤S201中,管理设备接收来自第一主机的第一访问请求报文,第一访问请求报文中携带第一公网地址和第一防护设备的设备标识,第一公网地址是第一主机的IP地址,管理设备位于第一防护设备所保护的内部网络之外的外部网络。
在步骤S202中,管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址。
该方法具体用于实现上述方法300、方法400、方法500、方法600或方法700。第一防护设备例如是附图3至附图7所描述的实施例中的防护设备1,第一主机例如是附图3至附图7所描述的实施例中的主机1。第一访问请求报文例如是附图3至附图7所描述的实施例中的访问请求报文2,第一公网地址例如是附图3至附图7所描述的实施例中的公网地址1。步骤S201和步骤S202的具体实现过程参考上述方法中的相关步骤,本申请实施例在此不再赘述。
可选地,管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址的一种实现方式,包括:管理设备根据第一访问请求报文的源地址以及第一防护设备的设备标识,判断第一公网地址是否属于内网地址。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,管理设备中存储有至少一组映射关系,该至少一组映射关系中的每组映射关系包括一个或多个防护设备的设备标识对应的一个网络出口地址。该一个或多个防护设备属于同一内部网络。管理设备根据第一访问请求报文的源地址以及第一防护设备的设备标识,判断第一公网地址是否属于内网地址的实现过程,包括:管理设备根据第一防护设备的设备标识,在至少一组映射关系中查找第一防护设备的标识对应的网络出口地址。如果第一访问请求报文的源地址与第一防护设备的标识对应的网络出口地址相同,管理设备确定第一公网地址属于内网地址。如果第一访问请求报文的源地址与第一防护设备的标识对应的网络出口地址不同,管理设备确定第一公网地址不属于内网地址。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,第一公网地址和第一防护设备的设备标识是通过标识码携带在第一访问请求报文中的,标识码是基于第一防护设备的设备标识和第一公网地址生成的。在管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址之前,管理设备对第一访问请求报文进行应用层解析,从应用层解析结果中获得标识码。管理设备从标识码中获取第一防护设备的设备标识和第一公网地址。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,管理设备从标识码中获取第一防护设备的设备标识和第一公网地址的实现方式,包括:管理设备采用与第一防护设备约定的信息处理方式对标识码进行解码处理和/或解密处理,从解码处理和/或解密处理的结果中得到第一防护设备的设备标识和第一公网地址。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
可选地,标识码是基于第一防护设备的设备标识、第一公网地址和URL生成的,该URL是受保护设备提供的资源的URL,受保护设备位于内部网络中。管理设备从标识码中获取URL。管理设备向第一主机发送重定向报文,重定向报文中携带URL,以触发第一主机基于URL向受保护设备发送第二访问请求报文。可选地,该方式具体用于实现上述方法600或方法700。受保护设备例如是受保护设备1,重定向报文例如是重定向报文2,第二访问请求报文例如是访问请求报文3。
可选地,在管理设备基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址之后,管理设备向第一防护设备发送网络地址识别结果,网络地址识别结果指示第一公网地址是否属于内网地址。可选地,该方式具体用于实现上述方法300、方法400、方法500、方法600或方法700。
下面对防护设备的基本硬件结构举例说明。
例如,图8是本申请实施例提供的一种防护设备的硬件结构示意图。如图8所示,防护设备800包括处理器801、转发芯片802和至少一个网络接口803。可选地,结合图2来看,图8中的防护设备800是图2所示的防护设备。
可选地,处理器801包括中央处理器(central processing unit,CPU)和/或专用硬件芯片。CPU是指通用的CPU,其扩展性和灵活性较高。CPU例如是一个单核处理器(single-CPU),又如是一个多核处理器(multi-CPU)。专用硬件芯片是一个高性能处理的硬件模块。专用硬件芯片包括专用集成电路(application-specific integrated circuit,ASIC)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)或者网络处理器(network processer,NP)中的至少一项。
转发芯片802用于进行请求以及数据的转发。例如,转发芯片802用于防护设备800向受保护设备转发访问请求报文,以及向主机转发访问响应报文。
至少一个网络接口803例如包括图8中的网络接口1、网络接口2、网络接口3……网络接口n。网络接口803使用任何收发器一类的装置,用于与其它设备或通信网络通信。例如,图8中的网络接口1与受保护设备通信,图8中的网络接口2与主机通信。可选地,网络接口803包括有线网络接口或者无线网络接口中的至少一项。其中,有线网络接口例如为以太网接口。以太网接口例如是光接口,电接口或其组合。无线网络接口例如为无线受保护网络(wireless local area networks,WLAN)接口,蜂窝网络接口或其组合等。
至少一个网络接口803与转发芯片802之间,以及转发芯片802与处理器801之间通过内部连接804相连。内部连接804包括一通路,在网络接口803、转发芯片802与处理器801之间传输数据。可选的,内部连接804是单板或总线。例如,内部连接804为以太网、光纤信道(fibre channel)、PCI-E(peripheral component interconnect express,PCI Express,一种高速串行计算机总线)、RapidIO(一种高性能、低引脚数、基于数据包交换的互连体系结构)、无限带宽(InfiniBand)或XAUI总线(一个接口扩展器,特点是把以太网媒体访问控制(Media Access Control,MAC)层与物理层相连)。
可选地,防护设备800还包括内容可寻址存储器(content addressable memory,CAM)805。CAM 805例如是三态内容寻址存储器(ternary content addressable memory,TCAM)等。CAM 805例如用于存储记录已知内网地址的IP地址集合。可选地,CAM 805独立存在,并通过上述内部连接804与转发芯片802相连接。或者,CAM 805和转发芯片802集成在一起,即CAM 805作为转发芯片802内部的存储器。
可选地,防护设备800还包括存储器806。存储器806例如是只读存储器(read-onlymemory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码808并能够由计算机存取的任何其它介质,但不限于此。可选地,存储器806还用于存储记录已知内网地址的IP地址集合。IP地址集合能够被处理器801访问。存储器806例如是独立存在,并通过内部连接804与处理器801相连接。或者存储器806和处理器801集成在一起。
存储器806中存储有操作系统807和程序代码808。可选地,处理器801从存储器806中读取操作系统807并运行该操作系统807,处理器801还从存储器806读取程序代码808,通过在该操作系统807上运行该程序代码808实现本申请实施例提供的上述方法中防护设备执行的动作。
可选地,上述器件分别设置在彼此独立的芯片上,或者至少部分的或者全部的设置在同一块芯片上。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的需要。本申请实施例对上述器件的具体实现形式不做限定。
下面对管理设备的基本硬件结构举例说明。
例如,图9是本申请实施例提供的一种管理设备的硬件结构示意图。如图9所示,管理设备900包括处理器901和存储器902,存储器901与存储器902通过总线903连接。图9以处理器901和存储器902相互独立说明。可选地,处理器901和存储器902集成在一起。可选地,结合图2来看,图9中的管理设备900是图2所示的管理设备。
其中,存储器902用于存储计算机程序,计算机程序包括操作系统和程序代码。存储器902是各种类型的存储介质,例如ROM、RAM、EEPROM、CD-ROM、闪存、光存储器、寄存器、光盘存储、光碟存储、磁盘或者其它磁存储设备。
其中,处理器901是通用处理器或专用处理器。处理器901可能是单核处理器或多核处理器。处理器901包括至少一个电路,以执行本申请实施例提供的上述方法中管理设备执行的动作。
可选地,管理设备900还包括网络接口904,网络接口904通过总线903与处理器901和存储器902连接。网络接口904能够实现管理设备900与防护设备、主机通信。处理器901能够通过网络接口904与主机交互来识别主机的IP地址,以及与防护设备交互来为防护设备提供网络地址识别结果等。
可选地,管理设备900还包括输入/输出(input/output,I/O)接口905,I/O接口905通过总线903与处理器901和存储器902连接。处理器901能够通过I/O接口905接收输入的命令或数据等。I/O接口905用于管理设备900连接输入设备,这些输入设备例如是键盘、鼠标等。可选地,在一些可能的场景中,上述网络接口904和I/O接口905被统称为通信接口。
可选地,管理设备900还包括显示器906,显示器906通过总线903与处理器901和存储器902连接。显示器906能够用于显示处理器901执行上述方法产生的中间结果和/或最终结果等。在一种可能的实现方式中,显示器906是触控显示屏,以提供人机交互接口。
其中,总线903是任何类型的,用于实现管理设备900的内部器件互连的通信总线。例如系统总线。本申请实施例以管理设备900内部的上述器件通过总线903互连为例说明,可选地,管理设备900内部的上述器件采用除了总线903之外的其他连接方式彼此通信连接,例如管理设备900内部的上述器件通过管理设备900内部的逻辑接口互连。
上述器件可以分别设置在彼此独立的芯片上,也可以至少部分的或者全部的设置在同一块芯片上。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的需要。本申请实施例对上述器件的具体实现形式不做限定。
图9所示的管理设备900仅仅是示例性的,在实现过程中,管理设备900包括其他组件,本文不再一一列举。图9所示的管理设备900可以通过执行上述实施例提供的方法的全部或部分步骤来实现对主机的IP地址的识别。
下面对本申请实施例的虚拟装置举例说明。
图10是本申请实施例提供的一种防护设备的结构示意图。具有图10所示结构的防护设备实现上述实施例描述的方案中防护设备的功能。可选地,图10所示的防护设备是图2所示应用场景中的防护设备、图8所示的防护设备,执行图3至图7任一所示实施例中描述的防护设备1的功能。如图10所示,防护设备1000包括接收模块1001、发送模块1002和处理模块1003。
接收模块1001,用于接收第一访问请求报文,第一访问请求报文的源地址为第一公网地址、目的地址为受保护设备的私网地址,第一公网地址是第一主机的IP地址,受保护设备位于防护设备所保护的内部网络中。
发送模块1002,用于向第一主机发送重定向报文,重定向报文中携带管理设备的IP地址和防护设备的设备标识,以触发第一主机向管理设备发送第二访问请求报文,第二访问请求报文中携带第一公网地址和防护设备的设备标识,第二访问请求报文用于管理设备判断第一公网地址是否属于内部网络的内网地址,管理设备位于内部网络之外的外部网络。
这里,接收模块1001和发送模块1002的详细工作过程请参照前面方法实施例中的描述。例如,接收模块1001采用方法300中的步骤301接收主机1向受保护设备1发送的访问请求报文1;发送模块1002采用方法300中的步骤302向主机1发送重定向报文1。本申请实施例在此不再重复描述。
可选地,发送模块1002,还用于在向第一主机发送重定向报文之前,向受保护设备转发第一访问请求报文。接收模块1001,还用于接收来自受保护设备的第一访问响应报文,第一访问响应报文是第一访问请求报文对应的响应报文。处理模块1003,用于基于第一访问响应报文生成重定向报文。这里,发送模块1002、接收模块1001和处理模块1003的详细工作过程可参考方法400、方法500或方法700中相关步骤的描述。
可选地,处理模块1003,还用于修改第一访问响应报文的响应码为重定向响应码,并在第一访问响应报文中添加定位字段,以得到重定向报文,定位字段包括管理设备的IP地址和标识码,标识码是基于防护设备的设备标识和第一公网地址生成的。这里,处理模块1003的详细工作过程可参考方法400、方法500或方法700中相关步骤的描述。
可选地,第二访问请求报文中携带管理设备的IP地址和标识码。
可选地,处理模块1003,还用于采用与管理设备约定的信息处理方式对防护设备的设备标识和第一公网地址进行编码处理和/或加密处理,以得到标识码。这里,处理模块1003的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,标识码是基于防护设备的设备标识、第一公网地址和第一访问请求报文携带的URL生成的。
可选地,处理模块1003,还用于采用与管理设备约定的信息处理方式对防护设备的设备标识、第一公网地址和第一访问请求报文携带的URL进行编码处理和/或加密处理,以得到标识码。这里,处理模块1003的详细工作过程可参考方法600或方法700中相关步骤的描述。
可选地,发送模块1002,还用于在根据第一访问请求报文的源地址,向使用第一公网地址的第一主机发送重定向报文之后,向第一主机发送第一访问响应报文。这里,发送模块1002的详细工作过程可参考方法500中相关步骤的描述。
可选地,处理模块1003,还用于在向第一主机发送重定向报文之前,判断第一公网地址是否在IP地址集合中,IP地址集合包括属于内部网络的已知内网地址。发送模块1002,用于如果第一公网地址不在IP地址集合中,向第一主机发送重定向报文。这里,处理模块1003和发送模块1002的详细工作过程可参考方法600或方法700中相关步骤的描述。
可选地,接收模块1001,用于在向第一主机发送重定向报文之后,接收来自管理设备的网络地址识别结果,网络地址识别结果指示第一公网地址是否属于内网地址。处理模块1003,用于如果网络地址识别结果指示第一公网地址属于内网地址,将第一公网地址添加至IP地址集合,得到更新后的IP地址集合。这里,接收模块1001和处理模块1003的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,接收模块1001,还用于接收第三访问请求报文,第三访问请求报文的源地址为第二公网地址,第二公网地址是第二主机的IP地址。发送模块1002,还用于如果第二公网地址在IP地址集合中,向第三访问请求报文的目的地址转发第三访问请求报文,省略向第二主机发送重定向报文。这里,接收模块1001的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,防护设备部署于内部网络与外部网络之间,或者,防护设备部署于内部网络。
图11是本申请实施例提供的一种管理设备的结构示意图。具有图11所示结构的管理设备实现上述实施例描述的方案中管理设备的功能。可选地,图11所示的管理设备是图2所示应用场景中的管理设备、图9所示的管理设备,执行图3至图7任一所示实施例中描述的管理设备的功能。如图11所示,管理设备1100包括接收模块1101、处理模块1102和发送模块1103。
接收模块1101,用于接收来自第一主机的第一访问请求报文,第一访问请求报文中携带第一公网地址和第一防护设备的设备标识,第一公网地址是第一主机的IP地址,管理设备位于第一防护设备所保护的内部网络之外的外部网络。
处理模块1102,用于基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址。
这里,接收模块1101和处理模块1102的详细工作过程请参照前面方法实施例中的描述。例如,接收模块1001采用方法300中的步骤303接收来自主机1的访问请求报文;处理模块1102采用方法300中的步骤304基于访问请求报文2中携带的防护设备1的设备标识,判断公网地址1是否属于防护设备1所保护的内部网络的内网地址。本申请实施例在此不再重复描述。
可选地,处理模块1102,还用于根据第一访问请求报文的源地址以及第一防护设备的设备标识,判断第一公网地址是否属于内网地址。这里,处理模块1102的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,管理设备中存储有至少一组映射关系,至少一组映射关系中的每组映射关系包括一个或多个防护设备的设备标识对应的一个网络出口地址,一个或多个防护设备属于同一内部网络。处理模块1102,还用于根据第一防护设备的设备标识,在至少一组映射关系中查找第一防护设备的标识对应的网络出口地址。如果第一访问请求报文的源地址与第一防护设备的标识对应的网络出口地址相同,确定第一公网地址属于内网地址。如果第一访问请求报文的源地址与第一防护设备的标识对应的网络出口地址不同,确定第一公网地址不属于内网地址。这里,处理模块1102的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,第一公网地址和第一防护设备的设备标识是通过标识码携带在第一访问请求报文中的,标识码是基于第一防护设备的设备标识和第一公网地址生成的。处理模块1102,还用于在基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址之前,对第一访问请求报文进行应用层解析,从应用层解析结果中获得标识码,并从标识码中获取第一防护设备的设备标识和第一公网地址。这里,处理模块1102的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,处理模块1102,还用于采用与第一防护设备约定的信息处理方式对标识码进行解码处理和/或解密处理,从解码处理和/或解密处理的结果中得到第一防护设备的设备标识和第一公网地址。这里,处理模块1102的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
可选地,标识码是基于第一防护设备的设备标识、第一公网地址和URL生成的,URL是受保护设备提供的资源的URL,受保护设备位于内部网络中。处理模块1102,还用于从标识码中获取URL。发送模块1103,用于向第一主机发送重定向报文,重定向报文中携带URL,以触发第一主机基于URL向受保护设备发送第二访问请求报文。这里,处理模块1102和发送模块1103的详细工作过程可参考方法600或方法700中相关步骤的描述。
可选地,发送模块1103,还用于在基于第一访问请求报文中携带的第一防护设备的设备标识,判断第一公网地址是否属于内部网络的内网地址之后,向第一防护设备发送网络地址识别结果,网络地址识别结果指示第一公网地址是否属于内网地址。这里,处理模块1102的详细工作过程可参考方法300、方法400、方法500、方法600或方法700中相关步骤的描述。
本申请实施例还提供了一种网络地址识别系统,包括:防护设备和管理设备。
所述防护设备用于执行上述方法300至方法700任一方法中防护设备执行的步骤。该防护设备例如是图8或图10示出的防护设备。所述管理设备用于执行上述方法300至方法700任一方法中管理设备执行的步骤。该管理设备例如是图9或图11示出的管理设备。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被防护设备的处理器执行时,实现上述方法300至方法700任一方法中防护设备1执行的步骤;或者,当所述指令被管理设备的处理器执行时,实现上述方法300至方法700任一方法中管理设备执行的步骤。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被防护设备的处理器执行时,实现上述方法300至方法700任一所述方法中防护设备1执行的步骤;或者,所述计算机程序被管理设备的处理器执行时,实现上述方法300至方法700任一方法中管理设备执行的步骤。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本申请实施例中,术语“第一”、“第二”和“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性、以及对先后顺序的限定。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (34)
1.一种网络地址识别方法,其特征在于,所述方法包括:
防护设备接收第一访问请求报文,所述第一访问请求报文的源地址为第一公网地址、目的地址为受保护设备的私网地址,所述第一公网地址是第一主机的互联网协议IP地址,所述受保护设备位于所述防护设备所保护的内部网络中;
所述防护设备向所述第一主机发送重定向报文,所述重定向报文中携带管理设备的IP地址和所述防护设备的设备标识,以触发所述第一主机向所述管理设备发送第二访问请求报文,所述第二访问请求报文中携带所述第一公网地址和所述防护设备的设备标识,所述第二访问请求报文用于所述管理设备判断所述第一公网地址是否属于所述内部网络的内网地址,所述管理设备位于所述内部网络之外的外部网络。
2.根据权利要求1所述的方法,其特征在于,在所述防护设备向所述第一主机发送重定向报文之前,所述方法还包括:
所述防护设备向所述受保护设备转发所述第一访问请求报文;
所述防护设备接收来自所述受保护设备的第一访问响应报文,所述第一访问响应报文是所述第一访问请求报文对应的响应报文;
所述防护设备基于所述第一访问响应报文生成所述重定向报文。
3.根据权利要求2所述的方法,其特征在于,所述防护设备基于所述第一访问响应报文生成所述重定向报文,包括:
所述防护设备修改所述第一访问响应报文的响应码为重定向响应码,并在所述第一访问响应报文中添加定位字段,以得到所述重定向报文,所述定位字段包括所述管理设备的IP地址和标识码,所述标识码是基于所述防护设备的设备标识和所述第一公网地址生成的。
4.根据权利要求3所述的方法,其特征在于,所述第二访问请求报文中携带所述管理设备的IP地址和所述标识码。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
所述防护设备采用与所述管理设备约定的信息处理方式对所述防护设备的设备标识和所述第一公网地址进行编码处理和/或加密处理,以得到所述标识码。
6.根据权利要求3至5任一所述的方法,其特征在于,所述标识码是基于所述防护设备的设备标识、所述第一公网地址和所述第一访问请求报文携带的统一资源定位符URL生成的。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述防护设备采用与所述管理设备约定的信息处理方式对所述防护设备的设备标识、所述第一公网地址和所述第一访问请求报文携带的URL进行编码处理和/或加密处理,以得到所述标识码。
8.根据权利要求2至5任一所述的方法,其特征在于,在所述防护设备根据所述第一访问请求报文的源地址,向使用所述第一公网地址的第一主机发送重定向报文之后,所述方法还包括:
所述防护设备向所述第一主机发送所述第一访问响应报文。
9.根据权利要求1至8任一所述的方法,其特征在于,在所述防护设备向所述第一主机发送重定向报文之前,所述方法还包括:
所述防护设备判断所述第一公网地址是否在IP地址集合中,所述IP地址集合包括属于所述内部网络的已知内网地址;
所述防护设备向第一主机发送重定向报文,包括:
如果所述第一公网地址不在所述IP地址集合中,所述防护设备向所述第一主机发送所述重定向报文。
10.根据权利要求9所述的方法,其特征在于,在所述防护设备向所述第一主机发送重定向报文之后,所述方法还包括:
所述防护设备接收来自所述管理设备的网络地址识别结果,所述网络地址识别结果指示所述第一公网地址是否属于所述内网地址;
如果所述网络地址识别结果指示所述第一公网地址属于所述内网地址,所述防护设备将所述第一公网地址添加至所述IP地址集合,得到更新后的IP地址集合。
11.根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
所述防护设备接收第三访问请求报文,所述第三访问请求报文的源地址为第二公网地址,所述第二公网地址是第二主机的IP地址;
如果所述第二公网地址在所述IP地址集合中,所述防护设备向所述第三访问请求报文的目的地址转发所述第三访问请求报文,省略向所述第二主机发送重定向报文。
12.根据权利要求1至11任一所述的方法,其特征在于,所述防护设备部署于所述内部网络与所述外部网络之间,或者,所述防护设备部署于所述内部网络。
13.一种网络地址识别方法,其特征在于,所述方法包括:
管理设备接收来自第一主机的第一访问请求报文,所述第一访问请求报文中携带第一公网地址和第一防护设备的设备标识,所述第一公网地址是所述第一主机的互联网协议IP地址,所述管理设备位于所述第一防护设备所保护的内部网络之外的外部网络;
所述管理设备基于所述第一访问请求报文中携带的所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内部网络的内网地址。
14.根据权利要求13所述的方法,其特征在于,所述管理设备基于所述第一访问请求报文中携带的所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内部网络的内网地址,包括:
所述管理设备根据所述第一访问请求报文的源地址以及所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内网地址。
15.根据权利要求14所述的方法,其特征在于,所述管理设备中存储有至少一组映射关系,所述至少一组映射关系中的每组映射关系包括一个或多个防护设备的设备标识对应的一个网络出口地址,所述一个或多个防护设备属于同一内部网络,所述管理设备根据所述第一访问请求报文的源地址以及所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内网地址,包括:
所述管理设备根据所述第一防护设备的设备标识,在所述至少一组映射关系中查找所述第一防护设备的标识对应的网络出口地址;
如果所述第一访问请求报文的源地址与所述第一防护设备的标识对应的网络出口地址相同,所述管理设备确定所述第一公网地址属于所述内网地址;
如果所述第一访问请求报文的源地址与所述第一防护设备的标识对应的网络出口地址不同,所述管理设备确定所述第一公网地址不属于所述内网地址。
16.根据权利要求13至15任一所述的方法,其特征在于,所述第一公网地址和所述第一防护设备的设备标识是通过标识码携带在所述第一访问请求报文中的,所述标识码是基于所述第一防护设备的设备标识和所述第一公网地址生成的,在所述管理设备基于所述第一访问请求报文中携带的所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内部网络的内网地址之前,所述方法还包括:
所述管理设备对所述第一访问请求报文进行应用层解析,从应用层解析结果中获得标识码;
所述管理设备从所述标识码中获取所述第一防护设备的设备标识和所述第一公网地址。
17.根据权利要求16所述的方法,其特征在于,所述管理设备从所述标识码中获取所述第一防护设备的设备标识和所述第一公网地址,包括:
所述管理设备采用与所述第一防护设备约定的信息处理方式对所述标识码进行解码处理和/或解密处理,从所述解码处理和/或解密处理的结果中得到所述第一防护设备的设备标识和所述第一公网地址。
18.根据权利要求16或17所述的方法,其特征在于,所述标识码是基于所述第一防护设备的设备标识、所述第一公网地址和统一资源定位符URL生成的,所述URL是受保护设备提供的资源的URL,所述受保护设备位于所述内部网络中,所述方法还包括:
所述管理设备从所述标识码中获取所述URL;
所述管理设备向所述第一主机发送重定向报文,所述重定向报文中携带所述URL,以触发所述第一主机基于所述URL向所述受保护设备发送第二访问请求报文。
19.根据权利要求13至18任一所述的方法,其特征在于,在所述管理设备基于所述第一访问请求报文中携带的所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内部网络的内网地址之后,所述方法还包括:
所述管理设备向所述第一防护设备发送网络地址识别结果,所述网络地址识别结果指示所述第一公网地址是否属于所述内网地址。
20.一种防护设备,其特征在于,包括:存储器、网络接口和至少一个处理器,
所述存储器用于存储程序指令,
所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述防护设备执行以下操作:
接收第一访问请求报文,所述第一访问请求报文的源地址为第一公网地址、目的地址为受保护设备的私网地址,所述第一公网地址是第一主机的互联网协议IP地址,所述受保护设备位于所述防护设备所保护的内部网络中;
向所述第一主机发送重定向报文,所述重定向报文中携带管理设备的IP地址和所述防护设备的设备标识,以触发所述第一主机向所述管理设备发送第二访问请求报文,所述第二访问请求报文中携带所述第一公网地址和所述防护设备的设备标识,所述第二访问请求报文用于所述管理设备判断所述第一公网地址是否属于所述内部网络的内网地址,所述管理设备位于所述内部网络之外的外部网络。
21.根据权利要求20所述的防护设备,其特征在于,所述程序指令被所述至少一个处理器读取后,使得所述防护设备还执行以下操作:
在向所述第一主机发送重定向报文之前,向所述受保护设备转发所述第一访问请求报文;
接收来自所述受保护设备的第一访问响应报文,所述第一访问响应报文是所述第一访问请求报文对应的响应报文;
基于所述第一访问响应报文生成所述重定向报文。
22.根据权利要求21所述的防护设备,其特征在于,所述程序指令被所述至少一个处理器读取后,使得所述防护设备执行以下操作:
修改所述第一访问响应报文的响应码为重定向响应码,并在所述第一访问响应报文中添加定位字段,以得到所述重定向报文,所述定位字段包括所述管理设备的IP地址和标识码,所述标识码是基于所述防护设备的设备标识和所述第一公网地址生成的。
23.根据权利要求22所述的防护设备,其特征在于,所述程序指令被所述至少一个处理器读取后,使得所述防护设备还执行以下操作:
采用与所述管理设备约定的信息处理方式对所述防护设备的设备标识和所述第一公网地址进行编码处理和/或加密处理,以得到所述标识码。
24.根据权利要求22或23所述的防护设备,其特征在于,所述标识码是基于所述防护设备的设备标识、所述第一公网地址和所述第一访问请求报文携带的统一资源定位符URL生成的。
25.根据权利要求24所述的防护设备,其特征在于,所述程序指令被所述至少一个处理器读取后,使得所述防护设备还执行以下操作:
采用与所述管理设备约定的信息处理方式对所述防护设备的设备标识、所述第一公网地址和所述第一访问请求报文携带的URL进行编码处理和/或加密处理,以得到所述标识码。
26.根据权利要求20至25任一所述的防护设备,其特征在于,所述防护设备部署于所述内部网络与所述外部网络之间,或者,所述防护设备部署于所述内部网络。
27.一种管理设备,其特征在于,包括:存储器、网络接口和至少一个处理器,
所述存储器用于存储程序指令,
所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述管理设备执行以下操作:
接收来自第一主机的第一访问请求报文,所述第一访问请求报文中携带第一公网地址和第一防护设备的设备标识,所述第一公网地址是所述第一主机的互联网协议IP地址,所述管理设备位于所述第一防护设备所保护的内部网络之外的外部网络;
基于所述第一访问请求报文中携带的所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内部网络的内网地址。
28.根据权利要求27所述的管理设备,其特征在于,所述程序指令被所述至少一个处理器读取后,使得所述管理设备执行以下操作:
根据所述第一访问请求报文的源地址以及所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内网地址。
29.根据权利要求28所述的管理设备,其特征在于,所述管理设备中存储有至少一组映射关系,所述至少一组映射关系中的每组映射关系包括一个或多个防护设备的设备标识对应的一个网络出口地址,所述一个或多个防护设备属于同一内部网络,所述程序指令被所述至少一个处理器读取后,使得所述管理设备执行以下操作:
根据所述第一防护设备的设备标识,在所述至少一组映射关系中查找所述第一防护设备的标识对应的网络出口地址;
如果所述第一访问请求报文的源地址与所述第一防护设备的标识对应的网络出口地址相同,确定所述第一公网地址属于所述内网地址;
如果所述第一访问请求报文的源地址与所述第一防护设备的标识对应的网络出口地址不同,确定所述第一公网地址不属于所述内网地址。
30.根据权利要求27至29任一所述的管理设备,其特征在于,所述第一公网地址和所述第一防护设备的设备标识是通过标识码携带在所述第一访问请求报文中的,所述标识码是基于所述第一防护设备的设备标识和所述第一公网地址生成的,所述程序指令被所述至少一个处理器读取后,使得所述管理设备还执行以下操作:
在基于所述第一访问请求报文中携带的所述第一防护设备的设备标识,判断所述第一公网地址是否属于所述内部网络的内网地址之前,对所述第一访问请求报文进行应用层解析,从应用层解析结果中获得标识码;
从所述标识码中获取所述第一防护设备的设备标识和所述第一公网地址。
31.根据权利要求30所述的管理设备,其特征在于,所述程序指令被所述至少一个处理器读取后,使得所述管理设备执行以下操作:
采用与所述第一防护设备约定的信息处理方式对所述标识码进行解码处理和/或解密处理,从所述解码处理和/或解密处理的结果中得到所述第一防护设备的设备标识和所述第一公网地址。
32.根据权利要求30或31所述的管理设备,其特征在于,所述标识码是基于所述第一防护设备的设备标识、所述第一公网地址和统一资源定位符URL生成的,所述URL是受保护设备提供的资源的URL,所述受保护设备位于所述内部网络中,所述程序指令被所述至少一个处理器读取后,使得所述管理设备还执行以下操作:
从所述标识码中获取所述URL;
向所述第一主机发送重定向报文,所述重定向报文中携带所述URL,以触发所述第一主机基于所述URL向所述受保护设备发送第二访问请求报文。
33.一种网络地址识别系统,其特征在于,包括:防护设备和管理设备;
所述防护设备用于执行如权利要求1至12任一所述的方法,所述管理设备用于执行如权利要求13至19任一所述的方法。
34.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令被防护设备的处理器执行时,实现如权利要求1至12任一所述的方法;或者,当所述指令被管理设备的处理器执行时,实现如权利要求13至19任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111506633.6A CN116260600A (zh) | 2021-12-10 | 2021-12-10 | 网络地址识别方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111506633.6A CN116260600A (zh) | 2021-12-10 | 2021-12-10 | 网络地址识别方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116260600A true CN116260600A (zh) | 2023-06-13 |
Family
ID=86686727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111506633.6A Pending CN116260600A (zh) | 2021-12-10 | 2021-12-10 | 网络地址识别方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116260600A (zh) |
-
2021
- 2021-12-10 CN CN202111506633.6A patent/CN116260600A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10284603B2 (en) | System and method for providing network and computer firewall protection with dynamic address isolation to a device | |
CN108616490B (zh) | 一种网络访问控制方法、装置及系统 | |
US9838434B2 (en) | Creating and managing a network security tag | |
CN110362992B (zh) | 在基于云端环境中阻挡或侦测计算机攻击的方法和设备 | |
US11831420B2 (en) | Network application firewall | |
JP4906504B2 (ja) | インテリジェント統合ネットワークセキュリティ装置 | |
US9917850B2 (en) | Deterministic reproduction of client/server computer state or output sent to one or more client computers | |
US11314614B2 (en) | Security for container networks | |
US9917928B2 (en) | Network address translation | |
Frahim et al. | Cisco ASA: all-in-one firewall, IPS, and VPN adaptive security appliance | |
JP7388613B2 (ja) | パケット処理方法及び装置、デバイス、並びに、コンピュータ可読ストレージ媒体 | |
US10397225B2 (en) | System and method for network access control | |
Frahim et al. | Cisco ASA: All-in-one Next-Generation Firewall, IPS, and VPN Services | |
WO2019246331A1 (en) | System and method for creating a secure hybrid overlay network | |
US20220385631A1 (en) | Distributed traffic steering and enforcement for security solutions | |
CN116260600A (zh) | 网络地址识别方法、装置及系统 | |
US8185642B1 (en) | Communication policy enforcement in a data network | |
US11683294B2 (en) | Privacy-preserving learning of web traffic | |
Frahim et al. | Cisco ASA: All-in-One Firewall, IPS, Anti-X, and VPN Adaptive Security Appliance | |
Moraes | Cisco Firewalls: Concepts, Design and Deployment for Cisco Stateful Firewall Solutions | |
Hyppönen | Securing a Linux Server Against Cyber Attacks | |
KR102184757B1 (ko) | 네트워크 은닉 시스템 및 방법 | |
WO2024139775A1 (zh) | 安全服务处理方法、装置、设备、存储介质及程序产品 | |
US20240205240A1 (en) | Real-time detection of dns infiltration traffic | |
US20240195795A1 (en) | Computer-implemented methods and systems for establishing and/or controlling network connectivity |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |