SNMP 诊断方法

本文涉及的产品
云防火墙,500元 1000GB
简介:

SNMP 诊断方法

已有超过4000台服务器在使用监控宝的SNMP性能监控,为了帮助大家更加方便的诊断服务器SNMP开启状况,我们编写了SNMP诊断教程。

服务器本机SNMP诊断

首先建议您在服务器本机测试SNMP服务是否正常,我们根据不同操作系统来分别详细介绍。

Linux SNMP

如果您的服务器操作系统是 Linux 系统,请首先按照我们的指引正确安装SNMP代理程序。可以参考:

在Linux服务器上开启SNMP

接下来,您可以通过SSH登录到服务器上,通过SNMP自带的命令行工具来测试是否可以本地获取SNMP数据。在示例中我们假设SNMP安装路径为 /usr/local/snmp,均采用默认的161 UDP端口。

如果您在SNMP中采用的是v2c验证方式,并且community字符串假设为“public”,那么测试方法为:

$ /usr/local/snmp/bin/snmpwalk -v 2c -c public 127.0.0.1:161 sysDescr

如果您的SNMP中采用的v3验证方式,用户名为“user”,密码为“pass”,加密方式为“MD5”,那么测试方法为:

$ /usr/local/snmp/bin/snmpwalk -v 3 -l authNoPriv -a MD5 -u user -A pass 127.0.0.1:161 sysDescr

在命令行输入这些语句后,如果服务器SNMP正常开启的话,您应该可以获得以下类似的反馈:

$ SNMPv2-MIB::sysDescr.0 = STRING: Linux host1 2.6.27.19-5-default #1 SMP 2009-02-28 04:40:21 +0100 x86_64

如果本机测试中无法获得类似的正确反馈,则说明SNMP安装或者设置存在问题,您可以参考随后的错误信息分析。

Windows SNMP

如果您的服务器操作系统是 Windows 系统,请首先按照我们的指引正确安装SNMP服务。可以参考:

在Windows服务器上开启SNMP服务

接下来您可以远程连接到Windows服务器上,开始测试本机的SNMP服务是否正常开启,这里我们需要下载SNMP的测试工具。

访问以下地址: http://www.elifulkerson.com/articles/net-snmp-windows-binary-unofficial.php

下载以下两个文件:

http://www.elifulkerson.com/projects/downloads/net-snmp-5.4-win32-unofficial/mibs.zip
http://www.elifulkerson.com/projects/downloads/net-snmp-5.4-win32-unofficial/snmpwalk.exe

其中 mibs.zip 解压缩后得到:

  • COPYING 版权文件
  • mibs 包含一系列 .txt 后缀的MIB文件

接下来新建一个测试目录,比如 c:\snmptest,把前面得到的 snmpwalk.exe 文件和 mibs 子目录都拷贝到该目录下,最终的目录结构如下:

c:\snmptest
     |-- snmpwalk.exe
     |-- mibs

然后通过“运行”菜单输入“cmd”,打开命令行窗口,并切换到测试目录。DOS命令如下:

cd c:\snmptest

现在就可以开始测试了。如果您在SNMP中采用的是v2c验证方式,并且community字符串假设为“public”,那么测试方法为:

snmpwalk.exe -M mibs -v 2c -c public 127.0.0.1:161 sysDescr

如果您的SNMP中采用的v3验证方式,用户名为“user”,密码为“pass”,加密方式为“MD5”,那么测试方法为:

snmpwalk.exe -M mibs -v 3 -l authNoPriv -a MD5 -u user -A pass 127.0.0.1:161 sysDescr

在命令行输入这些语句后,如果服务器SNMP服务正常工作的话,您应该可以获得以下类似的反馈:

SNMPv2-MIB::sysDescr.0 = STRING: Hardware: x86 Family 6 Model 23 Stepping 10 AT/AT COMPATIBLE - Software: Windows 2000 Version 5.1 (Build 2600 Multiprocessor Free)

如果本机测试中无法获得类似的正确反馈,则说明SNMP安装或者设置存在问题,您可以参考随后的错误信息分析。

远程SNMP诊断

当本机SNMP测试通过后,则说明服务器的SNMP已经开始正常工作,如果还是无法通过监控宝获取SNMP数据,那么可能是防火墙、IP授权或者其它网络原因,为此我们推出了远程SNMP诊断工具,它通过SNMP采集点服务器上的snmpwalk远程请求您的服务器SNMP服务,进一步您了解更多信息。

