python netsnmp_python net-snmp使用

安装

环境:CentOS 6.6 + python 2.7.10

1、下载安装包 net-snmp-5.6.2.1.tar.gz,并编译安装

tar -xvf net-snmp-5.6.2.1.tar.gz

cd net-snmp-5.6.2.1

/configure --with-python-modules --prefix=/usr/local/net-snmp --enable-developer --libdir=/usr/lib64 --enable-shared

make

make install

2、安装netsnmp python库

cd net-snmp-5.6.2.1/python

python setup.py install

3、测试

import netsnmp

snmpwalk

snmpwalk是SNMP的一个工具,它使用SNMP的GETNEXT请求查询指定OID(SNMP协议中的对象标识)入口的所有OID树信息,并显示给用户。通过snmpwalk也可以查看支持SNMP协议(可网管)的设备的一些其他信息,比如cisco交换机或路由器IP地址、内存使用率等,也可用来协助开发SNMP功能。

snmpwalk没有单独的安装包,它被包含在net-snmp软件包中的,所以我们只需要安装net-snmp软件包就可以得到snmpwalk。

snmpwalk使用方法:

snmpwalk -v 1或2c(代表SNMP版本) -c SNMP密码 IP地址 OID(对象标示符)

–v:指定snmp的版本, 1或者2,该参数必须有。

–c:指定连接设备SNMP读密码,该参数必须有。

IP:指定要walk的设备的IP地址,该参数必须有。

OID:代表要获取设备的指标oid,该参数不是必须的。

重要参数介绍:

–h:显示帮助。

–v:指定snmp的版本, 1或者2c或者3。

–c:指定连接设备SNMP密码。

–V:显示当前snmpwalk命令行版本。

–r:指定重试次数,默认为0次。

–t:指定每次请求的等待超时时间,单为秒,默认为3秒。

–l:指定安全级别:noAuthNoPriv|authNoPriv|authPriv。

–a:验证协议:MD5|SHA。只有-l指定为authNoPriv或authPriv时才需要。

–A:验证字符串。只有-l指定为authNoPriv或authPriv时才需要。

–x:加密协议:DES。只有-l指定为authPriv时才需要。

–X:加密字符串。只有-l指定为authPriv时才需要。

MIB Browser

iReasoning MIB浏览器是一个强大和易于使用的工具由iReasoning SNMP API提供支持。 MIB浏览器是工程师管理启用SNMP的网络设备和应用程序不可或缺的工具。 它允许用户加载标准的,专有的MIB,甚至一些错误的MIB。 它还允许它们发出SNMP请求以检索代理的数据,或对代理进行更改。 内置陷阱接收器可以根据其规则引擎接收和处理SNMP陷阱。

安装后界面

可以通过官网下载MIB库文件,导入ireasoning\mibbrowser\mibs目录下,通过MIB Browser可以查看设备的私有OID

如何获取Cisco设备OID值

1、通过交换机执行命令获取IOS名称,如下图标红的内容

2、官网页面查询

3、点击search后弹出新页面,列出这个IOS所有可用的MIB库,如下图

4、选择自己需要的MIB库,如CISCO环境监视器MIB文件,名称是CISCO-ENVMON-MIB,点击V2

我需要查看设备的温度值,找到具体的OBJECT-TYPE,如下图的 ciscoEnvMonTemperatureStatusTable

5、根据ciscoEnvMonTemperatureStatusTable 去官网查询它的OID

6、根据查询的OID,通过snmpwalk命令进行获取

7、cpu信息获取

下表显示他们替换的新的MIB和他们的对象在旧有MIB旁边和对象:

# sysDescr CSICO-3560 系统信息

# ifNumber CSICO-3560 接口总数

# ifTable CSICO-3560 接口详细信息

# .1.3.6.1.4.1.9.9.13.1.3.1.3 CSICO-3560 温度

# .1.3.6.1.4.1.9.9.13.1.4.1.3 CSICO-3560 风扇状态

# .1.3.6.1.4.1.9.9.13.1.5.1.3 CSICO-3560 电源状态

# 1.3.6.1.4.1.9.9.48.1.1.1.1 CSICO-3560内存池名称,有多个,如Processor、I/O、Driver

# 1.3.6.1.4.1.9.9.48.1.1.1.5 CSICO-3560内存池使用

