CN110933201A - 一种ip地址溯源方法、装置、电子设备及存储介质 - Google Patents

一种ip地址溯源方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN110933201A
CN110933201A CN201911409563.5A CN201911409563A CN110933201A CN 110933201 A CN110933201 A CN 110933201A CN 201911409563 A CN201911409563 A CN 201911409563A CN 110933201 A CN110933201 A CN 110933201A
Authority
CN
China
Prior art keywords
intranet
physical
target
log
time point
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.)
Granted
Application number
CN201911409563.5A
Other languages
English (en)
Other versions
CN110933201B (zh
Inventor
李澍桐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201911409563.5A priority Critical patent/CN110933201B/zh
Publication of CN110933201A publication Critical patent/CN110933201A/zh
Application granted granted Critical
Publication of CN110933201B publication Critical patent/CN110933201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2517Translation of Internet protocol [IP] addresses using port numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • H04L61/2528Translation at a proxy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种IP地址溯源方法、装置、电子设备及存储介质,所述方法包括:获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点;从公网IP日志中,查找第一日志记录,获取目标租户标识;从物理机内网IP日志中,查找第二日志记录,获取目标物理机内网IP数量;根据目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号;基于目标物理机内网IP序号及物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP。由于只需要在公网IP和物理机内网IP被申请及删除时记录相应的日志,便可以实现IP地址溯源,所以可以大大降低日志记录量,降低资源消耗。

Description

一种IP地址溯源方法、装置、电子设备及存储介质
技术领域
本发明涉及云计算技术领域,特别是涉及一种IP地址溯源方法、装置、电子设备及存储介质。
背景技术
云计算场景中,众多租户在机房内共享服务器、网络、存储空间等资源。公有云中,租户通过位于机房内的物理机访问公网,一般方式通过NAT(Network AddressTranslation,网络地址转换)网关访问公网。具体来说,该方式为多对多的访问方式,即租户通过申请公网IP(Internet Protocol,互联网协议)地址池,并添加若干公网IP、若干物理机内网IP至该公网IP地址池,其中所有物理机内网IP共享其中所有公网IP,以实现对公网的访问。
出于网络安全、租户查询日志等需求考虑,需提供IP地址溯源功能。即通过响应某个网络请求对应的时间点、公网IP及所使用某源端口值,查询出发出该网络请求的物理机内网IP,也就是租户主机IP,进而定位租户主机的相关信息。
目前的IP地址溯源方式一般为基于流的日志记录进行查询的方式。也就是说,租户主机通过NAT网关访问外网时,由部署在该租户主机上的IPIP代理模块封装ip-in-ip隧道报文至NAT网关。NAT网关根据报文内容进行资源查找与分配,并为该连接创建会话缓存。
会话缓存是每条链接在NAT中唯一标识,其中存储该链接的关键信息,用于NAT网关对于该链接后续双向报文进行地址转换以及状态记录等。而日志记录用于记录每个会话缓存的所有相关信息,在需要进行IP地址溯源时,便可以在日志记录中查询到与时间点、公网IP及所使用某源端口值对应的物理机内网IP。上述IP地址溯源方式中,由于需要记录每个会话缓存的所有相关信息,所以日志记录量非常大,资源消耗较大。
发明内容
本发明实施例的目的在于提供一种IP地址溯源方法、装置、电子设备及存储介质,以降低日志记录量,降低资源消耗。具体技术方案如下:
第一方面,本发明实施例提供了一种IP地址溯源方法,所述方法包括:
获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点;
从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录,以获取与所述目标公网IP及所述目标时间点对应的目标租户标识,其中,所述公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;
从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录,以获取与所述目标租户标识及所述目标时间点对应的目标物理机内网IP数量,其中,所述物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;
根据所述目标源端口值、所述目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,其中,所述映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系;
基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP,作为所述IP地址溯源请求对应的查询结果。
可选的,所述映射方式的建立方式,包括:
以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口;
确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt;
其中,vip_idx为所述物理机内网IP的序号,nport为所述物理机内网IP所对应周期内的源端口的值,vip_cnt为所述物理机内网IP数量。
可选的,所述物理机内网IP的序号的确定方式,包括:
建立物理机内网IP链表,并记录每个所述物理机内网IP在所述物理机内网IP链表中的序号,其中,所述序号范围为[0,vip_cnt-1];
当添加第一物理机内网IP时,在所述物理机内网IP链表尾部插入所述第一物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并记录所述第一物理机内网IP的序号为vip_cnt-1;
当删除第二物理机内网IP时,在所述物理机内网IP链表中删除所述第二物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并将所述物理机内网IP链表中所述第二物理机内网IP之后的物理机内网IP的序号均减1。
可选的,所述从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录的步骤,包括:
从公网IP日志中,查找所述目标公网IP对应的日志记录;
将所查找到的日志记录按照时间点进行排序;
从排序后的日志记录中,查找所述目标时间点对应的第一日志记录。
可选的,所述从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录的步骤,包括:
从物理机内网IP日志中,查找所述目标租户标识对应的日志记录;
将所查找到的日志记录按照时间点进行排序;
从排序后的日志记录中,查找所述目标时间点对应的第二日志记录。
可选的,所述基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP的步骤,包括:
将所述物理机内网IP日志中所述目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录;
基于所述第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定所述目标时间点对应的所有物理机内网IP的序号;
将所确定的序号中与所述目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为所述目标物理机内网IP序号对应的物理机内网IP。
第二方面,本发明实施例提供了一种IP地址溯源装置,所述装置包括:
溯源请求信息获取模块,用于获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点;
第一日志记录查找模块,用于从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录,以获取与所述目标公网IP及所述目标时间点对应的目标租户标识,其中,所述公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;
第二日志记录查找模块,用于从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录,以获取与所述目标租户标识及所述目标时间点对应的目标物理机内网IP数量,其中,所述物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;
物理机序号确定模块,用于根据所述目标源端口值、所述目标物理机内网IP数量及通过映射方式建立模块预先建立的映射方式,确定目标物理机内网IP序号,其中,所述映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系;
查询结果确定模块,用于基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP,作为所述IP地址溯源请求对应的查询结果。
可选的,所述装置还包括映射方式建立模块,所述映射方式建立模块包括:
源端口划分单元,用于以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口;
映射关系确定单元,用于确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt;
其中,vip_idx为所述物理机内网IP的序号,nport为所述物理机内网IP所对应周期内的源端口的值,vip_cnt为所述物理机内网IP数量。
可选的,所述装置还包括序号确定模块,所述确定模块包括:
链表建立单元,用于建立物理机内网IP链表,并记录每个所述物理机内网IP在所述物理机内网IP链表中的序号,其中,所述序号范围为[0,vip_cnt-1];
添加单元,用于当添加第一物理机内网IP时,在所述物理机内网IP链表尾部插入所述第一物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并记录所述第一物理机内网IP的序号为vip_cnt-1;
删除单元,用于当删除第二物理机内网IP时,在所述物理机内网IP链表中删除所述第二物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并将所述物理机内网IP链表中所述第二物理机内网IP之后的物理机内网IP的序号均减1。
可选的,所述第一日志记录查找模块包括:
第一日志记录查找单元,用于从公网IP日志中,查找所述目标公网IP对应的日志记录;
第一日志记录排序单元,用于将所查找到的日志记录按照时间点进行排序;
第一日志记录确定单元,用于从排序后的日志记录中,查找所述目标时间点对应的第一日志记录。
可选的,所述第二日志记录查找模块包括:
第二日志记录查找单元,用于从物理机内网IP日志中,查找所述目标租户标识对应的日志记录;
第二日志记录排序单元,用于将所查找到的日志记录按照时间点进行排序;
第二日志记录确定单元,用于从排序后的日志记录中,查找所述目标时间点对应的第二日志记录。
可选的,所述查询结果确定模块包括:
第三日志记录查找单元,用于将所述物理机内网IP日志中所述目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录;
序号确定单元,用于基于所述第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定所述目标时间点对应的所有物理机内网IP的序号;
查询结果确定单元,用于将所确定的序号中与所述目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为所述目标物理机内网IP序号对应的物理机内网IP。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面任一所述的IP地址溯源方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述第一方面任一所述的IP地址溯源方法步骤。
本发明实施例所提供的方案中,电子设备可以获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点,从公网IP日志中,查找目标公网IP及目标时间点对应的第一日志记录,以获取与目标公网IP及目标时间点对应的目标租户标识,从物理机内网IP日志中,查找目标租户标识及目标时间点对应的第二日志记录,以获取与目标租户标识及目标时间点对应的目标物理机内网IP数量,根据目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,进而基于目标物理机内网IP序号及物理机内网IP日志所记录的目标租户标识对应的物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP,作为IP地址溯源请求对应的查询结果。其中,公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。由于只需要在公网IP和物理机内网IP被申请以及被删除时记录相应的日志,便可以实现IP地址溯源,无需记录每个会话缓存的所有相关信息,所以可以大大降低日志记录量,降低资源消耗。同时,由于记录的日志量较少,所以记录期限大大延长,IP地址溯源的可查询期限更长,甚至可以实现无限期查询。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种租户所申请的主机通过NAT网关访问外网的过程的示意图;
图2为本发明实施例所提供的一种ip-in-ip隧道报文的结构示意图;
图3为本发明实施例所提供的一种IP地址溯源方法的流程图;
图4为基于图3所示实施例的物理机内网IP的序号的确定方式的一种流程图;
图5为基于图3所示实施例的物理机内网IP链表以及公网IP链表的一种示意图;
图6为图3所示实施例中步骤S102的一种具体流程图;
图7为图3所示实施例中步骤S103的一种具体流程图;
图8为图3所示实施例中步骤S105的一种具体流程图;
图9为本发明实施例所提供的一种IP地址溯源装置的结构示意图;
图10为本发明实施例所提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了降低日志记录量,降低资源消耗,本发明实施例提供了一种IP地址溯源方法、装置、电子设备及计算机可读存储介质。
为了便于理解和描述本发明实施例所提供的一种IP地址溯源方法,首先对公有云场景中租户所申请的主机通过NAT网关访问外网的过程进行说明。如图1所示,在云机房中,租户所申请的主机在访问公网时,也就是向外网服务器发送网络请求时,会由部署在该主机上的IPIP代理模块封装ip-in-ip(简称ipip)隧道报文发送至NAT网关。NAT网关根据该报文内容进行资源查找与分配,为该报文对应的连接创建会话缓存。其中,IPIP代理模块的IP地址为物理机内网IP,以下称为vip。
其中,ipip隧道报文即为在IP报文的网络层前部再封装一层ipv4报头,并将其中的protocol字段设置为4,用于标识该报文属于ipip隧道封装的报文。其报文形式可以如图2所示,其中,MAC为Media Access Control Address,即MAC地址,TCP为TransmissionControl Protocol字段,即传输控制协议字段,UDP为User Datagram Protocol字段,也就是用户数据报协议字段,ICMP为Internet Control Message Protocol字段,也就是控制报文协议字段,PAYLOAD为报文中的数据载荷。
ipip隧道报文通过加封一层ipv4(Internet Protocol version 4)报头,实现内层不同租户的overlay网络字段的虚拟化与隔离。ipip隧道报文外层ipv4报头为物理机内网IP与NAT网关的gxvip(网关集群IP,即同一NAT集群所有网关使用的共同IP)互访,而内层ipv4报头则为租户所申请的主机的物理机私有地址sip与其真实目的地址cip互访,其中,cip即为外网服务器的IP地址。
会话缓存是每条链接在NAT网关中的唯一标识,其中可以存储该链接的关键信息,用于NAT网关进行地址转换以及状态记录等。会话缓存的创建是在后端租户所申请的主机发出的每条链接的第一个报文到达NAT网关后,由NAT网关记录下该链接的入方向、出方向以及其他关键信息。会话缓存的销毁则发生在该链接的最后一个报文通过NAT网关后,或者在预设定时器超时的情况下,由NAT网关删除该会话缓存。
在进行会话缓存查找时,可以使用flow_key作为唯一查询标识。对于会话缓存的出方向,可以使用六元组:[物理机的私有地址sip,物理机侧的端口值sport,真实目的地址cip,真实目的端口cport,protocol,vip]作为flow_key;对于会话缓存的入方向,可以使用五元组:[nip,源端口nport,cip,cport,protocol]作为flow_key。
对于NAT网关来说,出方向去除ipip隧道报文中ipip隧道部分,确定出的公网IP(nip)、源端口nport对内层报文的源ip、源端口port,并进行替换后发出;入方向则用会话缓存中的sip、sport对报文的目的ip、目的port进行替换,并根据会话缓存信息封装外层ipip隧道,其中,源ip为gxvip,目的ip为vip,发送并路由至vip主机。
下面首先对本发明实施例所提供的一种IP地址溯源方法进行介绍。
本发明实施例所提供的一种IP地址溯源方法可以应用于任意需要进行IP地址溯源的电子设备,例如,可以为网关、控制器、服务器、管理设备等,为了描述方便,以下称为电子设备。
如图3所示,一种IP地址溯源方法,所述方法包括:
S301,获取IP地址溯源请求的目标公网IP、目标源端口值及目标时间点;
S302,从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录,以获取与所述目标公网IP及所述目标时间点对应的目标租户标识;
其中,所述公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识。
S303,从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录,以获取与所述目标租户标识及所述目标时间点对应的目标物理机内网IP数量;
其中,所述物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量。
S304,根据所述目标源端口值、所述目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号;
其中,所述映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。
S305,基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP,作为所述IP地址溯源请求对应的查询结果。
可见,本发明实施例所提供的方案中,电子设备可以获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点,从公网IP日志中,查找目标公网IP及目标时间点对应的第一日志记录,以获取与目标公网IP及目标时间点对应的目标租户标识,从物理机内网IP日志中,查找目标租户标识及目标时间点对应的第二日志记录,以获取与目标租户标识及目标时间点对应的目标物理机内网IP数量,根据目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,进而基于目标物理机内网IP序号及物理机内网IP日志所记录的目标租户标识对应的物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP,作为IP地址溯源请求对应的查询结果。其中,公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。由于只需要在公网IP和物理机内网IP被申请以及被删除时记录相应的日志,便可以实现IP地址溯源,无需记录每个会话缓存的所有相关信息,所以可以大大降低日志记录量,降低资源消耗。同时,由于记录的日志量较少,所以记录期限大大延长,IP地址溯源的可查询期限更长,甚至可以实现无限期查询。
当需要进行IP地址溯源时,用户可以发出IP地址溯源请求,在上述步骤S301中,电子设备便可以获取该IP地址溯源请求。其中,用户即为需要进行IP地址溯源的用户,可以为上述公有云的租户,也可以为管理人员等,在此不做具体限定。IP地址溯源请求一般可以携带目标公网IP、目标源端口值及目标时间点,以便用于IP地址的查询。
在一种实施方式中,用户可以在公有云控制台的预设查询界面等位置,输入目标公网IP、目标源端口值及目标时间点,控制台便可以获取IP地址溯源请求,以及用户输入的目标公网IP、目标源端口值及目标时间点。
上述目标公网IP即为响应用户所要查询的物理机内网IP对应的租户主机发出的网络请求的公网IP;目标源端口值即为响应用户所要查询的物理机内网IP对应的租户主机发出的网络请求的源端口的端口值;目标时间点即为用户所要查询的物理机内网IP对应的租户主机发出的网络请求的时间点。
获取上述目标公网IP、目标源端口值及目标时间点后,电子设备可以执行上述步骤S302,即从公网IP日志中,查找目标公网IP及目标时间点对应的第一日志记录,以获取与目标公网IP及目标时间点对应的目标租户标识。该第一日志记录即为包括目标公网IP和/或目标时间点的日志记录。
其中,公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少可以包括申请的公网IP、申请时间点及对应的租户标识,以及被删除的公网IP、删除时间点及对应的租户标识。也就是说,在某个公网IP被申请以及被删除时记录具体公网IP以及相应的时间点、该公网IP所属租户的租户标识。
这样,电子设备便可以查找到目标公网IP及目标时间点对应的第一日志记录。也就可以确定目标公网IP在目标时间点时被哪一个租户所使用,第一日志记录包括的租户标识即为该租户的标识。
接下来,电子设备可以从物理机内网IP日志中,查找目标租户标识及目标时间点对应的第二日志记录,以获取与目标租户标识及目标时间点对应的目标物理机内网IP数量,也就是执行上述步骤S303。其中,目标租户标识即为上述第一日志记录包括的租户标识,也就是在目标时间点时使用目标公网IP的租户的标识。
物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的公网IP、删除时间点及租户标识。具体来说,第二日志至少包括申请的物理机内网IP、申请时间点、对应的租户标识及当前物理机内网IP数量,即申请前物理机内网IP数量,以及被删除的物理机内网IP、删除时间点、对应的租户标识及当前物理机内网IP数量,即删除前物理机内网IP数量。也就是说,在某个物理机内网IP被申请以及被删除时记录具体物理机内网IP以及相应的时间点、该物理机内网IP所属租户的租户标识以及当前物理机内网IP数量。
这样,电子设备便可以在查找上述目标租户标识及目标时间点对应的第二日志记录。在一种实施方式中,电子设备可以查找包括上述目标租户标识的日志记录,进而在所查找到的日志记录中确定目标时间点对应的第二日志记录。
例如,假设目标租户标识为17,目标时间点为T3,T3位于T2和T4之间,电子设备查找到的包括该目标租户标识的日志记录如下表所示,那么电子设备便可以确定第二日志记录为日志记录2及日志记录3。
日志记录名称 时间点 租户标识 物理机内网IP 物理机内网IP数量
日志记录1 T1(申请时间点) 17 IP1a 19
日志记录2 T2(删除时间点) 17 IP1b 20
日志记录3 T4(申请时间点) 17 IP1b 19
在为公网IP池中的物理机内网IP分配公网IP时,可以按照一定的分配方式进行。在一种实施方式中,可以按照预先建立的映射方式为公网IP池中的物理机内网IP分配公网IP,具体来说,该映射方式可以包括物理机内网IP序号与源端口值及物理机内网IP数量之间的映射关系。
其中,物理机内网IP序号为按照一定规则为物理机内网IP分配的序号,由于映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系,所以电子设备在查找到上述第二日志记录后,便可以基于目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,也就是执行步骤S304。
例如,依然以上述第二日志记录为日志记录2及日志记录3为例,由于目标时间点为T3在T2之后,所以此时,物理机内网IP IP1b已经被删除,所以电子设备可以确定在目标时间点为T3时刻,该租户所使用的物理机内网IP数量为20-1=19,19即为目标物理机内网IP数量。进而,电子设备也就可以根据目标源端口值、该目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号。
在上述步骤S305中,电子设备确定了上述目标物理机内网IP序号后,便可以基于目标物理机内网IP序号及物理机内网IP日志所记录的目标租户标识对应的物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP,作为IP地址溯源请求对应的查询结果。
由于物理机内网IP日志记录了各租户所使用的物理机内网IP的申请以及删除情况,所以电子设备可以根据物理机内网IP日志确定目标租户标识对应的物理机内网IP的申请及删除情况,进而确定目标时间点时刻目标租户标识对应的各物理机内网IP的序号,电子设备也就可以确定目标物理机内网IP序号对应的物理机内网IP为IP地址溯源请求对应的查询结果。进而,电子设备可以获取该物理机内网IP对应的租户主机的相关信息。
作为本发明实施例的一种实施方式,上述映射方式的建立方式,可以包括:
以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口;确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt。
在建立上述映射方式时,电子设备可以以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口。也就是说,每个周期包括的源端口数量为当前正在使用的物理机内网IP数量。
例如,当前正在使用的物理机内网IP数量为500,当前设置的源端口的端口值范围为[2000,60000],那么便可以以500为周期,将当前设置的源端口划分为116个周期,每个周期包括500个源端口。
划分当前设置的源端口后,电子设备便可以为物理机内网IP分配源端口,也就是建立物理机内网IP序号与源端口值及物理机内网IP数量的映射关系vip_idx=nport%vip_cnt,其中,vip_idx为物理机内网IP的序号,nport为物理机内网IP所对应周期内的源端口的值,vip_cnt为物理机内网IP数量。
例如,当物理机内网IP的数量为M,当前设置的源端口的端口值范围为[b,e],公网IP的数量为N时,上述映射关系可以如下表所示,其中,内网IP表示物理机内网IP。
Figure BDA0002349597170000141
采用上述映射关系可以保证在源端口的值的范围发生变更时,相同物理机内网IP序号对应的映射区间不变。例如,对于物理机内网IP的序号为2的物理机内网IP vip[2]来说,假设物理机内网IP数量为10,源端口的值的范围为[2000,60000]。那么vip[2]对应的源端口的值的范围为range[2]=[2002,2012,2022,…,59992],其对应上述映射关系的数学表示为{x|x%10=2,x∈[2000,60000]}。如果源端口的值的范围变更为[2018,60002],那么vip[2]对应的源端口的值的范围为range[2]范围为[2022,…,59992,60002]。
通过上述映射方式分配公网IP的源端口,可以保证公网IP池中资源实时均分,达到资源最大化利用。在处理租户通过某个物理机内网IP发出的网络请求过程中,为每个链接选择公网IP及源端口时,可以按照双重轮转方式进行分配。即从该物理机内网IP对应的第一公网IP对应的源端口中依次为每个链接选择一个端口,当源端口的值轮转至该物理机内网IP对应的源端口的值的范围上限时,轮转至下一个公网IP,同时源端口的值回转至源端口的值的范围下限,依此进行分配。即,支持每个物理机内网IP的最大并发链接数为:公网IP数量×(源端口数量/物理机内网IP数量)。
可见,在本实施例中,电子设备可以以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口,进而确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt,采用这样的动态资源映射方式,可以对公网IP池中资源进行实时均分,达到资源最大化利用,同时便于后续IP地址溯源时查询物理机内网IP的序号。
作为本发明实施例的一种实施方式,如图4所示,上述物理机内网IP的序号的确定方式,可以包括:
S401,建立物理机内网IP链表,并记录每个所述物理机内网IP在所述物理机内网IP链表中的序号;
在公网IP池中,可以建立物理机内网IP链表,并记录每个物理机内网IP在物理机内网IP链表中的序号,其中,可以按照自然数的顺序分配每个物理机内网IP在物理机内网IP链表中的序号。当然,电子设备还可以建立公网IP链表。
在一种实施方式中,物理机内网IP链表以及公网IP链表均可以为双向链表形式,公网IP池中可以记录当前物理机内网IP的数量vip_cnt,以及公网IP池中当前设置的源端口的值的范围,一般为[1025,65535]。每个物理机内网IP链表中的结构体记录各自在链表中的序号,也就是物理机内网IP的序号,其中,序号范围为[0,vip_cnt-1]。
例如,公网IP池X中包括M个物理机内网IP及N个公网IP,当前设置的源端口的值的范围为[1025,65535]时,物理机内网IP链表以及公网IP链表可以如图5所示,其中,vip1、vip2…vipM表示M个物理机内网IP,nip1、nip2…nipN表示N个公网IP,vip1、vip2…vipM的序号分别为1、2…vip_cnt-1。
S402,当添加第一物理机内网IP时,在所述物理机内网IP链表尾部插入所述第一物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并记录所述第一物理机内网IP的序号为vip_cnt-1;
当租户添加一个物理机内网IP时,为了描述方便,将该添加的一个物理机内网IP称为第一物理机内网IP。可以在物理机内网IP链表尾部插入第一物理机内网IP,由于此时物理机内网IP数量增加了一个,所以可以更新当前物理机内网IP数量为原vip_cnt+1。
同时,电子设备可以记录第一物理机内网IP的序号为vip_cnt-1,其中,vip_cnt为更新后的物理机内网IP数量。例如,假设物理机内网IP数量为10,那么当租户添加第一物理机内网IP时,在物理机内网IP链表尾部插入第一物理机内网IP,更新当前物理机内网IP数量为10+1=11,并记录第一物理机内网IP的序号为11-1=10。
当租户添加一个公网IP时,由于公网IP的数量以及序号不会影响上述映射关系,所以电子设备在公网IP链表尾部插入添加的公网IP即可。
S403,当删除第二物理机内网IP时,在所述物理机内网IP链表中删除所述第二物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并将所述物理机内网IP链表中所述第二物理机内网IP之后的物理机内网IP的序号均减1。
当租户删除一个物理机内网IP时,为了描述方便,将该删除的一个物理机内网IP称为第二物理机内网IP。可以在物理机内网IP链表中找到并删除第二物理机内网IP,由于此时物理机内网IP数量减少了一个,所以可以更新当前物理机内网IP数量为原vip_cnt-1。
同时,由于删除的第二物理机内网IP之后的物理机内网IP的序号均与第二物理机内网IP有关,所以电子设备可以将物理机内网IP链表中第二物理机内网IP之后的物理机内网IP的序号均减1。
例如,假设物理机内网IP数量为10,那么当租户删除第二物理机内网IP时,在物理机内网IP链表中找到并删除第二物理机内网IP,更新当前物理机内网IP数量为10-1=9。假设第二物理机内网IP的序号为6,那么电子设备可以将物理机内网IP序号为7-10的物理机内网IP的序号均减1。
当租户删除一个公网IP时,由于公网IP的数量以及序号不会影响上述映射关系,所以电子设备在公网IP链表中找该要删除公网IP,并将其删除即可。如果租户变更源端口的值的范围,那么可以在公网IP池中更改源端口的值的范围为变更后的范围。
可见,在本实施例中,电子设备可以建立物理机内网IP链表,并在租户删除和/或添加物理机内网IP时,更改物理机内网IP链表中的物理机内网IP的序号,可以保证顺利采用上述映射方式分配资源,并且保证在进行IP地址溯源时能够通过物理机内网IP的序号查找到准确的物理机内网IP。
作为本发明实施例的一种实施方式,如图6所示,上述从所述公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录的步骤,包括:
S601,从所述公网IP日志中,查找所述目标公网IP对应的日志记录;
电子设备可以先从公网IP日志中,查找包括目标公网IP的日志记录,目标公网IP为为响应发出IP地址溯源请求对应的网络请求的公网IP,那么公网IP日志中包括目标公网IP的日志记录即为与该公网IP的申请及删除的相关日志记录。
S602,将所查找到的日志记录按照时间点进行排序;
所查找到的日志记录一般为多个,为了便于确定所要查到的第一日志记录,电子设备可以将所查找到的日志记录按照时间点进行排序。其中,该时间点即为日志记录所记录的时间点,即为公网IP的申请时间点或者删除时间点。在一种实施方式中,可以按照时间戳升序的顺序进行排序,也就是按照时间点从晚到早的顺序进行排序。
S603,从排序后的日志记录中,查找所述目标时间点对应的第一日志记录。
在一种情况下,排序后的日志记录中恰好存在时间点与目标时间点相同的日志记录,那么电子设备便可以确定该日志记录为第一日志记录。
在另一种情况下,排序后的日志记录中不存在时间点与目标时间点相同的日志记录,那么电子设备可以根据目标时间点以及排序后的日志记录对应的时间点,确定与目标时间点所对应的情况最为接近日志记录,将其确定为第一日志记录。
例如,排序后的日志记录包括5条日志记录,具体如下表所示:
序号 时间点 公网IP 租户标识
1 t2(申请时间点) N3 Zf1
2 t2(删除时间点) N2 Zf1
3 t3(申请时间点) N2 Zf2
4 t4(删除时间点) N1 Zf2
5 t5(申请时间点) N1 Zf3
那么,如果上述目标时间点为T*,T*在时间点t3之后,t4之前,那么说明所要查询的网络请求的发出时间点在时间点t3租户申请了公网N2之后。从上表中可以确定在时间点t3,租户申请了公网N2,并且在t4之前没有删除公网N2的日志记录,那么在目标时间点T*时,使用目标公网IP的租户即为租户标识Zf2对应的租户,所以,电子设备可以确定序号为3的日志记录为第一日志记录,租户标识Zf2即为目标租户标识。
可见,在本实施例中,电子设备可以从公网IP日志中,查找目标公网IP对应的日志记录,将所查找到的日志记录按照时间点进行排序,进而,从排序后的日志记录中,查找目标时间点对应的第一日志记录,可以准确确定目标时间点对应的第一日志记录,保证IP地址溯源查询结果的准确性。
作为本发明实施例的一种实施方式,如图7所示,上述从物理机内网IP日志中,查找目标租户标识及所述目标时间点对应的第二日志记录的步骤,可以包括:
S701,从物理机内网IP日志中,查找所述目标租户标识对应的日志记录;
电子设备在查找第二日志记录时,可以先从物理机内网IP日志中,查找上述目标租户标识对应的日志记录。这些记录为发出IP地址溯源请求的租户所使用的物理机内网IP的相关日志记录。
S702,将所查找到的日志记录按照时间点进行排序;
所查找到的日志记录一般为多个,为了便于确定所要查到的第二日志记录,电子设备可以将所查找到的日志记录按照时间点进行排序。其中,该时间点即为日志记录所记录的时间点,即为物理机内网IP的申请时间点或者删除时间点。在一种实施方式中,可以按照时间戳升序的顺序进行排序,也就是按照时间点从晚到早的顺序进行排序。
S703,从排序后的日志记录中,查找所述目标时间点对应的第二日志记录。
在一种情况下,排序后的日志记录中恰好存在时间点与目标时间点相同的日志记录,那么电子设备便可以确定该日志记录为第二日志记录。
在另一种情况下,排序后的日志记录中不存在时间点与目标时间点相同的日志记录,那么电子设备可以根据目标时间点以及排序后的日志记录对应的时间点,确定与目标时间点所对应的物理机内网IP情况最为接近日志记录,将其确定为第二日志记录。
例如,排序后的日志记录包括5条日志记录,具体如下表所示:
序号 时间点 物理机内网IP 租户标识 物理机内网IP数量
1 T10(申请时间点) V1 Zf1 2
2 T9(删除时间点) V2 Zf1 3
3 T8(申请时间点) V3 Zf1 2
4 T7(申请时间点) V2 Zf1 1
5 T6(申请时间点) V4 Zf1 0
那么,如果上述目标时间点为T’,T’在时间点T8之后,T9之前,那么说明所要查询的网络请求的发出时间点在时间点T8租户申请物理机内网IP V3之后,在时间点T9租户删除物理机内网IP V2之前。从上表中可以确定在目标时间点T’时,已申请物理机内网IP V3,且未删除物理机内网IP V2,由于物理机内网IP日志中记录的物理机内网IP数量均为发生删除或申请操作之前的数量,所以,电子设备可以确定序号为2的日志记录为第二日志记录。
可见,在本实施例中,电子设备可以从物理机内网IP日志中,查找目标租户标识对应的日志记录,将所查找到的日志记录按照时间点进行排序,进而,从排序后的日志记录中,查找目标时间点对应的第二日志记录。可以准确确定目标时间点对应的第二日志记录,保证IP地址溯源查询结果的准确性。
作为本发明实施例的一种实施方式,如图8所示,上述基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP的步骤,可以包括:
S801,将所述物理机内网IP日志中所述目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录;
在确定了上述目标物理机内网IP序号后,需要确定在目标时间点时刻,该目标物理机内网IP序号对应的物理机内网IP,但是由于物理机内网IP的申请或者删除,物理机内网IP的序号不是始终不变的,所以需要确定目标租户标识对应的租户所使用的物理机内网IP的整体申请及删除情况,才能准确确定在目标时间点时刻,该目标物理机内网IP序号对应的物理机内网IP。
所以为了便于按照时间顺序确定物理机内网IP的申请及删除情况,电子设备首先可以将物理机内网IP日志中目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录。其中,该时间点即为日志记录所记录的时间点,即为物理机内网IP的申请时间点或者删除时间点。
在一种实施方式中,可以按照时间戳升序的顺序进行排序,也就是按照时间点从晚到早的顺序进行排序。当然也可以按照时间戳将序的顺序进行排序,这都是合理的。
S802,基于所述第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定所述目标时间点对应的所有物理机内网IP的序号;
得到上述第三日志记录后,基于第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定目标时间点对应的所有物理机内网IP的序号。
举例来说,假设物理机内网IP的序号的确定方式即为上述图4所示实施例中描述的方式,目标时间点为t0,第三日志记录为按照时间戳降序的顺序进行排序得到的,具体如下:
序号 时间点 物理机内网IP 租户标识 物理机内网IP数量
1 t1(申请时间点) Vip1 Zf7 0
2 t2(申请时间点) Vip2 Zf7 1
3 t3(删除时间点) Vip1 Zf7 2
4 t4(申请时间点) Vip3 Zf7 1
5 t5(申请时间点) Vip4 Zf7 2
6 t6(删除时间点) Vip2 Zf7 3
7 t7(申请时间点) Vip5 Zf7 2
8 t8(申请时间点) Vip6 Zf7 3
如果目标时间点t0在时间点t8之后,那么由上表格可知,在时间点t1租户申请了物理机内网IP Vip1,按照上述物理机内网IP的序号的确定方式,可以确定物理机内网IPVip1的序号为1,在时间点t2租户申请了物理机内网IP Vip2,可以确定物理机内网IP Vip2的序号为2,在时间点t3租户删除了物理机内网IP Vip1,可以确定此时物理机内网IP Vip2的序号变更为1,在时间点t4及t5租户申请了物理机内网IP Vip3以及物理机内网IP Vip4,可以确定物理机内网IP Vip3以及物理机内网IP Vip4的序号分别为2和3,在时间点t6租户删除了物理机内网IP Vip2,可以确定物理机内网IP Vip3以及物理机内网IP Vip4的序号分别表更为1和2,在时间点t7及t8租户申请了物理机内网IP Vip5以及物理机内网IPVip6,可以确定物理机内网IP Vip5以及物理机内网IP Vip6的序号分别为3和4。
那么电子设备可以确定目标时间点对应的所有物理机内网IP的序号即为:物理机内网IP Vip3、物理机内网IP Vip4、物理机内网IP Vip5以及物理机内网IP Vip6的序号分别为1、2、3及4。
S803,将所确定的序号中与所述目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为所述目标物理机内网IP序号对应的物理机内网IP。
确定了目标时间点对应的所有物理机内网IP的序号后,电子设备便可以从所有物理机内网IP的序号中找到与目标物理机内网IP序号相同的序号,该序号所对应的物理机内网IP即为目标物理机内网IP序号对应的物理机内网IP,也就是IP溯源请求的查询结果。
例如,假设目标物理机内网IP序号为3,那么基于上述步骤S802中的例子,可以确定目标物理机内网IP序号对应的物理机内网IP为Vip5。
可见,在本实施例中,电子设备可以将物理机内网IP日志中目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录,基于第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定目标时间点对应的所有物理机内网IP的序号,进而将所确定的序号中与目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为目标物理机内网IP序号对应的物理机内网IP。可以通过还原目标时间点对应的物理机内网IP的序号情况,实现准确确定IP地址溯源请求对应的查询结果的目的。
相应于上述IP地址溯源方法,本发明实施例还提供了一种IP地址溯源装置。下面对本发明实施例所提供的一种IP地址溯源装置进行介绍。
如图9所示,一种IP地址溯源装置,所述装置包括:
溯源请求信息获取模块910,用于获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点;
第一日志记录查找模块920,用于从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录,以获取与所述目标公网IP及所述目标时间点对应的目标租户标识;
其中,所述公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识。
第二日志记录查找模块930,用于从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录,以获取与所述目标租户标识及所述目标时间点对应的目标物理机内网IP数量;
其中,所述物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及当前物理机内网IP数量。
物理机序号确定模块940,用于根据所述目标源端口值、所述目标物理机内网IP数量及通过映射方式建立模块预先建立的映射方式,确定目标物理机内网IP序号;
其中,所述映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。
查询结果确定模块950,用于基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP,作为所述IP地址溯源请求对应的查询结果。
可见,本发明实施例所提供的方案中,电子设备可以获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点,从公网IP日志中,查找目标公网IP及目标时间点对应的第一日志记录,以获取与目标公网IP及目标时间点对应的目标租户标识,从物理机内网IP日志中,查找目标租户标识及目标时间点对应的第二日志记录,以获取与目标租户标识及目标时间点对应的目标物理机内网IP数量,根据目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,进而基于目标物理机内网IP序号及物理机内网IP日志所记录的目标租户标识对应的物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP,作为IP地址溯源请求对应的查询结果。其中,公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。由于只需要在公网IP和物理机内网IP被申请以及被删除时记录相应的日志,便可以实现IP地址溯源,无需记录每个会话缓存的所有相关信息,所以可以大大降低日志记录量,降低资源消耗。同时,由于记录的日志量较少,所以记录期限大大延长,IP地址溯源的可查询期限更长,甚至可以实现无限期查询。
作为本发明实施例的一种实施方式,上述装置还包括映射方式建立模块(图9中未示出),所述映射方式建立模块可以包括:
源端口划分单元(图9中未示出),用于以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口;
映射关系确定单元(图9中未示出),用于确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt;
其中,vip_idx为所述物理机内网IP的序号,nport为所述物理机内网IP所对应周期内的源端口的值,vip_cnt为所述物理机内网IP数量。
作为本发明实施例的一种实施方式,上述装置还可以包括序号确定模块,所述确定模块可以包括:
链表建立单元(图9中未示出),用于建立物理机内网IP链表,并记录每个所述物理机内网IP在所述物理机内网IP链表中的序号;
其中,所述序号范围为[0,vip_cnt-1]。
添加单元(图9中未示出),用于当添加第一物理机内网IP时,在所述物理机内网IP链表尾部插入所述第一物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并记录所述第一物理机内网IP的序号为vip_cnt-1;
删除单元(图9中未示出),用于当删除第二物理机内网IP时,在所述物理机内网IP链表中删除所述第二物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并将所述物理机内网IP链表中所述第二物理机内网IP之后的物理机内网IP的序号均减1。
作为本发明实施例的一种实施方式,上述第一日志记录查找模块920可以包括:
第一日志记录查找单元(图9中未示出),用于从公网IP日志中,查找所述目标公网IP对应的日志记录;
第一日志记录排序单元(图9中未示出),用于将所查找到的日志记录按照时间点进行排序;
第一日志记录确定单元(图9中未示出),用于从排序后的日志记录中,查找所述目标时间点对应的第一日志记录。
作为本发明实施例的一种实施方式,上述第二日志记录查找模块930可以包括:
第二日志记录查找单元(图9中未示出),用于从物理机内网IP日志中,查找所述目标租户标识对应的日志记录;
第二日志记录排序单元(图9中未示出),用于将所查找到的日志记录按照时间点进行排序;
第二日志记录确定单元(图9中未示出),用于从排序后的日志记录中,查找所述目标时间点对应的第二日志记录。
作为本发明实施例的一种实施方式,上述查询结果确定模块950可以包括:
第三日志记录查找单元(图9中未示出),用于将所述物理机内网IP日志中所述目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录;
序号确定单元(图9中未示出),用于基于所述第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定所述目标时间点对应的所有物理机内网IP的序号;
查询结果确定单元(图9中未示出),用于将所确定的序号中与所述目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为所述目标物理机内网IP序号对应的物理机内网IP。
本发明实施例还提供了一种电子设备,如图10所示,电子设备可以包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,
存储器1003,用于存放计算机程序;
处理器1001,用于执行存储器1003上所存放的程序时,实现上述任一实施例所述的IP地址溯源方法步骤。
可见,本发明实施例所提供的方案中,电子设备可以获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点,从公网IP日志中,查找目标公网IP及目标时间点对应的第一日志记录,以获取与目标公网IP及目标时间点对应的目标租户标识,从物理机内网IP日志中,查找目标租户标识及目标时间点对应的第二日志记录,以获取与目标租户标识及目标时间点对应的目标物理机内网IP数量,根据目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,进而基于目标物理机内网IP序号及物理机内网IP日志所记录的目标租户标识对应的物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP,作为IP地址溯源请求对应的查询结果。其中,公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。由于只需要在公网IP和物理机内网IP被申请以及被删除时记录相应的日志,便可以实现IP地址溯源,无需记录每个会话缓存的所有相关信息,所以可以大大降低日志记录量,降低资源消耗。同时,由于记录的日志量较少,所以记录期限大大延长,IP地址溯源的可查询期限更长,甚至可以实现无限期查询。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的IP地址溯源方法步骤。
可见,本发明实施例所提供的方案中,计算机程序被处理器执行时,可以获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点,从公网IP日志中,查找目标公网IP及目标时间点对应的第一日志记录,以获取与目标公网IP及目标时间点对应的目标租户标识,从物理机内网IP日志中,查找目标租户标识及目标时间点对应的第二日志记录,以获取与目标租户标识及目标时间点对应的目标物理机内网IP数量,根据目标源端口值、目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,进而基于目标物理机内网IP序号及物理机内网IP日志所记录的目标租户标识对应的物理机内网IP的申请及删除情况,确定目标物理机内网IP序号对应的物理机内网IP,作为IP地址溯源请求对应的查询结果。其中,公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系。由于只需要在公网IP和物理机内网IP被申请以及被删除时记录相应的日志,便可以实现IP地址溯源,无需记录每个会话缓存的所有相关信息,所以可以大大降低日志记录量,降低资源消耗。同时,由于记录的日志量较少,所以记录期限大大延长,IP地址溯源的可查询期限更长,甚至可以实现无限期查询。
需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
进一步需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (14)

1.一种IP地址溯源方法,其特征在于,所述方法包括:
获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点;
从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录,以获取与所述目标公网IP及所述目标时间点对应的目标租户标识,其中,所述公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;
从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录,以获取与所述目标租户标识及所述目标时间点对应的目标物理机内网IP数量,其中,所述物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;
根据所述目标源端口值、所述目标物理机内网IP数量及预先建立的映射方式,确定目标物理机内网IP序号,其中,所述映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系;
基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP,作为所述IP地址溯源请求对应的查询结果。
2.如权利要求1所述的方法,其特征在于,所述映射方式的建立方式,包括:
以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口;
确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt;
其中,vip_idx为所述物理机内网IP的序号,nport为所述物理机内网IP所对应周期内的源端口的值,vip_cnt为所述物理机内网IP数量。
3.如权利要求2所述的方法,其特征在于,所述物理机内网IP的序号的确定方式,包括:
建立物理机内网IP链表,并记录每个所述物理机内网IP在所述物理机内网IP链表中的序号,其中,所述序号范围为[0,vip_cnt-1];
当添加第一物理机内网IP时,在所述物理机内网IP链表尾部插入所述第一物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并记录所述第一物理机内网IP的序号为vip_cnt-1;
当删除第二物理机内网IP时,在所述物理机内网IP链表中删除所述第二物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并将所述物理机内网IP链表中所述第二物理机内网IP之后的物理机内网IP的序号均减1。
4.如权利要求1-3任一项所述的方法,其特征在于,所述从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录的步骤,包括:
从公网IP日志中,查找所述目标公网IP对应的日志记录;
将所查找到的日志记录按照时间点进行排序;
从排序后的日志记录中,查找所述目标时间点对应的第一日志记录。
5.如权利要求1-3任一项所述的方法,其特征在于,所述从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录的步骤,包括:
从物理机内网IP日志中,查找所述目标租户标识对应的日志记录;
将所查找到的日志记录按照时间点进行排序;
从排序后的日志记录中,查找所述目标时间点对应的第二日志记录。
6.如权利要求1-3任一项所述的方法,其特征在于,所述基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP的步骤,包括:
将所述物理机内网IP日志中所述目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录;
基于所述第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定所述目标时间点对应的所有物理机内网IP的序号;
将所确定的序号中与所述目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为所述目标物理机内网IP序号对应的物理机内网IP。
7.一种IP地址溯源装置,其特征在于,所述装置包括:
溯源请求信息获取模块,用于获取IP地址溯源请求包括的目标公网IP、目标源端口值及目标时间点;
第一日志记录查找模块,用于从公网IP日志中,查找所述目标公网IP及所述目标时间点对应的第一日志记录,以获取与所述目标公网IP及所述目标时间点对应的目标租户标识,其中,所述公网IP日志为申请公网IP时及删除已申请的公网IP时记录的日志,至少包括申请的公网IP、申请时间点、被删除的公网IP、删除时间点及租户标识;
第二日志记录查找模块,用于从物理机内网IP日志中,查找所述目标租户标识及所述目标时间点对应的第二日志记录,以获取与所述目标租户标识及所述目标时间点对应的目标物理机内网IP数量,其中,所述物理机内网IP日志为申请物理机内网IP时及删除已申请的物理机内网IP时记录的日志,至少包括申请的物理机内网IP、申请时间点、被删除的物理机内网IP、删除时间点、租户标识及物理机内网IP数量;
物理机序号确定模块,用于根据所述目标源端口值、所述目标物理机内网IP数量及通过映射方式建立模块预先建立的映射方式,确定目标物理机内网IP序号,其中,所述映射方式包括物理机内网IP序号与源端口值及物理机内网IP数量的映射关系;
查询结果确定模块,用于基于所述目标物理机内网IP序号及所述物理机内网IP日志所记录的所述目标租户标识对应的物理机内网IP的申请及删除情况,确定所述目标物理机内网IP序号对应的物理机内网IP,作为所述IP地址溯源请求对应的查询结果。
8.如权利要求7所述的装置,其特征在于,所述装置还包括映射方式建立模块,所述映射方式建立模块包括:
源端口划分单元,用于以当前正在使用的物理机内网IP数量为周期,划分当前设置的源端口;
映射关系确定单元,用于确定每个所述物理机内网IP的序号与源端口的值及物理机内网IP数量的映射关系为:vip_idx=nport%vip_cnt;
其中,vip_idx为所述物理机内网IP的序号,nport为所述物理机内网IP所对应周期内的源端口的值,vip_cnt为所述物理机内网IP数量。
9.如权利要求8所述的装置,其特征在于,所述装置还包括序号确定模块,所述确定模块包括:
链表建立单元,用于建立物理机内网IP链表,并记录每个所述物理机内网IP在所述物理机内网IP链表中的序号,其中,所述序号范围为[0,vip_cnt-1];
添加单元,用于当添加第一物理机内网IP时,在所述物理机内网IP链表尾部插入所述第一物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并记录所述第一物理机内网IP的序号为vip_cnt-1;
删除单元,用于当删除第二物理机内网IP时,在所述物理机内网IP链表中删除所述第二物理机内网IP,更新当前所述物理机内网IP数量vip_cnt,并将所述物理机内网IP链表中所述第二物理机内网IP之后的物理机内网IP的序号均减1。
10.如权利要求7-9任一项所述的装置,其特征在于,所述第一日志记录查找模块包括:
第一日志记录查找单元,用于从公网IP日志中,查找所述目标公网IP对应的日志记录;
第一日志记录排序单元,用于将所查找到的日志记录按照时间点进行排序;
第一日志记录确定单元,用于从排序后的日志记录中,查找所述目标时间点对应的第一日志记录。
11.如权利要求7-9任一项所述的装置,其特征在于,所述第二日志记录查找模块包括:
第二日志记录查找单元,用于从物理机内网IP日志中,查找所述目标租户标识对应的日志记录;
第二日志记录排序单元,用于将所查找到的日志记录按照时间点进行排序;
第二日志记录确定单元,用于从排序后的日志记录中,查找所述目标时间点对应的第二日志记录。
12.如权利要求7-9任一项所述的装置,其特征在于,所述查询结果确定模块包括:
第三日志记录查找单元,用于将所述物理机内网IP日志中所述目标租户标识对应的日志记录按照时间点进行排序,得到第三日志记录;
序号确定单元,用于基于所述第三日志记录所记录的物理机内网IP的申请及删除情况,以及物理机内网IP的序号的确定方式,确定所述目标时间点对应的所有物理机内网IP的序号;
查询结果确定单元,用于将所确定的序号中与所述目标物理机内网IP序号相同的序号所对应的物理机内网IP确定为所述目标物理机内网IP序号对应的物理机内网IP。
13.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
14.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行权利要求1-6任一所述的方法步骤。
CN201911409563.5A 2019-12-31 2019-12-31 一种ip地址溯源方法、装置、电子设备及存储介质 Active CN110933201B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911409563.5A CN110933201B (zh) 2019-12-31 2019-12-31 一种ip地址溯源方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911409563.5A CN110933201B (zh) 2019-12-31 2019-12-31 一种ip地址溯源方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN110933201A true CN110933201A (zh) 2020-03-27
CN110933201B CN110933201B (zh) 2021-11-26

Family

ID=69854477

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911409563.5A Active CN110933201B (zh) 2019-12-31 2019-12-31 一种ip地址溯源方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110933201B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112671939A (zh) * 2020-08-17 2021-04-16 紫光云技术有限公司 一种区分nat删除和nat解绑弹性公网ip的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103139326A (zh) * 2013-03-06 2013-06-05 中国联合网络通信集团有限公司 Ip溯源方法、设备和系统
CN103312835A (zh) * 2013-05-31 2013-09-18 中国联合网络通信集团有限公司 地址溯源方法和装置
CN103731515A (zh) * 2014-01-15 2014-04-16 中国联合网络通信集团有限公司 一种ip溯源方法、设备及系统
CN104219334A (zh) * 2013-05-30 2014-12-17 中国联合网络通信集团有限公司 用户溯源方法、装置及宽带接入服务器
US9124585B1 (en) * 2012-12-31 2015-09-01 Emc Corporation Framework for mapping network addresses to hosts in an enterprise network
CN110401614A (zh) * 2018-04-24 2019-11-01 中移(杭州)信息技术有限公司 恶意域名的溯源方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9124585B1 (en) * 2012-12-31 2015-09-01 Emc Corporation Framework for mapping network addresses to hosts in an enterprise network
CN103139326A (zh) * 2013-03-06 2013-06-05 中国联合网络通信集团有限公司 Ip溯源方法、设备和系统
CN104219334A (zh) * 2013-05-30 2014-12-17 中国联合网络通信集团有限公司 用户溯源方法、装置及宽带接入服务器
CN103312835A (zh) * 2013-05-31 2013-09-18 中国联合网络通信集团有限公司 地址溯源方法和装置
CN103731515A (zh) * 2014-01-15 2014-04-16 中国联合网络通信集团有限公司 一种ip溯源方法、设备及系统
CN110401614A (zh) * 2018-04-24 2019-11-01 中移(杭州)信息技术有限公司 恶意域名的溯源方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112671939A (zh) * 2020-08-17 2021-04-16 紫光云技术有限公司 一种区分nat删除和nat解绑弹性公网ip的方法

Also Published As

Publication number Publication date
CN110933201B (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
US11151163B2 (en) Scalable spine nodes with partial replication of routing information in a network environment
US10897431B2 (en) Cloud resource processing method and physical node
CN112486627B (zh) 一种虚拟机迁移的方法和装置
US20180173557A1 (en) Physical path determination for virtual network packet flows
US8769057B1 (en) Employing a hierarchy of servers to resolve fractional IP addresses
CN106850878B (zh) 逻辑l3路由
US20150379150A1 (en) Method and system for implementing a vxlan control plane
US9560016B2 (en) Supporting IP address overlapping among different virtual networks
CN105791448A (zh) 一种地址分配方法、cgn设备及cgn双主系统
CN102546854A (zh) 一种域名和服务器建立http连接的域名解析方法
US8250189B1 (en) Employing IP version fields to determine data-link layer addresses
CN109743414B (zh) 利用冗余连接提高地址翻译可用性的方法及计算机可读存储介质
CN104038422B (zh) 报文转发方法和网关
WO2016115698A1 (zh) 数据报文的转发方法、装置及设备
US10585943B2 (en) Network-wide, location-independent object identifiers for high-performance distributed graph databases
CN110933201B (zh) 一种ip地址溯源方法、装置、电子设备及存储介质
CN111327509B (zh) 一种信息更新方法及装置
CN105657078A (zh) 一种数据传输方法、装置及多层网络管理器
CN103338275A (zh) 端口分配方法和装置
CN116982307A (zh) 用于在群聚基础设施中强制实施功能过滤规则的方法和计算设备
CN111614792A (zh) 透传方法、系统、服务器、电子设备及存储介质
CN104994186A (zh) 媒体访问控制地址的查询方法、处理器及装置
CN109495525B (zh) 网络组件、解析内容标识的方法和计算机可读存储介质
US9853891B2 (en) System and method for facilitating communication
US20180367452A1 (en) Information centric networking over multi-access network interfaces

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