本申请涉及资产管理技术领域,尤其是涉及一种ip资源管理方法、装置、设备及存储介质。
背景技术:
在资产管理技术领域中,对ip资源的管理占据了非常重要的地位,通过对ip资源的管理可以实现对资产设备的管控和维护。
传统的ip管理模式是采用电子表格记录、整理和统计,耗时且容易出错,无法准确、有效地对ip资源进行定期监控、定位、数据汇总和可视化查看,不便于对ip资源进行管理。
技术实现要素:
为了提高ip资源管理的准确性和有效性,本申请提供一种ip资源管理方法、装置、设备及存储介质。
第一方面,本申请提供一种ip资源管理方法,采用如下的技术方案:
一种ip资源管理方法,包括:
获取预先分配的资产设备的第一ip地址;
通过snmp协议获取已学习到的ip地址、mac地址、子网掩码和网关地址;
通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,将过滤和去重后的已学习到的ip地址作为第二ip地址;
通过对比引擎算法将所述第一ip地址与所述第二ip地址进行对比,判断所述资产设备是否已被管控;
对所述第一ip地址、所述第二ip地址、所述mac地址、所述子网掩码和所述网关地址进行数据汇总,并进行可视化显示。
通过采用上述技术方案,通过snmp协议可以获取ip资源,通过hashmap集合可以过滤无效的ip资源,以及通过对比引擎算法可以去掉重复的ip资源,从而便于对ip资源进行定期监控、定位、数据汇总和可视化查看,自动判断出资产设备是否已被管控,自动跟踪mac地址,并生成多样化的统计报表,从而方便对ip资源进行管理,实现对资产设备的管控和维护。
优选的,所述按照预设时间间隔通过snmp协议获取已学习到的ip地址、mac地址、子网掩码和网关地址,包括:
通过snmp协议获取所述资产设备中路由器和/或交换机的设备类型及其版本号,根据设备类型及其版本号获取多个arp表,根据所述arp表获取所述已学习到的ip地址、mac地址、子网掩码和网关地址。
优选的,所述通过hashmap集合过滤掉无效的已学习到的ip地址,包括:
将所述已学习到的ip地址存放至所述hashmap集合中并按照时间顺序进行排列,对所述已学习到的ip地址进行遍历,若所述已学习到的ip地址不符合四段号码格式或者第四段号码为0,则视为无效的ip地址,将所述无效的ip地址删除。
通过采用上述技术方案,通过应用hashmap集合可以快速地过滤掉无效的ip地址。
优选的,所述通过对比引擎算法去掉重复的已学习到的ip地址,包括:
将同一arp表中已学习到的ip地址存放至一个set集合中,一个arp表对应一个set集合,取所有set集合的并集,所述并集中的已学习到的ip地址为去重后的已学习到的ip地址。
通过采用上述技术方案,通过取set集合的并集的方法可以高效快速地去掉重复的已学习到的ip地址,防止重复的已学习到的ip地址影响到后续的对ip资源的数据汇总的准确性。
优选的,在所述通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,所述第二ip地址为过滤和去重后的已学习到的ip地址之后,还包括:
根据所述第二ip地址及其对应的子网掩码计算其所属网段,根据所述网段及其对应的子网掩码计算各网段中可用ip地址数量,根据各网段中的第二ip地址数量和所述可用ip地址数量计算得到各网段中的未用ip地址数量。
通过采用上述技术方案,可以快速地获取各网段的可用、已用和未用ip地址,便于后续对未用ip地址的合理分配。
优选的,在所述根据各网段中的第二ip地址数量和所述可用ip地址数量计算得到各网段中的未用ip地址数量之后,还包括:
根据所述第二ip地址数量和所述可用ip地址数量计算各网段的使用率。
通过采用上述技术方案,可以准确地获取各网段的使用率。
优选的,在所述通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,所述第二ip地址为过滤和去重后的已学习到的ip地址之后,还包括:
通过对比引擎算法将当前获取的第二ip地址与上一次获取的第二ip地址进行对比,获取新增的第二ip地址和移除的第二ip地址,并进行可视化显示。
通过采用上述技术方案,通过获取新增的第二ip地址和移除的第二ip地址可以得知第二ip地址的更新情况,实现对第二ip地址的定期监控。
第二方面,本申请提供一种ip资源管理装置,采用如下的技术方案:
一种ip资源管理装置,包括:
第一获取模块,用于获取各资产设备预先分配的第一ip地址;
第二获取模块,用于按照预设时间间隔通过snmp协议获取已学习到的ip地址、mac地址、子网掩码和网关地址;
过滤去重模块,用于通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,所述第二ip地址为过滤和去重后的已学习到的ip地址;
判断模块,用于通过对比引擎算法将所述第一ip地址与所述第二ip地址进行对比,判断所述各资产设备是否已被管控;以及,
可视化显示模块,用于对所述第一ip地址、所述第二ip地址、所述mac地址、所述子网掩码和所述网关地址进行数据汇总,并进行可视化显示。
通过采用上述技术方案,通过snmp协议可以快速地获取ip资源,通过hashmap集合可以过滤无效的ip资源,以及通过对比引擎算法可以去掉重复的ip资源,从而便于对ip资源进行定期监控、定位、数据汇总和可视化查看,自动判断出资产设备是否已被管控,自动跟踪mac地址,自动统计各网段的利用率,并生成多样化的统计报表,从而方便对ip资源进行管理,实现对资产设备的管控和维护。
第三方面,本申请提供一种计算机设备,采用如下的技术方案:
一种计算机设备,包括存储器和处理器,所述存储器上存储有能够被所述处理器加载并执行上述任一种ip资源管理方法的计算机程序。
通过采用上述技术方案,通过snmp协议可以快速地获取ip资源,通过hashmap集合可以过滤无效的ip资源,以及通过对比引擎算法可以去掉重复的ip资源,从而便于对ip资源进行定期监控、定位、数据汇总和可视化查看,自动判断出资产设备是否已被管控,自动跟踪mac地址,自动统计各网段的利用率,并生成多样化的统计报表,从而方便对ip资源进行管理,实现对资产设备的管控和维护。
第四方面,本申请提供一种计算机可读存储介质,采用如下的技术方案:
一种计算机可读存储介质,存储有能够被处理器加载并执行上述任一种ip资源管理方法的计算机程序。
通过采用上述技术方案,通过snmp协议可以快速地获取ip资源,通过hashmap集合可以过滤无效的ip资源,以及通过对比引擎算法可以去掉重复的ip资源,从而便于对ip资源进行定期监控、定位、数据汇总和可视化查看,自动判断出资产设备是否已被管控,自动跟踪mac地址,自动统计各网段的利用率,并生成多样化的统计报表,从而方便对ip资源进行管理,实现对资产设备的管控和维护。
综上所述,本申请包括以下至少一种有益技术效果:
1.通过snmp协议可以获取ip资源,通过hashmap集合可以过滤无效的ip资源,以及通过对比引擎算法可以去掉重复的ip资源,从而便于对ip资源进行定期监控、定位、数据汇总和可视化查看,自动判断出资产设备是否已被管控,自动跟踪mac地址,并生成多样化的统计报表,从而方便对ip资源进行管理,实现对资产设备的管控和维护。;
2.通过取set集合的并集的方法可以高效快速地去掉重复的已学习到的ip地址,防止重复的已学习到的ip地址影响到后续的对ip资源的数据汇总的准确性;
3.通过获取新增的第二ip地址和移除的第二ip地址可以得知第二ip地址的更新情况,实现对第二ip地址的定期监控。
附图说明
图1是本申请实施例一提供的ip资源管理方法的流程示意图。
图2是本申请实施例二提供的ip资源管理装置的结构框图。
图3是本申请实施例二提供的ip资源管理装置的另一结构框图。
图4是本申请实施例三提供的计算机设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
实施例一
本实施例提供一种ip资源管理方法,如图1所示,该方法的主要流程描述如下(步骤s101~s105):
步骤s101:获取各资产设备预先分配的第一ip地址。
本实施例中,资产设备包括交换机、路由器、网桥、集线器和中继器等,u位是机柜上存放资产设备的装置,数位机用于对u位进行排序,方便资产设备的管理。
在机柜的u位上分别装配有预先分配的资产设备,每个资产设备均绑定有一rfid电子标签,rfid电子标签与数位机上的数位一一对应。
初始化时,电子标签内会写入对应资产设备的基本信息,基本信息包含ip地址、机位信息(用于指示资产设备位于哪个机房、哪个机柜及哪个u位)、硬件配置等信息;管理主机(计算机设备)向数位机发送ip地址查询请求,数位机向各rfid电子标签发送请求,rfid电子标签返回存储的ip地址,数位机将各资产设备的ip地址转发给管理主机,此ip地址即为第一ip地址。
步骤s102:按照预设时间间隔通过snmp协议获取已学习到的ip地址、mac地址、子网掩码和网关地址。
本实施例中,按照预设时间间隔获取ip资源,例如每周一获取一次,资产设备预先开启了snmp协议,因此通过snmp协议获取资产设备中路由器和/或交换机的设备类型及其版本号,设备类型包括二层交换机、三层交换机和路由器,版本号包括v5和v7。
通过snmp协议可以获取mib库,mib库中记录有资产设备的设备类型和版本号,所以不同的设备类型和版本号通过snmp协议获取的mib库不一样。在程序执行时,需要先获取设备类型对应的mib库,再根据mib库获取arp表,根据arp表获取已学习到的ip地址、mac地址、子网掩码和网关地址,arp表里记录了ip地址和mac地址(物理地址)的映射关系,因此通过已学习到的ip地址可以获取mac地址,通过mac地址可以对资产设备进行定位。mib库里还记录了arp表所对应的oid值,每个厂商的oid值是不一样的,因此通过oid值可以识别出资产设备出自于哪些厂商。oid值还记录了端口号和ssid号,可以获取端口号和ssid号。
步骤s103:通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,第二ip地址为过滤和去重后的已学习到的ip地址。
将已学习到的ip地址存放至hashmap集合中,并按照时间顺序进行排列,对已学习到的ip地址进行遍历,当ip地址(a.b.c.d)满足以下任一条件时,就被判定为无效的ip地址,删除该ip地址:
(1)已学习到的ip地址不符合四段号码格式,例如:a,b,c,d有至少一段号码不是0至255之间的十进制整数;
(2)第四段号码d为0。
将同一arp表中已学习到的ip地址分别存放至一个set集合中,一个arp表对应一个set集合,取所有set集合的并集,并集中的已学习到的ip地址为去重后的已学习到的ip地址,此方法比采用轮询这种传统的对比引擎算法的计算速度更快,对比效率更高。
步骤s104:通过对比引擎算法将第一ip地址与第二ip地址进行对比,判断各资产设备是否已被管控。
本实施例中,将第一ip地址和第二ip地址分别存放至两个set集合中,两个set集合取交集,与交集中的ip地址相对应的资产设备视为已被管控,即在第二ip地址里有与第一ip地址相同的第二ip地址,则视为与第一ip地址相对应的资产设备已被管控,否则将该资产设备视为未知设备。
步骤s105:对第一ip地址、第二ip地址、mac地址、子网掩码和网关地址进行数据汇总,并进行可视化显示。
本实施例中,统计第一ip地址、第二ip地址、mac地址、子网掩码和网关地址的总数,并通过html5的3d可视化生成多样化的统计报表。
可选的,在步骤s106之前还包括:
(1)根据第二ip地址及其对应的子网掩码计算其所属网段,根据网段及其对应的子网掩码计算各网段中可用ip地址数量,各网段中的第二ip地址为已用ip地址,各网段中的可用ip地址数量与已用ip地址数量的差值为未用ip地址数量。
其中,根据网段及其对应的子网掩码计算各网段中可用ip地址数量为:网段地址为192.168.1.1,对应的子网掩码为255.255.255.0,将子网掩码换算成二进制为11111111.11111111.11111111.00000000,后面有八位为0,则ip地址个数为28,就是256个,去掉网络地址192.168.1.0和广播地址192.168.1.255,剩下254个ip地址可用,可用范围为192.168.1.1至192.168.1.254。
根据第二ip地址数量和可用ip地址数量可以计算出各网段的使用率。假设一个网段中第二ip地址数量即已用ip地址数量为a,可用ip地址数量为a,则a/a×100%为该网段的使用率,将可用ip地址数量、已用ip地址数量、未用ip地址数量和网段的使用率通过html5的3d可视化进行显示。
(2)通过对比引擎算法将当前获取的第二ip地址与上一次获取的第二ip地址进行对比,获取新增的第二ip地址和移除的第二ip地址,并进行可视化显示。
按照预设时间间隔获取第二ip地址,将相邻两次获取的第二ip地址分别存放至两个set集合中,假设上一次获取的第二ip地址存放至set集合a中,当前获取的第二ip地址存放至set集合b中,新增的第二ip地址为set集合b与set集合a的差集(b-a)中第二ip地址,移除的第二ip地址为set集合a与set集合b的差集(a-b)中第二ip地址,将新增的第二ip地址和移除的第二ip地址通过html5的3d可视化进行显示。通过获取新增的第二ip地址和移除的第二ip地址可以得知第二ip地址的更新情况,实现对第二ip地址的定期监控。
实施例二
为了更好地实施以上方法,本申请实施例提供了一种ip资源管理装置,该装置具体可以集成在计算机设备中,例如终端或服务器等设备中,该终端可以是手机、平板电脑、台式电脑等设备。
图2为本申请实施例提供的一种ip资源管理装置的结构框图,如图2所示,该ip资源管理装置主要包括:
第一获取模块201,用于获取各资产设备预先分配的第一ip地址;
第二获取模块202,用于按照预设时间间隔通过snmp协议获取已学习到的ip地址、mac地址、子网掩码和网关地址;
过滤去重模块203,用于通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,第二ip地址为过滤和去重后的已学习到的ip地址;
判断模块204,用于通过对比引擎算法将第一ip地址与第二ip地址进行对比,判断各资产设备是否已被管控;以及,
可视化显示模块205,用于对第一ip地址、第二ip地址、mac地址、子网掩码和网关地址进行数据汇总,并进行可视化显示。
可选的,第二获取模块202,具体用于通过snmp协议获取资产设备中路由器和/或交换机的设备类型及其版本号,根据设备类型及其版本号获取多个arp表,根据arp表获取已学习到的ip地址、mac地址、子网掩码和网关地址。
可选的,过滤去重模块203,具体用于将已学习到的ip地址存放至hashmap集合中并按照时间顺序进行排列,对已学习到的ip地址进行遍历,若已学习到的ip地址不符合四段号码格式或者第四段号码为0,则视为无效的ip地址,将无效的ip地址删除。。
可选的,过滤去重模块203,还具体用于将同一arp表中已学习到的ip地址存放至一个set集合中,一个arp表对应一个set集合,取所有set集合的并集,并集中的已学习到的ip地址为去重后的已学习到的ip地址。
可选的,如图3所示,该装置还包括网段计算模块206,用于在通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,第二ip地址为过滤和去重后的已学习到的ip地址之后,根据第二ip地址及其对应的子网掩码计算其所属网段,根据网段及其对应的子网掩码计算各网段中可用ip地址数量,根据各网段中的第二ip地址数量和可用ip地址数量计算得到各网段中的未用ip地址数量。
可选的,网段计算模块206,具体用于根据第二ip地址数量和可用ip地址数量计算各网段的使用率。
可选的,如图3所示,该装置还包括第三获取模块207,用于在通过hashmap集合过滤掉无效的已学习到的ip地址,通过对比引擎算法去掉重复的已学习到的ip地址,获取第二ip地址,第二ip地址为过滤和去重后的已学习到的ip地址之后,通过对比引擎算法将当前获取的第二ip地址与上一次获取的第二ip地址进行对比,获取新增的第二ip地址和移除的第二ip地址,并进行可视化显示。
实施例一提供的方法中的各种变化方式和具体实例同样适用于本实施例的ip资源管理装置,通过前述对ip资源管理方法的详细描述,本领域技术人员可以清楚的知道本实施例中的ip资源管理装置的实施方法,为了说明书的简洁,在此不再详述。
实施例三
为了更好地执行上述方法的程序,本申请实施例提供一种计算机设备,如图4所示,计算机设备300包括存储器301和处理器302。
计算机设备300可以以各种形式来实施,包括手机、平板电脑、掌上电脑、笔记本电脑和台式计算机等设备。
其中,存储器301可用于存储指令、程序、代码、代码集或指令集。存储器301可以包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如获取第一ip地址、计算各网段的使用率和可视化显示等)以及用于实现上述实施例一提供的ip资源管理方法的指令等;存储数据区可存储上述实施例一提供的ip资源管理方法中涉及到的数据等。
处理器302可以包括一个或者多个处理核心。处理器302通过运行或执行存储在存储器301内的指令、程序、代码集或指令集,调用存储在存储器301内的数据,执行本申请的各种功能和处理数据。处理器302可以为特定用途集成电路(applicationspecificintegratedcircuit,asic)、数字信号处理器(digitalsignalprocessor,dsp)、数字信号处理装置(digitalsignalprocessingdevice,dspd)、可编程逻辑装置(programmablelogicdevice,pld)、现场可编程门阵列(fieldprogrammablegatearray,fpga)、中央处理器(centralprocessingunit,cpu)、控制器、微控制器和微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器302功能的电子器件还可以为其它,本申请实施例不作具体限定。
实施例四
本申请实施例提供一种计算机可读存储介质,例如包括:u盘、移动硬盘、只读存储器(readonlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。该计算机可读存储介质存储有能够被处理器加载并执行上述实施例一的ip资源管理方法的计算机程序。
本申请具体实施例仅仅是对本申请的解释,其并不是对本申请的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本申请的权利要求范围内都受到专利法的保护。