# 1.3.6.1.4.1.9.9.48.1.1.1.6 CSICO-3560内存池空闲,内存池总大小=使用+空闲

华为MIB库

python代码实现获取snmp信息

# -*- coding: utf-8 -*-

import netsnmp

class SnmpClass(object):

"""

SNMP

"""

def __init__(self, oid="sysDescr", version=1, destHost="localhost", community="public"):

self.oid = oid

self.version = version

self.destHost = destHost

self.community = community

@property

def query(self):

"""

snmpwalk

"""

try:

result = netsnmp.snmpwalk(self.oid,

Version=self.version,

DestHost=self.destHost,

Community=self.community)

except Exception, err:

print err

result = None

return result

def main():

test_obj = SnmpClass(oid="ifIndex", destHost="192.168.137.11")

print test_obj.query

if __name__ == '__main__':

main()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/410072.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

request用法_虚拟语气用法总结

虚拟语气主要指的的是带有非真实条件状语从句的复合句,表达的是说话人的遗憾后悔的语气,愿望以及建议,命令,要求等等的情感,往往说的是与事实相反或者没办法实现改变的东西。虚拟语气主要表现为在对过去现在或者将来的…

成为高效程序员的几大搜索技巧

对于缺乏编程知识的人来说,完全有可能编写一个网页或小程序。如果在用Google搜索相关示例时幸运的话,可以搜到现成的代码。即使是经验丰富的程序员,通常也会为了节省时间和精力而在网上搜索解决方案。 如果不借助搜索技术、网络及集体智慧&am…

[html] 实现九宫格布局

[html] 实现九宫格布局 <style>.container::after{content: "";display: block;clear: both;}.box{float: left;width: 32%;padding-bottom: 32%;background-color: red;margin-bottom: 1%;}.box:not(:nth-child(3n)){margin-right: 1%;}</style><div…

Nginx的应用之虚拟主机

开始前请确保selinux关闭&#xff0c;否则当配置完虚拟主机后&#xff0c;尽管权限或者网站目录都正确&#xff0c;访问的结果也是403 nginx的虚拟主机有三种方式&#xff1a; 一、基于域名的虚拟主机 &#xff08;1&#xff09;创建对应的web站点目录以及程序代码 [rootweb01 …

flink运行原理_Flink运行架构剖析

本文主要介绍 Flink Runtime 的作业执行的核心机制。首先介绍 Flink Runtime 的整体架构以及 Job 的基本执行流程&#xff0c;然后介绍Flink 的Standalone运行架构&#xff0c;最后对Flink on YARN的两种模式进行了详细剖析。Flink Runtime作业执行流程分析整体架构图Flink Run…

vb 获取系统声音的电平_质量好的背景音乐系统套装效果图

笔者是主张低阶设计的&#xff0c;但不一定是越低阶越好&#xff0c;前面已经讲过是以分而治之的手段&#xff0c;达致阴阳融合之目的。分而治之就是把高低音单元的互相不协调的部分和缺点去掉&#xff0c;保留各自的优点&#xff0c;以达到互补融合之目的。有扩声系统中才存在…

[html] 说说你对这几个概念的理解:层叠上下文、层叠等级、层叠顺序

[html] 说说你对这几个概念的理解&#xff1a;层叠上下文、层叠等级、层叠顺序 层叠上下文(stacking context)&#xff0c;是HTML中一个三维的概念。在CSS2.1规范中&#xff0c;每个盒模型的位置是三维的&#xff0c;分别是平面画布上的X轴&#xff0c;Y轴以及表示层叠的Z轴。如…

随手一记

1.在WinForm读取数据的时候经常会用到DataTable&#xff0c;而对读取的数据我们有时只想显示其中符合某些条件的数据&#xff0c;这个时候就可以使用DataTable的Select操作&#xff0c;dataTable.Select(”检查结果‘“result”’“)&#xff0c;其中检查结果是DataTable的Colu…

vue初级尝试

为了跟上前端后台化的潮流&#xff0c;本少不得不开始关注vue&#xff0c;下列上机代码是针对App.vue进行的更改 数据渲染----一般键值对&#xff0c;数组&#xff0c;对象和对象数组<template><div id"app"><img><h1>{{msg}}</h1><…

钉钉产品介绍_钉钉正式推出智能OA:免费开放、一站解决“人财物事”管理难题...

