什么是SNMP ping?

时间:2012-03-12 15:02:49

标签: networking snmp ping

我知道SNMP是什么,我知道ping是什么。什么是“SNMP ping”? SNMP可用于查看网络上的设备是否仍处于活动状态。它可以用来做什么?我不会想到SNMP ping与ICMP ping相同吗?

7 个答案:

答案 0 :(得分:8)

正如您所怀疑的,SNMP“ping”肯定与ICMP ping不同。它的作用是尝试通过SNMP检索一些基本信息,如DNS名称,系统名称,位置,系统类型,系统描述等。如果成功,“ping”也被认为是成功的。

但这不是ICMP Ping(echo)的标准。 SNMP中没有特殊的“ping”命令 - 它只是用于扫描某些目标设备上SNMP是否处于活动状态的工具的名称(通过检索一些常见的MIB值)。正如您所期望的那样,由于它是一个有用的工具而不是标准,因此实现也会有所不同。

但这在实践中影响不大,因为有一组“强制”SNMP记录,所以如果设备没有响应那些,你可以非常肯定它不会运行SNMP。要使SNMP“ping”工作,当然必须在目标设备上启用SNMP ...在大多数情况下,默认情况下并非如此,这与ICMP Ping有很大不同,ICMP Ping几乎可以普遍使用。

我希望我回答你的问题

答案 1 :(得分:2)

SNMP ping通常等同于ICMP echo。例如,IBM声明它发出单个ICMP回应(接收端的SNMPD)并返回minRTT。如果响应超时,则它在1秒后发送另一个原始回声数据包,并在2秒后再次发送另一个原始回声数据包。如果还没有响应,则返回-1。

思科还有一种类似的实现(SNMP GET / SET / PING-MIB)。然而,它绝对是特定于实现的。

Source

答案 2 :(得分:2)

Ping是“Packetized Internet Node Groper”,最初是一个实现ICMP回应响应的工具。 “Ping”现在通常用于传达检查设备是否在线,可用,响应的抽象。

有一些MIB选项要求设备ping或跟踪某些东西 - 这似乎是要求设备向第三方提供ICMP并指示成功/失败 - 但通俗地使用“snmp ping”是通过询问静态数据点的简单SNMP问题来检查响应性并获得响应。

大多数设备都对1.3.6.1.2子树中的请求提供了一些响应,但这并不是一个硬/快的要求。例如,在Unix(类似)命令行上,可以尝试“snmpget -v 1 -c public 192.168.0.1 1.3.6.1.2.1.1.1.0”来询问“192.168.0.1”它的名字是什么。设备可以响应;如果访问(版本1,社区字符串“public”,在这种情况下)不正确,它通常不会NAK。中间的交换机可以选择提醒请求者“无法访问”,但可能不会。在其他情况下,如果没有响应,除“无响应”之外的消息或提示可能会有所帮助。

答案 3 :(得分:1)

“ping”只是发送邮件的通用术语,用于查看您是否收到回复。

ICMP是在IP网络上“ping”主机的最常用方法。如果您从IP地址获得ICMP回应响应,那么您就知道那里的某些东西能够并且愿意接收并回复该地址的至少一些网络流量。收到对ICMP ping的回复并不会告诉您任何其他网络服务的状态。没有收到回复并没有告诉你任何事情:在任何特定时刻你都可能没有收到ICMP ping的回复有很多原因。

“ping”的概念适用于任何通信机制。一些网络协议具有执行“ping”的特定标准。对于大多数人来说,“ping”只是意味着尝试执行一些基本操作以查看它是否有效。例如,您可以通过连接到端口80并执行“HEAD / HTTP/1.0”来“ping”HTTP服务器。如果您收到HTTP响应,那么您就知道HTTP服务器正在运行。相同的想法适用于SNMP或任何其他网络应用程序。

答案 4 :(得分:1)

在大多数情况下,我听说使用了“ SNMP Ping”,它是指DISMAN PING。使用此方法,您可以使用SNMP远程控制设备或主机,并告诉它“ ping”另一设备。通常,这将是传统的ICMP ping。

例如,假设您的笔记本电脑上有笔记本电脑,并且您有一台Web服务器,似乎需要很长时间才能加载页面。您无法快速判断出您与Web服务器之间的网络,Web服务器与数据库之间的网络还是其中一台服务器本身存在问题。您要首先消除网络,因此首先要从笔记本电脑ping网络服务器。无损失,并且延迟看起来合理。您从便携式计算机ping数据库服务器,它看起来也不错。便携式计算机数据库ping测试的问题是,它不能告诉您Web服务器和数据库之间发生了什么。理想情况下,您将登录到Web服务器并ping数据库,但是您没有Shell帐户。但是,您确实具有读/写SNMP访问权限。因此,您决定使用从笔记本电脑到Web服务器的“ snmpset”来创建表(用于ping结果)并指定要进行ping的目标(数据库服务器)。 Web服务器snmpd启动从Web服务器到数据库的ICMP ping,并将结果存储在表中。然后,您从便携式计算机执行“ snmpget”以提取Web服务器数据库ping结果。

答案 5 :(得分:0)

据我了解,SNMP ping是RFC 2925中定义的一种

http://tools.ietf.org/html/rfc2925

如果SNMP代理供应商指示设备支持此RFC,则可以使用SNMP ping对其进行监控。否则,它将无法工作。

这与“普通ping”(基于ICMP)完全不同。

答案 6 :(得分:0)

与ICMP ping一样,SNMP ping只是SNMP getrequest的一种形式,用于检查运行标准SNMP代理以进行监视的任何设备的活动性。当管理这些设备的管理系统查询自动发现时,它很有用。任何sysOid都可用于查询设备作为请求的一部分。