网络配置文件采集的方法、装置、电子设备及存储介质与流程
未命名
09-01
阅读:82
评论:0
1.本发明涉及计算机
技术领域:
:,具体而言,涉及一种npm(networkperformancemonitor,网络性能监控器)网络配置文件采集的方法、装置、电子设备及存储介质。
背景技术:
::2.networkperformancemonitor(npm)是集网络监测、设备性能维护管理、故障监控、网络实时流量监控和历史数据统计、汇总和历史数据分析等功能于一体的网络管理系统。3.网络配置文件的采集备份是针对配置文件的一个版本的控制,便于后继控制版本。目前,在npm网络中,受维护的网络设备较多,存在不能直接建立连接的设备无法直接通过网络模块进行连接拉取配置文件数据;由于是多网络空间的场景,也就有可能造成不同客户下的网络设备有ip冲突的情况。对于网络设备配置需要处于一个稳定的状态,如果在网络设备上执行了错误或者未经认证的变更,就有可能导致不可预见的网络性能、可靠性和安全问题。4.因此,亟需一种能够实现安全可靠地进行网络配置文件采集的解决方案。技术实现要素:5.本发明要解决的技术问题是如何安全可靠地进行网络配置文件采集,包括不能直接建立连接的设备和网络设备间ip中途的情况,避免在网络设备上执行了错误或者未经认证的变更,导致不可预见的网络性能、可靠性和安全问题。6.为解决上述技术问题,根据本发明的一个方面,提供一种网络配置文件采集的方法,网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的方法包括如下步骤:s1、选择所需采集网络配置文件的网络设备清单文件;s2、连接所需采集网络配置文件的网络设备,判断网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;s3、通过netmiko进行配置文件的数据拉取,采集网络配置文件。7.根据本发明的实施例,步骤s2中,基于跳板机连接到目标设备时会产生很多障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,可通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间。8.根据本发明的实施例,划分ip域后,可逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。9.根据本发明的实施例,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,可将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。10.根据本发明的实施例,步骤s3中,启动基于多进程多线程的调度程序,基于一定的时间间隔拉取采集设备清单,可将含有跳板机的清单加入到netns队列中,反之,可直接建立连接的设备直接加入采集队列;基于python网络模块netmiko实现对不同厂商不同设备类型的网络设备的统一管理,包括建立连接、发送指令。其中,将采集设备清单队列中的设备采集任务加入到netmiko执行库中,进行最终的设备连接,获取配置文件的命令发送,文件内容返回。其中,采集失败的进入失败队列,采集成功的进入到文件内容版本比对环节,形成第一差异结果。11.根据本发明的实施例,因网络情况或者其他原因造成的采集未成功的设备可加入到重试队列,并可基于一定规则执行一定周期的重试连接;当设备采集任务执行完之后,对当前批次的采集内容与上一批次的采集内容进行差异性比较,同时针对网络设备的startup配置文件和running配置文件也进行差异性比较,形成第二差异结果;将第一差异结果、第二差异结果和当前批次采集内容入库,包括采集成功或失败的状态标识也一起入库。12.根据本发明的实施例,网络配置文件采集的方法还可包括:开放api服务,将网络配置文件采集的结果展示到web页面,前端平台可通过api的方式提取配置文件采集内容,并进行可视化展示。13.根据本发明的第二个方面,提供一种网络配置文件采集的装置,网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的装置包括:直连采集模块,待采集配置文件的网络设备为可直接建立连接的设备时,由直连采集模块连接网络设备;跳板机连接模块,待采集配置文件的网络设备为不能直接建立连接的设备时,则通过跳板机连接模块建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;采集调度中心,选择所需采集网络配置文件的网络设备清单文件,采集调度中心用于通过netmiko进行配置文件的数据拉取,采集网络配置文件。其中,基于跳板机连接模块到目标设备时会产生障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间。其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。14.根据本发明的第三个方面,提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。15.根据本发明的第四个方面,提供一种计算机存储介质,其中,计算机存储介质上存储有网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。16.与现有技术相比,本发明的实施例所提供的技术方案至少可实现如下有益效果:17.根据本发明的提供的技术方案,网络配置文件的采集备份时,备份的内容会存储到数据库中,可以保证数据的完全可靠,将直连和不能直连的网络设备统一操作,同时可以在线可视化比较当前备份版本和上一次备份版本的变更差异,做到对配置文件的变更更完善的把控,并且可以一键回滚到信任的版本。18.根据本发明的提供的技术方案,能够实现采集终端至目标网络设备之间的网络打通,实现正常的网络连接,发送相关指令输出对应的配置文件内容,将其写入数据库,从而实现网络设备配置文件的可视化全面变更监控。附图说明19.为了更清楚地说明本发明实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本发明的一些实施例,而非对本发明的限制。20.图1是示出根据本发明实施例的网络配置文件采集的装置示意图;21.图2是示出根据本发明实施例的网络配置文件采集的方法流程图。具体实施方式22.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其它实施例,都属于本发明保护的范围。23.除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。24.图1是示出根据本发明实施例的网络配置文件采集的装置示意图;图2是示出根据本发明实施例的网络配置文件采集的方法流程图。25.网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,如图1和图2所示,网络配置文件采集的方法包括如下步骤:26.s1、选择所需采集网络配置文件的网络设备清单文件;27.s2、连接所需采集网络配置文件的网络设备,判断网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;28.s3、通过netmiko进行配置文件的数据拉取,采集网络配置文件。29.根据本发明的一个或一些实施例,步骤s2中,基于跳板机连接到目标设备时会产生很多障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间。30.根据本发明的一个或一些实施例,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。31.实际实现步骤如下:32.1.创建特定虚拟ip,创建iptable,设置路由指向规则:33.iplinkaddv_i_ns_xxxtypevethpeernamev_0_ns_xxx34.iplinksetv_i_ns_xxxnetnsns_xxx35.iplinksetupdevv_0_ns_xxx36.ipnetnsexecns_xxxiplinksetupdevv_i_ns_xxx37.ipnetnsexecns_xxxipaddradd10.0.xxx.2/30devv_i_ns_xxx38.ipaddradd10.0.xxx.1/30devv_0_ns_xxx39.ipnetnsexecns_xxxiprouteadddefaultvia10.0.xxx.140.ipruleaddfrom10.0.xxx.0/30tablexxx(编号,数字整型,如:30)41.2.添加跳板机设备清单到指定的iptbale:42.iprouteadd10.241.xx.1via103.104.xxx.116tablexx43.iprouteadd10.241.xx.253via103.104.xxx.116tablexx44.iprouteadd10.231.xx.213via103.104.xxx.116tablexx45....46.iptables-tnat-apostrouting-s10.0.xxx.0/30-jmasquerade47.sysctl-wnet.ipv4.ip_forward=148.根据本发明的一个或一些实施例,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连,具体如下:49.ipnetnsexecns_cxxxssh-22admin@103.105.xxx.xxx。50.根据本发明的一个或一些实施例,步骤s3中,启动基于多进程多线程的调度程序,基于一定的时间间隔拉取采集设备清单,将含有跳板机的清单加入到netns队列中,反之,可直接建立连接的设备直接加入采集队列。51.如命令:52.含跳板机:ipnetnsexec'{0}'python3netconfig.py'{1}”{2}”{3}'...53.直接设备:python3netconfig.py'{0}”{1}”{2}”{3}”{4}'...54.基于python网络模块netmiko实现对不同厂商不同设备类型的网络设备的统一管理,包括建立连接、发送指令。55.其中,将采集设备清单队列中的设备采集任务加入到netmiko执行库中,进行最终的设备连接,获取配置文件的命令发送,文件内容返回。56.其中,采集失败的进入失败队列,采集成功的进入到文件内容版本比对环节,形成第一差异结果。57.根据本发明的一个或一些实施例,因网络情况或者其他原因造成的采集未成功的设备加入到重试队列,并基于一定规则执行一定周期的重试连接;当设备采集任务执行完之后,对当前批次的采集内容与上一批次的采集内容进行差异性比较,同时针对网络设备的startup配置文件和running配置文件也进行差异性比较,形成第二差异结果。将第一差异结果、第二差异结果和当前批次采集内容入库,包括采集成功或失败的状态标识也一起入库。58.根据本发明的一个或一些实施例,网络配置文件采集的方法还包括开放api服务。59.开放api服务用于将网络配置文件采集的结果展示到web页面,前端平台可通过api的方式提取配置文件采集内容,并进行可视化展示。60.根据本发明的提供的技术方案,网络配置文件的采集备份时,备份的内容会存储到数据库中,可以保证数据的完全可靠,将直连和不能直连的网络设备统一操作,同时可以在线可视化比较当前备份版本和上一次备份版本的变更差异,做到对配置文件的变更更完善的把控,并且可以一键回滚到信任的版本。61.根据本发明的提供的技术方案,能够实现采集终端至目标网络设备之间的网络打通,实现正常的网络连接,发送相关指令输出对应的配置文件内容,将其写入数据库,从而实现网络设备配置文件的可视化全面变更监控。62.根据本发明的第二个方面,提供一种网络配置文件采集的装置,网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的装置包括:63.直连采集模块,待采集配置文件的网络设备为可直接建立连接的设备时,由直连采集模块连接网络设备;64.跳板机连接模块,待采集配置文件的网络设备为不能直接建立连接的设备时,则通过跳板机连接模块建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;65.采集调度中心,选择所需采集网络配置文件的网络设备清单文件,采集调度中心用于通过netmiko进行配置文件的数据拉取,采集网络配置文件,66.其中,基于跳板机连接模块到目标设备时会产生障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间,67.其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中,68.其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。69.本发明解决技术问题所采用的技术方案是:设计开发一个多进程多线程的配置文件调度采集平台,所有被采集的全部网络设备配置文件整合到一个平台包括:通过网络模块netmiko连接并获取网络设备配置文件内容,通过数据过滤、分析、整合最终写入数据库。70.对于可以直接建立连接的设备,直接通过netmiko(基于paramiko的二次封装)网络模块进行连接拉取配置文件数据;71.对不能直接建立连接,需要通过跳板机建立连接的目标设备,则通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接,在通过netmiko进行配置文件的数据拉取;72.无论是需要通过snat的方式做网络通道的预打通操作,还是直接可建立连接通道的,都统一配置到采集配置文件中,由采集平台统一全局的批次完成所有设备的配置文件采集拉取。73.根据本发明的又一方面,提供一种网络配置文件采集的设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。74.根据本发明还提供一种计算机存储介质。75.计算机存储介质上存储有网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。76.其中,在所述处理器上运行的网络配置文件采集程序被执行时所实现的方法可参照本发明网络配置文件采集方法各个实施例,此处不再赘述。77.本发明还提供一种计算机程序产品。78.本发明计算机程序产品包括网络配置文件采集程序,所述网络配置文件采集程序被处理器执行时实现如上所述的网络配置文件采集方法的步骤。79.其中,在所述处理器上运行的网络配置文件采集程序被执行时所实现的方法可参照本发明网络配置文件采集方法各个实施例,此处不再赘述。80.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。81.以上所述仅是本发明的示范性实施方式,而非用于限制本发明的保护范围,本发明的保护范围由所附的权利要求确定。当前第1页12当前第1页12
技术特征:
1.一种网络配置文件采集的方法,所述网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的方法包括如下步骤:s1、选择所需采集网络配置文件的网络设备清单文件;s2、连接所需采集网络配置文件的网络设备,判断所述网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过snat的方式打通采集终端至目标设备的网络连接;s3、通过netmiko进行配置文件的数据拉取,采集网络配置文件。2.如权利要求1所述的方法,其中,步骤s2中,基于跳板机连接到目标设备时会产生很多障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,所述跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间netns来实现,形成netns队列,通过ip域来隔离不同网络空间。3.如权利要求2所述的方法,其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。4.如权利要求3所述的方法,其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将所述命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。5.如权利要求4所述的方法,其中,步骤s3中,启动基于多进程多线程的调度程序,基于一定的时间间隔拉取采集设备清单,将含有跳板机的清单加入到netns队列中,反之,可直接建立连接的设备直接加入采集队列;基于python网络模块netmiko实现对不同厂商不同设备类型的网络设备的统一管理,包括建立连接、发送指令,其中,将采集设备清单队列中的设备采集任务加入到netmiko执行库中,进行最终的设备连接,获取配置文件的命令发送,文件内容返回,其中,采集失败的进入失败队列,采集成功的进入到文件内容版本比对环节,形成第一差异结果。6.如权利要求5所述的方法,其中,因网络情况或者其他原因造成的采集未成功的设备加入到重试队列,并基于一定规则执行一定周期的重试连接;当设备采集任务执行完之后,对当前批次的采集内容与上一批次的采集内容进行差异性比较,同时针对网络设备的startup配置文件和running配置文件也进行差异性比较,形成第二差异结果;将第一差异结果、第二差异结果和当前批次采集内容入库,包括采集成功或失败的状态标识也一起入库。7.如权利要求1所述的方法,还包括:开放api服务,将网络配置文件采集的结果展示到web页面,前端平台可通过api的方式提取配置文件采集内容,并进行可视化展示。8.一种网络配置文件采集的装置,所述网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络
设备清单文件,网络配置文件采集的装置包括:直连采集模块,待采集配置文件的网络设备为可直接建立连接的设备时,由所述直连采集模块连接所述网络设备;跳板机连接模块,待采集配置文件的网络设备为不能直接建立连接的设备时,则通过所述跳板机连接模块建立连接的目标设备,通过snat的方式打通采集终端至目标设备的网络连接;采集调度中心,选择所需采集网络配置文件的网络设备清单文件,所述采集调度中心用于通过netmiko进行配置文件的数据拉取,采集网络配置文件,其中,基于跳板机连接模块到目标设备时会产生障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,所述跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间netns来实现,形成netns队列,通过ip域来隔离不同网络空间,其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中,其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将所述命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。9.一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网络配置文件采集程序,所述网络配置文件采集程序被所述处理器执行时实现如权利要求1至7中任一项所述的网络配置文件采集方法的步骤。10.一种计算机存储介质,其中,所述计算机存储介质上存储有网络配置文件采集程序,所述网络配置文件采集程序被处理器执行时实现如权利要求1至7中任一项所述的网络配置文件采集方法的步骤。
技术总结
本发明涉及一种网络配置文件采集的方法、装置、电子设备及存储介质。网络配置文件采集方法包括步骤:S1、选择所需采集网络配置文件的网络设备清单文件;S2、连接所需采集网络配置文件的网络设备,判断网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过SNAT的方式打通采集终端至目标设备的网络连接;S3、通过Netmiko进行配置文件的数据拉取,采集网络配置文件。依据本发明的网络配置文件采集的方法,网络配置文件的采集备份时,可以保证数据的完全可靠,将直连和不能直连的网络设备统一操作,并可在线可视化比较当前备份版本和上一次备份版本的变更差异,做到对配置文件的变更更完善的把控,可一键回滚。可一键回滚。可一键回滚。
技术研发人员:魏镇南
受保护的技术使用者:上海衡翔网络科技有限公司
技术研发日:2023.05.25
技术公布日:2023/8/24
技术领域:
:,具体而言,涉及一种npm(networkperformancemonitor,网络性能监控器)网络配置文件采集的方法、装置、电子设备及存储介质。
背景技术:
::2.networkperformancemonitor(npm)是集网络监测、设备性能维护管理、故障监控、网络实时流量监控和历史数据统计、汇总和历史数据分析等功能于一体的网络管理系统。3.网络配置文件的采集备份是针对配置文件的一个版本的控制,便于后继控制版本。目前,在npm网络中,受维护的网络设备较多,存在不能直接建立连接的设备无法直接通过网络模块进行连接拉取配置文件数据;由于是多网络空间的场景,也就有可能造成不同客户下的网络设备有ip冲突的情况。对于网络设备配置需要处于一个稳定的状态,如果在网络设备上执行了错误或者未经认证的变更,就有可能导致不可预见的网络性能、可靠性和安全问题。4.因此,亟需一种能够实现安全可靠地进行网络配置文件采集的解决方案。技术实现要素:5.本发明要解决的技术问题是如何安全可靠地进行网络配置文件采集,包括不能直接建立连接的设备和网络设备间ip中途的情况,避免在网络设备上执行了错误或者未经认证的变更,导致不可预见的网络性能、可靠性和安全问题。6.为解决上述技术问题,根据本发明的一个方面,提供一种网络配置文件采集的方法,网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的方法包括如下步骤:s1、选择所需采集网络配置文件的网络设备清单文件;s2、连接所需采集网络配置文件的网络设备,判断网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;s3、通过netmiko进行配置文件的数据拉取,采集网络配置文件。7.根据本发明的实施例,步骤s2中,基于跳板机连接到目标设备时会产生很多障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,可通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间。8.根据本发明的实施例,划分ip域后,可逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。9.根据本发明的实施例,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,可将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。10.根据本发明的实施例,步骤s3中,启动基于多进程多线程的调度程序,基于一定的时间间隔拉取采集设备清单,可将含有跳板机的清单加入到netns队列中,反之,可直接建立连接的设备直接加入采集队列;基于python网络模块netmiko实现对不同厂商不同设备类型的网络设备的统一管理,包括建立连接、发送指令。其中,将采集设备清单队列中的设备采集任务加入到netmiko执行库中,进行最终的设备连接,获取配置文件的命令发送,文件内容返回。其中,采集失败的进入失败队列,采集成功的进入到文件内容版本比对环节,形成第一差异结果。11.根据本发明的实施例,因网络情况或者其他原因造成的采集未成功的设备可加入到重试队列,并可基于一定规则执行一定周期的重试连接;当设备采集任务执行完之后,对当前批次的采集内容与上一批次的采集内容进行差异性比较,同时针对网络设备的startup配置文件和running配置文件也进行差异性比较,形成第二差异结果;将第一差异结果、第二差异结果和当前批次采集内容入库,包括采集成功或失败的状态标识也一起入库。12.根据本发明的实施例,网络配置文件采集的方法还可包括:开放api服务,将网络配置文件采集的结果展示到web页面,前端平台可通过api的方式提取配置文件采集内容,并进行可视化展示。13.根据本发明的第二个方面,提供一种网络配置文件采集的装置,网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的装置包括:直连采集模块,待采集配置文件的网络设备为可直接建立连接的设备时,由直连采集模块连接网络设备;跳板机连接模块,待采集配置文件的网络设备为不能直接建立连接的设备时,则通过跳板机连接模块建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;采集调度中心,选择所需采集网络配置文件的网络设备清单文件,采集调度中心用于通过netmiko进行配置文件的数据拉取,采集网络配置文件。其中,基于跳板机连接模块到目标设备时会产生障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间。其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。14.根据本发明的第三个方面,提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。15.根据本发明的第四个方面,提供一种计算机存储介质,其中,计算机存储介质上存储有网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。16.与现有技术相比,本发明的实施例所提供的技术方案至少可实现如下有益效果:17.根据本发明的提供的技术方案,网络配置文件的采集备份时,备份的内容会存储到数据库中,可以保证数据的完全可靠,将直连和不能直连的网络设备统一操作,同时可以在线可视化比较当前备份版本和上一次备份版本的变更差异,做到对配置文件的变更更完善的把控,并且可以一键回滚到信任的版本。18.根据本发明的提供的技术方案,能够实现采集终端至目标网络设备之间的网络打通,实现正常的网络连接,发送相关指令输出对应的配置文件内容,将其写入数据库,从而实现网络设备配置文件的可视化全面变更监控。附图说明19.为了更清楚地说明本发明实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本发明的一些实施例,而非对本发明的限制。20.图1是示出根据本发明实施例的网络配置文件采集的装置示意图;21.图2是示出根据本发明实施例的网络配置文件采集的方法流程图。具体实施方式22.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其它实施例,都属于本发明保护的范围。23.除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。24.图1是示出根据本发明实施例的网络配置文件采集的装置示意图;图2是示出根据本发明实施例的网络配置文件采集的方法流程图。25.网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,如图1和图2所示,网络配置文件采集的方法包括如下步骤:26.s1、选择所需采集网络配置文件的网络设备清单文件;27.s2、连接所需采集网络配置文件的网络设备,判断网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;28.s3、通过netmiko进行配置文件的数据拉取,采集网络配置文件。29.根据本发明的一个或一些实施例,步骤s2中,基于跳板机连接到目标设备时会产生很多障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间。30.根据本发明的一个或一些实施例,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。31.实际实现步骤如下:32.1.创建特定虚拟ip,创建iptable,设置路由指向规则:33.iplinkaddv_i_ns_xxxtypevethpeernamev_0_ns_xxx34.iplinksetv_i_ns_xxxnetnsns_xxx35.iplinksetupdevv_0_ns_xxx36.ipnetnsexecns_xxxiplinksetupdevv_i_ns_xxx37.ipnetnsexecns_xxxipaddradd10.0.xxx.2/30devv_i_ns_xxx38.ipaddradd10.0.xxx.1/30devv_0_ns_xxx39.ipnetnsexecns_xxxiprouteadddefaultvia10.0.xxx.140.ipruleaddfrom10.0.xxx.0/30tablexxx(编号,数字整型,如:30)41.2.添加跳板机设备清单到指定的iptbale:42.iprouteadd10.241.xx.1via103.104.xxx.116tablexx43.iprouteadd10.241.xx.253via103.104.xxx.116tablexx44.iprouteadd10.231.xx.213via103.104.xxx.116tablexx45....46.iptables-tnat-apostrouting-s10.0.xxx.0/30-jmasquerade47.sysctl-wnet.ipv4.ip_forward=148.根据本发明的一个或一些实施例,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连,具体如下:49.ipnetnsexecns_cxxxssh-22admin@103.105.xxx.xxx。50.根据本发明的一个或一些实施例,步骤s3中,启动基于多进程多线程的调度程序,基于一定的时间间隔拉取采集设备清单,将含有跳板机的清单加入到netns队列中,反之,可直接建立连接的设备直接加入采集队列。51.如命令:52.含跳板机:ipnetnsexec'{0}'python3netconfig.py'{1}”{2}”{3}'...53.直接设备:python3netconfig.py'{0}”{1}”{2}”{3}”{4}'...54.基于python网络模块netmiko实现对不同厂商不同设备类型的网络设备的统一管理,包括建立连接、发送指令。55.其中,将采集设备清单队列中的设备采集任务加入到netmiko执行库中,进行最终的设备连接,获取配置文件的命令发送,文件内容返回。56.其中,采集失败的进入失败队列,采集成功的进入到文件内容版本比对环节,形成第一差异结果。57.根据本发明的一个或一些实施例,因网络情况或者其他原因造成的采集未成功的设备加入到重试队列,并基于一定规则执行一定周期的重试连接;当设备采集任务执行完之后,对当前批次的采集内容与上一批次的采集内容进行差异性比较,同时针对网络设备的startup配置文件和running配置文件也进行差异性比较,形成第二差异结果。将第一差异结果、第二差异结果和当前批次采集内容入库,包括采集成功或失败的状态标识也一起入库。58.根据本发明的一个或一些实施例,网络配置文件采集的方法还包括开放api服务。59.开放api服务用于将网络配置文件采集的结果展示到web页面,前端平台可通过api的方式提取配置文件采集内容,并进行可视化展示。60.根据本发明的提供的技术方案,网络配置文件的采集备份时,备份的内容会存储到数据库中,可以保证数据的完全可靠,将直连和不能直连的网络设备统一操作,同时可以在线可视化比较当前备份版本和上一次备份版本的变更差异,做到对配置文件的变更更完善的把控,并且可以一键回滚到信任的版本。61.根据本发明的提供的技术方案,能够实现采集终端至目标网络设备之间的网络打通,实现正常的网络连接,发送相关指令输出对应的配置文件内容,将其写入数据库,从而实现网络设备配置文件的可视化全面变更监控。62.根据本发明的第二个方面,提供一种网络配置文件采集的装置,网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的装置包括:63.直连采集模块,待采集配置文件的网络设备为可直接建立连接的设备时,由直连采集模块连接网络设备;64.跳板机连接模块,待采集配置文件的网络设备为不能直接建立连接的设备时,则通过跳板机连接模块建立连接的目标设备,通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接;65.采集调度中心,选择所需采集网络配置文件的网络设备清单文件,采集调度中心用于通过netmiko进行配置文件的数据拉取,采集网络配置文件,66.其中,基于跳板机连接模块到目标设备时会产生障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间(netns,networknamespace)来实现,形成netns队列,通过ip域来隔离不同网络空间,67.其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中,68.其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。69.本发明解决技术问题所采用的技术方案是:设计开发一个多进程多线程的配置文件调度采集平台,所有被采集的全部网络设备配置文件整合到一个平台包括:通过网络模块netmiko连接并获取网络设备配置文件内容,通过数据过滤、分析、整合最终写入数据库。70.对于可以直接建立连接的设备,直接通过netmiko(基于paramiko的二次封装)网络模块进行连接拉取配置文件数据;71.对不能直接建立连接,需要通过跳板机建立连接的目标设备,则通过snat(sourcenetworkaddresstranslation,源地址转换)的方式打通采集终端至目标设备的网络连接,在通过netmiko进行配置文件的数据拉取;72.无论是需要通过snat的方式做网络通道的预打通操作,还是直接可建立连接通道的,都统一配置到采集配置文件中,由采集平台统一全局的批次完成所有设备的配置文件采集拉取。73.根据本发明的又一方面,提供一种网络配置文件采集的设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。74.根据本发明还提供一种计算机存储介质。75.计算机存储介质上存储有网络配置文件采集程序,网络配置文件采集程序被处理器执行时实现上述的网络配置文件采集方法的步骤。76.其中,在所述处理器上运行的网络配置文件采集程序被执行时所实现的方法可参照本发明网络配置文件采集方法各个实施例,此处不再赘述。77.本发明还提供一种计算机程序产品。78.本发明计算机程序产品包括网络配置文件采集程序,所述网络配置文件采集程序被处理器执行时实现如上所述的网络配置文件采集方法的步骤。79.其中,在所述处理器上运行的网络配置文件采集程序被执行时所实现的方法可参照本发明网络配置文件采集方法各个实施例,此处不再赘述。80.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。81.以上所述仅是本发明的示范性实施方式,而非用于限制本发明的保护范围,本发明的保护范围由所附的权利要求确定。当前第1页12当前第1页12
技术特征:
1.一种网络配置文件采集的方法,所述网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络设备清单文件,网络配置文件采集的方法包括如下步骤:s1、选择所需采集网络配置文件的网络设备清单文件;s2、连接所需采集网络配置文件的网络设备,判断所述网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过snat的方式打通采集终端至目标设备的网络连接;s3、通过netmiko进行配置文件的数据拉取,采集网络配置文件。2.如权利要求1所述的方法,其中,步骤s2中,基于跳板机连接到目标设备时会产生很多障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,所述跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间netns来实现,形成netns队列,通过ip域来隔离不同网络空间。3.如权利要求2所述的方法,其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中。4.如权利要求3所述的方法,其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将所述命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。5.如权利要求4所述的方法,其中,步骤s3中,启动基于多进程多线程的调度程序,基于一定的时间间隔拉取采集设备清单,将含有跳板机的清单加入到netns队列中,反之,可直接建立连接的设备直接加入采集队列;基于python网络模块netmiko实现对不同厂商不同设备类型的网络设备的统一管理,包括建立连接、发送指令,其中,将采集设备清单队列中的设备采集任务加入到netmiko执行库中,进行最终的设备连接,获取配置文件的命令发送,文件内容返回,其中,采集失败的进入失败队列,采集成功的进入到文件内容版本比对环节,形成第一差异结果。6.如权利要求5所述的方法,其中,因网络情况或者其他原因造成的采集未成功的设备加入到重试队列,并基于一定规则执行一定周期的重试连接;当设备采集任务执行完之后,对当前批次的采集内容与上一批次的采集内容进行差异性比较,同时针对网络设备的startup配置文件和running配置文件也进行差异性比较,形成第二差异结果;将第一差异结果、第二差异结果和当前批次采集内容入库,包括采集成功或失败的状态标识也一起入库。7.如权利要求1所述的方法,还包括:开放api服务,将网络配置文件采集的结果展示到web页面,前端平台可通过api的方式提取配置文件采集内容,并进行可视化展示。8.一种网络配置文件采集的装置,所述网络配置文件为npm网络中设备的配置文件,npm统一后台管理系统的资产管理具有所有设备清单,用户可选择性下载所需采集的网络
设备清单文件,网络配置文件采集的装置包括:直连采集模块,待采集配置文件的网络设备为可直接建立连接的设备时,由所述直连采集模块连接所述网络设备;跳板机连接模块,待采集配置文件的网络设备为不能直接建立连接的设备时,则通过所述跳板机连接模块建立连接的目标设备,通过snat的方式打通采集终端至目标设备的网络连接;采集调度中心,选择所需采集网络配置文件的网络设备清单文件,所述采集调度中心用于通过netmiko进行配置文件的数据拉取,采集网络配置文件,其中,基于跳板机连接模块到目标设备时会产生障碍,由于是多网络空间的场景,会出现不同客户下的网络设备有ip冲突的情况,通过以跳板机为基点的方式来划分ip域,其中,所述跳板机为多个,以跳板机为基点划分ip域的实现方式通过网络命名空间netns来实现,形成netns队列,通过ip域来隔离不同网络空间,其中,划分ip域后,逐步为每个跳板机创建iptable,设置特定ip路由规则,定义一个虚拟ip指向iptable,并为该iptable设置编号,然后将该跳板机下设备清单添加到该iptable中,其中,创建虚拟ip、iptable和设置路由规则、添加跳板机设备清单到指定的iptbale通过命令来实现,将所述命令放入采集服务器中全部执行,然后再做采集服务器与指定代理机的路由打通,实现采集服务器与指定iptable中目标机的直连。9.一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网络配置文件采集程序,所述网络配置文件采集程序被所述处理器执行时实现如权利要求1至7中任一项所述的网络配置文件采集方法的步骤。10.一种计算机存储介质,其中,所述计算机存储介质上存储有网络配置文件采集程序,所述网络配置文件采集程序被处理器执行时实现如权利要求1至7中任一项所述的网络配置文件采集方法的步骤。
技术总结
本发明涉及一种网络配置文件采集的方法、装置、电子设备及存储介质。网络配置文件采集方法包括步骤:S1、选择所需采集网络配置文件的网络设备清单文件;S2、连接所需采集网络配置文件的网络设备,判断网络设备是否为可直接建立连接的设备;如果不能直接建立连接,则通过跳板机建立连接的目标设备,通过SNAT的方式打通采集终端至目标设备的网络连接;S3、通过Netmiko进行配置文件的数据拉取,采集网络配置文件。依据本发明的网络配置文件采集的方法,网络配置文件的采集备份时,可以保证数据的完全可靠,将直连和不能直连的网络设备统一操作,并可在线可视化比较当前备份版本和上一次备份版本的变更差异,做到对配置文件的变更更完善的把控,可一键回滚。可一键回滚。可一键回滚。
技术研发人员:魏镇南
受保护的技术使用者:上海衡翔网络科技有限公司
技术研发日:2023.05.25
技术公布日:2023/8/24
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种透气型墙布及制备方法与流程 下一篇:一种节能气动管井井点降水装置的制作方法