SNMP远程诊断工具

常见错误信息分析

 

Timeout: No Response from X.X.X.X

通常使用SNMP协议版本v2c时会遇到这类错误,可能的原因有:

  • community字符串填写错误?请仔细核对 -c 参数后的值,比如是不是1和l、0和O写混了,大小写弄错了等。
  • IP地址访问不到?您可以使用 ping, traceroute/tracert 测试该IP。
  • 端口访问不到? 您可以 netstat 查看该端口是否正常监听, Linux下 ps 查看 snmpd 进程是否运行, windows 下看服务是否开启
  • 防火墙没有开放该端口?尝试关掉防火墙试试,如果关掉防火墙能成功,则说明是防火墙的问题,具体防火墙配置的方法请查询防火墙相关资料。

备注:Linux下查看snmpd进程是否运行,可以通过以下命令:

$ ps afx | grep snmpd$
 4889 ?        S     42:44 /usr/local/snmp/sbin/snmpd

Windows下查看SNMP服务是否运行,可以在“运行”菜单中输入“services.msc”,找到“SNMP Service”,应该是“启动”的状态。

snmpwalk: Timeout (Sub-id not found: (top) -> sysDescr)

通常使用SNMP协议版本v3时会遇到这类错误,可能的原因有:

  • IP地址访问不到?您可以使用 ping, traceroute/tracert 测试该IP。
  • 端口访问不到? 您可以 netstat 查看该端口是否正常监听, Linux下 ps 查看 snmpd 进程是否允许, windows 下看服务是否开启。
  • 防火墙没有开放该端口?尝试关掉防火墙试试,如果关掉防火墙能成功,则说明是防火墙的问题,具体防火墙配置的方法请查询防火墙相关资

snmpwalk: Authentication failure (incorrect password, community or key) (Sub-id not found: (top) -> sysDescr)

通常使用SNMP协议版本v3时会遇到这类错误,可能的原因有:

  • 密码填写错误?
  • 加密方法 (MD5/SHA) 填写错误?

snmpwalk: Unknown user name (Sub-id not found: (top) -> sysDescr)

通常使用SNMP协议版本v3时会遇到这类错误,可能的原因有:

  • 用户名填写错误

其它

在本机测试中,如果您需要更详细的信息,在前面的 snmpwalk 测试命令中可以加上 -d 选项,打开 debug 信息,这样您可以看到收发的数据包。

 



本文转自 holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/425451

相关文章
|
监控 网络安全 网络架构
|
存储 监控 Linux
zabbix使用snmp监控Linux主机(二十)
使用snmp监控Linux主机 1.snmp协议介绍 SNMP(简单网络管理协议)也是应用层的一种协议,默认端口号为161,我们平时监控Linux主机都是安装一个agent客户端进行监控,但是有的公司还需要监控网络设备和Windows主机,这时就不得不采用snmp协议去监控设备了
711 0
zabbix使用snmp监控Linux主机(二十)
|
存储 监控 安全
Zabbix SNMP监控安装、配置与服务器实例(学习笔记六)
SNMP可以监控路由器、打印机、UPS、摄像头、服务器等。 1、安装、配置snmp  yum install net-snmp* -y # vim /etc/snmp/snmpd.
2677 0
|
5月前
|
存储 监控
第六十五章 使用 SNMP 监控 IRIS - 用户定义的 SNMP 监视器类示例
第六十五章 使用 SNMP 监控 IRIS - 用户定义的 SNMP 监视器类示例
45 0
|
5月前
|
监控 程序员 数据库
第六十四章 使用 SNMP 监控 IRIS - 扩展 IRIS MIB
第六十四章 使用 SNMP 监控 IRIS - 扩展 IRIS MIB
52 0
|
5月前
|
监控 网络协议 Unix
第六十三章 使用 SNMP 监控 IRIS - SNMP 故障排除
第六十三章 使用 SNMP 监控 IRIS - SNMP 故障排除
72 0
|
5月前
|
监控 网络协议 安全
第六十二章 使用 SNMP 监控 IRIS
第六十二章 使用 SNMP 监控 IRIS
51 0
|
监控 网络架构
Zabbix的snmp监控
Zabbix的snmp监控
102 0