SNMP系统描述分析器。

sysdescrparser的Python项目详细描述


sysdescparser是网络运营商的实用工具。 此模块分析SNMP系统描述(OID:1.3.6.1.2.1.1.1.1)。

最新的ip设备实现了有用的api。 但是,每个供应商的连接方法不同。 如果是多供应商环境, 我们必须检查每个目标节点的信息,如供应商名称和操作系统名称。 我认为snmp sysdescr的检查作为预过滤的统一方法是非常有效的。 此模块将尽可能使用供应商名称、型号名称、操作系统名称和操作系统版本来解析sysdescr值。 但是,sysdescr是自由格式。 它不能保证这些信息总是存在。未知值,指定未知值。 如果您需要处理本模块不支持的设备, 然后请将sysdescr值发送给此包作者。 或者,请使用github pull请求等功能联系。

https://secure.travis-ci.org/mtoshi/sysdescrparser.svg?branch=masterhttps://coveralls.io/repos/mtoshi/sysdescrparser/badge.svg?branch=masterLatest Version

要求

  • Python2.7,3.5,3.6,3.7,Python。

仪器

  • Pypi或Github。

    $ pip install sysdescrpaser
    
    or
    
    $ git clone https://github.com/mtoshi/sysdescrparser
    $ cd sysdescrparser
    $ sudo python setup.py install
    

使用示例

  • juniper junos sysdescr的示例

    >>> from sysdescrparser import sysdescrparser
    >>> sysdescr = sysdescrparser('Juniper Networks, Inc. ex2200-48t-4g internet router, kernel JUNOS 10.2R1.8 #0: 2010-05-27 20:13:49 UTC')
    >>> sysdescr.vendor
    'JUNIPER'
    >>> sysdescr.model
    'ex2200-48t-4g'
    >>> sysdescr.os
    'JUNOS'
    >>> sysdescr.version
    '10.2R1.8'
    
  • cisco ciscoios sysdescr的示例

    >>> sysdescr = sysdescrparser('Cisco IOS Software, c7600s72033_rp Software (c7600s72033_rp-ADVIPSERVICESK9-M), Version 12.2(33)SRC5, RELEASE SOFTWARE (fc2)')
    >>> sysdescr.vendor
    'CISCO'
    >>> sysdescr.model
    'c7600s72033_rp-ADVIPSERVICESK9-M'
    >>> sysdescr.os
    'IOS'
    >>> sysdescr.version
    '12.2(33)SRC5'
    
  • Brocade VDX sysdescr的示例

    >>> sysdescr = sysdescrparser('Brocade VDX Switch.')
    >>> sysdescr.vendor
    'BROCADE'
    >>> sysdescr.model
    'VDX'
    >>> sysdescr.os
    'NOS'
    >>> sysdescr.version
    'UNKNOWN'
    

解析逻辑并支持供应商和操作系统

  • 关于解析逻辑以及对供应商和操作系统的支持。

    当然,您可以看到这个python代码,也可以从示例数据中看到它是如何轻松工作的。 https://github.com/mtoshi/sysdescrparser/blob/master/samples/sample_data.json 它几乎可以理解。 (有时,使用硬代码。以及使用未知值。) 代码测试也直接使用此示例数据。

  • 关于未覆盖的供应商和操作系统。

    如果您需要处理此模块不支持的设备, 然后请将sysdescr值发送给此包作者。 或者,请使用github pull请求等功能联系。

  • 如果您已经启用了snmp守护进程,那么您可以使用下面的命令获取sysdescr值。

    % snmpwalk -Os -v 2c -c your_community_string localhost 1.3.6.1.2.1.1.1
    sysDescr.0 = STRING: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    
    % snmpget -Os -v 2c -c your_community_string localhost 1.3.6.1.2.1.1.1.0
    sysDescr.0 = STRING: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java有可能让Glassfish JAAS领域与一个已安装的应用程序共享一些类吗?   卸载weblogic时发生java log4j错误   java如何读取信息并将这些信息放入对象数组中   java线程池执行器。创建新线程时执行(Runnable命令)   java无法将project facet动态Web模块的版本更改为2.5   未添加到ArrayList Java Android的元素   javajavax。xml。绑定UnmarshaleException:意外元素(uri:,local:“ProcessCreditApplication”)。预期的元素是   java如何通过youtube API获取已删除视频的列表   如何在JavaBean验证中停止级联   java为什么我的ListView使我的应用程序崩溃,而不是列出我的条目?   java Guice多数据库自动切换   java(JDA)Mute命令在代码的第四行中断   推荐一种可通过Java中的随机访问进行更新的索引文件格式   java将arrayList添加到2x2 arrayList   java json对象数据发生变化,有时没有值   java使用Jedis库在redis中一次存储字符串列表   java快速排序分区   java setDaemon(false)是冗余的吗?   Java中的itext格式pdf