0x00 简介

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

在日常监控中,经常会用到snmp服务,而snmpwalk命令则是采集系统各种信息最有效的方法。

0x01 Linux安装过程

在linux下使用snmpwalk工具,我们必须要安装net-snmp-utils这个软件包。

注意:如果linux只安装net-snmp的话,则不包含snmpwalk工具,如下:

yum -y install net-snmp-utils
snmpwalk -h
sudo apt-get install snmpd
sudo apt-get install snmp
service snmpd start

为了获取所有的数据,修/etc/snmp/snmpd.conf,添加最后一行

view systemonly included .1.3.6.1.2.1.
view systemonly included .1.3.6.1.2.1.25.1
view systemonly included .
service snmpd restart 

使用下面命令测试

snmpwalk -help

如果显示帮助信息,则安装成功。

检查上面列出的安装包是否已经安装

rpm -qa | grep snmp

检查

net-snmp-5.3.2.2-.el5.x86_64.rpm
net-snmp-devel-5.3.2.2-.el5.x86_64.rpm (非必须安装包)
net-snmp-libs-5.3.2.2-.el5.x86_64.rpm
net-snmp-utils-5.3.2.2-.el5.x86_64.rpm

四个包是否安装,用同样的方式检查其他安装包是否安装。

如果已经安装,为了保持安装的rpm包的一致性,建议删除已经安装的包,

删除命令为rpm -e --nodeps rpm包名

--nodeps表示忽略依赖。

0x02 Windows安装过程

windows下安装net-snmp,我们可以去net-snmp官网进行下载。现在我们安装的是net-snmp-5.6.1.1-1.x86.exe这个软件包。如下:

安装以上rpm包,注意以上包是有安装顺序的

从上往下依次执行:

 rpm -ivh net-snmp-libs-5.3.2.2-.el5.x86_64.rpm
rpm -ivh lm_sensors-2.10.-.el5.x86_64.rpm
rpm -ivh net-snmp-utils-5.3.2.2-.el5.x86_64.rpm
rpm -ivh libsensors3-2.10.-.el5.x86_64.rpm
rpm -ivh net-snmp-5.3.2.2-.el5.x86_64.rpm

启动snmpd服务

service snmpd start

检查snmp是否启动成功

snmpwalk -help

如果显示帮助信息,则安装成功。

0x03 工具使用介绍

snmpwalk的参数比较多,但是我们比较常用的就只有-v和-c参数。如下:

–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时才需要。

现总结一些常用的方法如下:

snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.25.1    #得到取得windows端的系统进程用户数等

其中-v是指版本,-c 是指密钥,也就是客户端snmp.conf里面所设置的,下面类同.

snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.25.2.2   #取得系统总内存
snmpwalk -v 2c -c public 10.1.1.1 hrSystemNumUsers #取得系统用户数(注意:hrSystemNumUsers与.1.3.6.1.2.1.25.1.5是等效的)
snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.4.20 #取得IP信息
snmpwalk -v 2c -c public 10.1.1.1 system #查看系统信息
snmpwalk -v 2c -c public 10.1.1.1 ifDescr #获取网卡信息

snmpwalk使用方法很简单,如下:

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

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

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

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

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

以上只是一些常用的信息,snmpwalk功能很多,可以获取系统各种信息,只要更改后面的信息类型即可.如果不知道什么类型,也可以不指定,这样所有系统信息都获取到:

snmpwalk -v 2c -c public 10.1.1.1

参考