9月2日消息&#xff0c;阿里钉钉今日正式上线智能OA产品“OA审批”&#xff0c;通过开放工作流、审批流引擎&#xff0c;向中小企业提供场景全面、定制简易、操作门槛低的OA协同服务&#xff0c;实现企业管理流程、业务流程的全链路数字化&#xff0c;一站解决人财物事管理难题…

同方知网软件_国产精品软件天若OCR:支持图像识别/自动翻译/公式识别等

日常生活中有时候我们会遇到某些文件以截图方式发送的 , 想要提取其中的文字内容进行整理就需要靠识别。毕竟如果内容较多的话靠手打可能是个费时费力的事情&#xff0c;OCR识别方面的软件很多但是多数软件都是收费的。在收费软件里自然也有价格便宜和价格比较高的&#xff0c;…

[html] div等元素如何阻止点击穿透和实现点击穿透?

[html] div等元素如何阻止点击穿透和实现点击穿透&#xff1f; pointer-events: none; 允许点击穿透 阻止穿透 在js的点击事件里面添加这句话&#xff0c;阻止冒泡 event.stopPropagation();个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff…

第三天了

今天好累&#xff0c;但收获多多&#xff0c;满足。 2012.2.23图层和蒙版层的类型&#xff1a;图层&#xff0c;智能图层【一个文档里嵌入一个文档&#xff0c;双击图层后形成一个新的文档】&#xff0c;调节层&#xff1b;背景层<-->图层&#xff1a;按ALT双击背景层--&…

n维椭球体积公式_物质的量浓度公式如何应用

我们常用到的物理量一般有长度、时间、速度等等&#xff0c;物质的量也和这些概念一样&#xff0c;是一个物理量的整体名词&#xff0c;今天小编就为大家介绍一下什么是物质的量&#xff0c;物质的量的浓度公式是什么。1、国际单位制7个物理量长度(单位&#xff1a;m)、质量(单…

利用vue v-bind属性绑定bootstrap样式以及输出数据

自从知道了bootstrap&#xff0c;就被他简介&#xff0c;大气美观的样式吸引&#xff0c;即使在vue框架中&#xff0c;仍旧想使用&#xff0c;下面给出了vue适配版和原版的代码&#xff0c;以飨读者 数据输出部分export default {data(){return {pagestyle:https://v4.bootcss…

[html] 浏览器的默认字体大小是多少?怎么设计它的基准?

[html] 浏览器的默认字体大小是多少&#xff1f;怎么设计它的基准&#xff1f; 多数浏览器的默认字体大小均为16px。可设置CSS的font-size改变字体大小。 <style> html,body{ font-size: 16px; } </style> 也可设置font-size:62.5%&#xff0c;使得1rem 10px来约…

python中urframe函数的用法_python类中的内置函数

__init__():__init__方法在类的一个对象被建立时&#xff0c;马上运行。这个方法可以用来对你的对象做一些你希望的初始化。注意&#xff0c;这个名称的开始和结尾都是双下划线。代码例子:#!/usr/bin/python# Filename: class_init.pyclass Person:def __init__(self, name):se…

Hadoop中RPC机制

Hadoop中RPC机制 RPC(Remote Procedure Call Protocol)远程过程调用协议&#xff0c;它是一种通过网络从远程计算机程序上请求服务&#xff0c;而不需要了解底层网络技术的协议。Hadoop底层的交互都是通过rpc进行的。例如&#xff1a;datanode和namenode 、tasktracker和jobtra…

C++中如何读取一个数的位数_求1000以内的水仙花数

点击上方 蓝字关注我们大家好&#xff0c;我是阿汤哥。看知乎上有朋友说还不明白怎么判断水仙花数&#xff0c;今天我们就来看看这个问题。(PS&#xff1a;“求1000以内的水仙花数”这道题阿汤哥记忆犹新。到现在还记得这是我大一上学期期末考试的编程题。)怎么求水仙花数&…

[html] link标签的属性media有哪些值?都有什么作用?

[html] link标签的属性media有哪些值&#xff1f;都有什么作用&#xff1f; 根据w3c的介绍&#xff0c;media属性表示link的链接文档会应用于何种媒介&#xff08;设备&#xff09;上。用于为不同的媒介类型规定不同的样式。常用的值为screen(计算机屏幕&#xff0c;默认), pr…