本申请涉及计算机技术,尤其涉及一种ip地址冲突处理方法、设备及存储介质。
背景技术:
终端管理控制平台通过agent_id来对主机进行区分,一台主机有一个唯一的agent_id,agent_id与主机的硬件相关,与主机的网际互连协议(internetprotocol,ip)无关。主机登陆服务器时服务器自动向主机分配ip地址,自动分配ip即开启了动态主机配置协议(dynamichostconfigurationprotocol,dhcp)功能,服务器自动为网络环境中的主机分配ip地址和提供主机配置参数,不同主机可能被分配相同的ip地址,也就是说一个ip地址可以对应多个agent_id。
应用功能(applicationfunction,af)实体对主机是按照ip来区分的,不同的主机只要ip相同就认为是相同的主机。终端管理控制平台将主机信息同步到af后,af通过ip查找在agent_id-ip表中查找对应的agent_id,给终端管理控制平台发送控制指令后达到控制对应主机的目的。如果agent_id错误则控制对象也就错误,从而导致处置错误的情况出现。
技术实现要素:
为解决上述技术问题,本申请实施例期望提供一种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为本申请实施例中ip地址冲突处理方法的第一流程示意图;
图2为本申请实施例中ip地址冲突的第一场景;
图3为本申请实施例中ip地址冲突的第二场景;
图4为本申请实施例中ip地址冲突处理方法的第二流程示意图;
图5为本申请实施例中ip地址冲突处理方法的第三流程示意图;
图6为本申请实施例中ip地址冲突处理方法的第四流程示意图;
图7为本申请实施例中ip地址冲突处理设备的第一组成结构示意图;
图8为本申请实施例中ip地址冲突处理设备的第二组成结构示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
本申请实施例提供了一种ip地址冲突处理方法,图1为本申请实施例中ip地址冲突处理方法的第一流程示意图,如图1所示,该方法具体可以包括:每一个步骤(本实施例中独权对应的步骤及后续描述的从权对应的内容)请先解释一下步骤内容,可结合场景图举例说明
步骤101:获取目标网络的主机信息;其中,所述主机信息包括所述目标网络中主机的ip地址和至少一个主机标识的第一映射关系;
目标网络中由很多主机根据一定的组网方式组成,目标网络可以为企业的内网或者公共网络,终端管理控制平台为了方便对目标网络的管理获取目标网络中主机信息。
这里,主机标识是用于唯一区分主机的标识信息,主机标识与主机内的硬件相关,比如,一台主机有一个唯一的agent_id,ip地址分配则是通过dhcp功能进行自动分配的,服务器自动为网络环境中的主机分配ip地址和提供主机配置参数,不同主机可能被分配相同的ip地址,也就是说一个ip地址可以对应多个agent_id。
本申请实施例中先给出了一种ip地址冲突场景,图2为本申请实施例中ip地址冲突的第一场景,内网中有3台ip相同的主机,其中,agent_id分别为111、112和113,其中主机111为开机状态,主机112和113是关机状态(同时开机会ip冲突)。终端管理控制平台将主机信息同步到af后,af要对ip为1.1.1.1的主机进行处置,af查找到的agent_id为111,此时因为主机111为开机状态可以成功实现对主机111的控制操作,操作成功。
这里,主机管理设备是通过agent_id来对主机进行区分,af是通过ip地址对主机进行区分的,不同的主机只要ip相同就认为是相同的主机。主机管理设备将主机信息同步到af后,af通过ip在表中查找agent_id,给主机管理设备发送指令后达到控制主机的目的。如果agent_id错误则无法给主机发送指令。而af查找ageng_id时找到了就不会继续查找了,这样就会出现处置错误的情况。
图3为本申请实施例中ip地址冲突的第二场景,从第一场景切换到第二场景时,在第二场景时主机111和113同时处于关机状态,主机112处于开机状态,af要对ip为1.1.1.1的主机进行处置时,af查找到的agent_id依然是111,此时因为主机111为关机状态则无法实现对主机111的控制操作,操作失败。
在一些实施例中,获取目标网络的主机信息包括:获取至少一个主机上传的主机标识和ip地址对,每一台主机的主机标识和ip地址对构成第一映射关系。
在另一些实施例中,获取目标网络的主机信息包括:在为主机分配ip地址时,利用主机标识和所分配的ip地址简历主机标识和ip地址对,保存主机标识和ip地址对。
实际应用中,获取目标网络的主机信息包括:接收主机管理设备发送的所述主机信息。具体的,主机管理设备先获取主机的主机标识和ip地址,并对建立每个主机的主机标识和ip地址的第一映射关系,将获取的所有主机的第一映射关系构成主机信息,发送主机信息至ip地址冲突处理设备。
也就是说,可以直接接收主机发送的ip地址和主机标识,或者通过主机管理设备间接获取。主机管理设备是对目标网络(比如,一个或多个内网)中的所有主机进行集中管理的平台。
步骤102:若对目标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地址是否匹配。
步骤103:获取所述至少一个主机标识对应的至少一个主机状态;
在一些实施例中,所述主机信息中还包括所述目标网络中至少一台主机的主机标识和主机状态的第二映射关系;所述获取所述至少一个主机标识对应的至少一个主机状态,包括:基于所述主机信息中的第二映射关系,确定所述至少一个主机标识对应的至少一个主机状态。
也就是说,在主机上传ip地址和主机标识的同时将自身的主机状态也一起上传,或者,主机管理设备同时收集主机的ip地址、主机标识和主机状态后,发送给ip地址冲突处理设备。
这里,第二映射关系和第一映射关系可以是ip地址-主机标识-主机状态对的映射形式,或者第二映射关系表以主机标识-主机状态对的映射形式,或者,第二映射关系和第一映射关系存储在同一个映射关系表中,第二映射关系还可以是存在独立映射关系表中。
由于主机状态变化频繁,为了保证主机状态的实时性,也可以在需要才去获取主机状态。
具体的,所述获取所述至少一个主机标识对应的至少一个主机状态,包括:基于所述至少一个主机标识,生成主机状态查询指令;发送所述主机状态查询指令至主机管理设备,以使所述主机管理设备查询所述至少一个主机标识对应的至少一个主机状态;接收所述主机管理设备返回的所述至少一个主机状态。
除了通过主机管理设备获取主机状态之外,还可以直接去查询主机状态。比如,向主机发送状态查询请求,接收主机返回的状态查询结果。
步骤104:基于所述至少一个主机状态确定处于可控状态的目标主机,并对所述目标主机进行控制操作。
在一些实施例中,所述目标ip地址对应一个主机标识时,直接将所述目标ip地址对应一个主机标识对应的主机作为所述目标主机。
也就是说,当目标ip地址只分配给了一个主机时,无需判断该主机的状态,将该主机直接作为目标主机。之后若该主机处于可控状态则可以实现控制操作,若处于非可控状态则无法实现控制操作。
在另一些实施例中,所述目标ip地址对应至少两个主机标识时,从所述至少两个主机标识中获取第一主机标识对应的第一主机状态;所述第一主机状态为可控状态时,确定所述第一主机标识对应的主机为目标主机;若所述第一主机标识对应的第一主机状态为非可控状态,从所述至少两个主机标识中获取下一个主机标识对应的主机状态进行主机状态判断。
也就是说,当目标ip地址分配给了两个或以上个主机时,需要逐一判断每一个主机的状态,直到找到处于可控状态的主机作为目标主机。
在一些实施例中,该方法还包括:基于所述至少一个主机状态进行主机状态判断,确定处于非可控状态的非目标主机,忽略非目标主机。
实际应用中,所述可控状态为在线状态,所述非可控状态为离线状态。也就是说,当出现ip地址冲突的情况时,依据“在线优先”选择处于在线状态的主机进行控制,也就是对主机进行处置时始终能对在线主机进行处置。
实际应用中,对目标主机的操作可以有深度排查、安全扫描、隔离等操作。
这里,步骤101至步骤104的执行主体可以为ip地址冲突处理设备。这里,ip地址冲突处理设备可以为目标网络中主机管理设备、防火墙设备等。
采用上述技术方案,在对主机进行控制操作时,若出现ip地址冲突现象,则根据主机状态识别被控制的目标主机,实现对控制对象的准确定位,避免因ip地址冲突导致主机识别错误的情况。
在上述实施例的基础上还提供了一种更详细ip地址冲突处理方法,图4为本申请实施例中ip地址冲突处理方法的第二流程示意图,如图4所示,若目标ip地址对应一个主机标识,该方法具体包括:
步骤401:获取目标网络的主机信息;其中,所述主机信息包括所述目标网络中主机的ip地址和至少一个主机标识的第一映射关系;
步骤402:若对目标ip地址对应的目标主机进行控制操作,基于所述第一映射关系,确定所述目标ip地址对应的一个主机标识;
具体的,判断所述目标ip地址与所述第一映射关系中的目标ip地址是否匹配;
所述目标ip地址与所述目标ip地址匹配时,将所述目标ip地址对应的至少一个主机标识作为所述目标ip地址对应的主机标识;
所述目标ip地址与所述目标ip地址不匹配时,继续判断所述目标ip地址与所述第一映射关系中的第二ip地址是否匹配。
步骤403:将目标ip地址对应一个主机标识对应的主机作为所述目标主机;
也就是说,当目标ip地址只分配给了一个主机时,即一个ip地址只对应一个ip地址和主机标识对,而不是对应多个。无需判断该主机的状态,将该主机直接作为目标主机。之后若该主机处于可控状态则可以实现控制操作,若处于非可控状态则无法实现控制操作。
步骤404:对目标主机进行控制操作。
在上述实施例的基础上还提供了一种更详细ip地址冲突处理方法,图5为本申请实施例中ip地址冲突处理方法的第三流程示意图,如图5所示,若目标ip地址对应至少两个主机标识,该方法具体包括:
步骤501:获取目标网络的主机信息;其中,所述主机信息包括所述目标网络中主机的ip地址和至少一个主机标识的第一映射关系;
步骤502:若对目标ip地址对应的目标主机进行控制操作,基于所述第一映射关系,确定所述目标ip地址对应的至少一个主机标识;
步骤503:获取第一主机标识对应的第一主机状态;
步骤504:判断第一主机状态是否为可控状态,如果是,执行步骤505;如果否,执行步骤507;
步骤505:第一主机状态为可控状态时,确定所述第一主机标识对应的主机为目标主机;
也就是说,在根据目标ip地址查询主机信息时,每查询到一个对应的第一主机标识,便获取第一主机标识对应的第一主机状态,进行主机状态判断,在找到处于可控状态的目标主机时,对目标主机进行控制操作,并结束查找。
步骤506:对目标主机进行控制操作;
步骤507:若第一主机标识对应的第一主机状态为非可控状态,从所述至少两个主机标识中获取下一个主机标识,并返回步骤504;
这里,当第一主机状态为非可控状态,获取下一个主机标识作为新的第一主机标识重新执行步骤504,判断下一个主机标识对应的主机状态是否为可控状态。
实际应用中,根据目标ip地址逐一对所有第一主机标识对应的第一主机状态进行判断,至少找到处于可控状态的目标主机,结束流程。
在实际应用中,该方法还包括:针对处于非可控状态的非目标主机生成提示信息;输出所述提示信息。这里,提示信息用于提示用户存在ip地址冲突且处于非可控状态的非目标主机。
在上述实施例的基础上还提供了实现场景,图6为本申请实施例中ip地址冲突处理方法的第四流程示意图,如图6所示,该方法包括:
步骤601:加载从主机管理设备同步到af的主机信息(包括agent_id、ip地址、状态);
步骤602:i是否等于数量阈值;如果是执行步骤603;如果否结束流程;
这里,i的初始值为0,数量阈值为主机信息中包含的agent_id-ip对的个数。
步骤603:判断第i个agent_id-ip对是否匹配上,如果否执行步骤604;如果是执行步骤605;
也就是说,判断第i个agent_id-ip中的ip地址是否为目的ip地址,如果为目的pi地址,说明第i个agent_id-ip匹配,否则不匹配。
步骤604:i自加1,并返回步骤602继续匹配下一个agent_id-ip对;
当全部匹配完成后退出匹配。
步骤605:判断agent_id对应的主机是否在线;如果是执行步骤606,如果否执行步骤604;
步骤606:对处于在线状态的目标主机进行控制操作。
控制操作可以为深度排查、安全扫描、隔离等操作。
本申请实施例中还提供了一种ip地址冲突处理设备,如图7所示,该设备包括:
获取单元701,用于获取目标网络的主机信息;其中,所述主机信息包括所述目标网络中主机的ip地址和至少一个主机标识的第一映射关系;
处理单元702,用于若对目标ip地址对应的目标主机进行控制操作,基于所述第一映射关系,确定所述目标ip地址对应的至少一个主机标识;
所述获取单元701,还用于获取所述至少一个主机标识对应的至少一个主机状态;
所述处理单元702,还用于基于所述至少一个主机状态确定处于可控状态的目标主机;
控制单元703,用于对所述目标主机进行控制操作。
在一些实施例中,所述处理单元702,具体用于判断所述目标ip地址与所述第一映射关系中的目标ip地址是否匹配;所述目标ip地址与所述目标ip地址匹配时,将所述目标ip地址对应的至少一个主机标识作为所述目标ip地址对应的主机标识;所述目标ip地址与所述目标ip地址不匹配时,继续判断所述目标ip地址与所述第一映射关系中的第二ip地址是否匹配。
在一些实施例中,所述处理单元702,具体用于所述目标ip地址对应一个主机标识时,直接将所述目标ip地址对应一个主机标识对应的主机作为所述目标主机。
在一些实施例中,所述处理单元702,具体用于所述目标ip地址对应至少两个主机标识时,从所述至少两个主机标识中获取第一主机标识对应的第一主机状态;所述第一主机状态为可控状态时,确定所述第一主机标识对应的主机为目标主机;若所述第一主机标识对应的第一主机状态为非可控状态,从所述至少两个主机标识中获取下一个主机标识对应的主机状态进行主机状态判断。
在一些实施例中,所述可控状态为在线状态,所述非可控状态为离线状态。
在一些实施例中,所述主机信息中还包括所述目标网络中至少一台主机的主机标识和主机状态的第二映射关系;所述获取单元701,具体用于基于所述第二映射关系,确定所述至少一个主机标识对应的至少一个主机状态。
在一些实施例中,所述获取单元701,具体用于接收主机管理设备发送的所述主机信息;或者,基于所述至少一个主机标识,生成主机状态查询指令;发送所述主机状态查询指令至主机管理设备,以使所述主机管理设备查询所述至少一个主机标识对应的至少一个主机状态;接收所述主机管理设备返回的所述至少一个主机状态。
采用上述技术方案,在对主机进行控制操作时,若出现ip地址冲突现象,则根据主机状态识别被控制的目标主机,实现对控制对象的准确定位,避免因ip地址冲突导致主机识别错误的情况。
本申请实施例还提供了另一种ip地址冲突处理设备,如图8所示,该设备包括:处理器801和配置为存储能够在处理器上运行的计算机程序的存储器802;处理器801运行存储器802中计算机程序时实现本申请实施例中任一种方法的步骤。
当然,实际应用时,如图8所示,该设备中的各个组件通过总线系统803耦合在一起。可理解,总线系统803用于实现这些组件之间的连接通信。总线系统803除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图8中将各种总线都标为总线系统803。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法的步骤。
在实际应用中,上述处理器可以为特定用途集成电路(asic,applicationspecificintegratedcircuit)、数字信号处理设备(dspd,digitalsignalprocessingdevice)、可编程逻辑设备(pld,programmablelogicdevice)、现场可编程门阵列(field-programmablegatearray,fpga)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
上述存储器可以是易失性存储器(volatilememory),例如随机存取存储器(ram,random-accessmemory);或者非易失性存储器(non-volatilememory),例如只读存储器(rom,read-onlymemory),快闪存储器(flashmemory),硬盘(hdd,harddiskdrive)或固态硬盘(ssd,solid-statedrive);或者上述种类的存储器的组合,并向处理器提供指令和数据。
需要说明的是:“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。