SNMP学习笔记之SNMPWALK 安装与使用详解的更多相关文章

  1. 学习笔记--Grunt、安装、图文详解

    学习笔记--Git安装.图文详解 安装Git成功后,现在安装Gruntjs,官网:http://gruntjs.com/ 一.安装node 参考node.js 安装.图文详解 (最新的node会自动安 ...

  2. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

  3. (转)live555学习笔记10-h264 RTP传输详解(2)

    参考: 1,live555学习笔记10-h264 RTP传输详解(2) http://blog.csdn.net/niu_gao/article/details/6936108 2,H264 sps ...

  4. 【官方文档】Nginx模块Nginx-Rtmp-Module学习笔记(一) RTMP 命令详解

    源码地址:https://github.com/Tinywan/PHP_Experience 说明: rtmp的延迟主要取决于播放器设置,但流式传输软件,流的比特率和网络速度(以及响应时间“ping” ...

  5. SNMP学习笔记之SNMPWALK 命令

    SNMPWALK是一个通过SNMP GET-NEXT类型PDU,实现对目标AGENT的某指定MIB分支信息进行完整提取输出的命令工作. 命令行: snmpwalk [选项] agent [oid] 选 ...

  6. snmpwalk 安装与使用详解-windows下

    snmpwalk是SNMP的一个工具,它使用SNMP的GETNEXT请求查询指定OID(SNMP协议中的对象标识)入口的所有OID树信息,并显示给用户.通过snmpwalk也可以查看支持SNMP协议( ...

  7. JQuery学习笔记系列(一)----选择器详解

    笔者好长时间没有更新过博客园的笔记了,一部分原因是去年刚刚开始工作一段时间忙碌的加班,体会了一种每天加班到凌晨的充实感,之后闲暇时间了也因为自己懒惰没有坚持记笔记的习惯,现在重新拾起来. 借用古人的一 ...

  8. Node 之 Express 学习笔记 第二篇 Express 4x 骨架详解

    周末,没事就来公司加班继续研究一下Express ,这也许也是单身狗的生活吧. 1.目录结构: bin, 存放启动项目的脚本文件 node_modules, 项目所有依赖的库,以及存放 package ...

  9. 【Java学习笔记之三十四】超详解Java多线程基础

    前言 多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学习之旅吧. 正文 线程与进程 1 线程:进程中负责程序执行的 ...

随机推荐

  1. c++中inline函数的意义

    inline C++关键字,在函数声明或定义中函数返回类型前加上关键字inline,即可以把函数指定为内联函数.关键字inline必须与函数定义放在一起才能使函数成为内联,仅仅将inline放在函数声 ...

  2. AudioUnit录音并同步播放时遇到的问题

    AudioComponentDescription desc; desc.componentType =kAudioUnitType_Output; desc.componentSubType = k ...

  3. OKEX API(Websocket)

    本文介绍OKEX API Websocket WebSocket API for SPOT 开始使用 WebSocket是HTML5一种新的协议(Protocol).它实现了客户端与服务器全双工通信, ...

  4. 分块学习笔记qwq

    我没想到居然就学到分块了...哇我还一直觉得分块听起来挺牛逼的一直想学的来着qwq(其实之前好像vjudge上有道题是用分块做的?等下放链接qwq 所以想着就写个学习笔记趴qwq 首先知道分块的时间复 ...

  5. 基础邮件原理(MUA,MTA,MDA)

    电子邮件基本概念: MUA(Mail User Agent)接收邮件所使用的邮件客户端,使用IMAP或POP3协议与服务器通信: MTA(Mail Transfer Agent) 通过SMTP协议发送 ...

  6. druid.io本地集群搭建 / 扩展集群搭建

    druid.io 是一个比较重型的数据库查询系统,分为5种节点 . 在此就不对数据库进行介绍了,如果有疑问请参考白皮书: http://pan.baidu.com/s/1eSFlIJS 单台机器的集群 ...

  7. MySQL · 功能分析 · 5.6 并行复制实现分析

    背景 我们知道MySQL的主备同步是通过binlog在备库重放进行的,IO线程把主库binlog拉过去存入relaylog,然后SQL线程重放 relaylog 中的event,然而这种模式有一个问题 ...

  8. SVN: is scheduled for addition, but is missing

    删除文件夹后点commit提交,但是报错,报错内容如下:提示 "svn: Commit failed (details follow): svn: '/***/xxx.c' is sched ...

  9. python对象反射和函数反射

    python的对象反射功能,经常在编程时使用.相比较其它的编程语言使用非常方便.反射就是用字符串来操作对象或者类,模块中的成员. 一.对象的反射 反射功能的实现,由这4个内置函数来实现(hasattr ...

  10. 深入理解Fabric环境搭建的详细过程(转)

    前面的准备工作我就不用多说了,也就是各种软件和开发环境的安装,安装好以后,我们git clone下来最新的代码,并切换到v1.0.0,并且下载好我们需要使用的docker镜像,也就是到步骤6,接下来我 ...