📜  简单网络管理协议 (SNMP)(1)

📅  最后修改于: 2023-12-03 15:11:32.577000             🧑  作者: Mango

简单网络管理协议 (SNMP)

SNMP 是一种网络管理协议,用于监控与网络相关的设备。它是一种简单的协议,因为它使用很少的网络带宽和处理资源。

SNMP 的主要功能是允许网络管理器监视网络设备并在需要时进行配置更改。此外,SNMP 还可以提供有关网络设备的信息,例如它们的硬件配置、操作状态和性能统计信息。

常用术语

在了解 SNMP 之前,需要了解一些常用的术语:

  • 管理器(Manager):也称为 NMS(Network Management System),它是使用 SNMP 来管理网络设备的主机或应用程序。
  • 代理(Agent):也称为网络管理实体,它是网络设备上运行的软件模块,负责监控设备运行状态并将其传递给管理器。
  • 对象标识符(Object Identifier,OID):每个被监控的设备、接口等都有唯一的 OID 路径,SNMP 使用这些 OID 路径来识别并获取所需的信息。
SNMP 版本

SNMP 拥有多个版本,其中最常用的是 SNMPv1、SNMPv2c 和 SNMPv3。

SNMPv1 是最早的版本,它的安全性比较弱,通信数据以明文方式传输,容易被攻击者截取和篡改。

SNMPv2c 修复了 SNMPv1 的许多弱点,并引入了一些新功能,例如跨越多个管理器的目标的通知。

SNMPv3 引入了加密和身份验证,以增强安全性并提供更好的管理功能。

SNMP 操作

SNMP 定义了五种操作,也称为 PDU(Protocol Data Units,协议数据单元):

  • GetRequest:请求代理返回一个或多个指定 OID 的值。
  • GetNextRequest:请求代理返回 OID 树中指定 OID 的下一个 OID 和其值。
  • SetRequest:请求代理修改一个或多个 OID 的值。
  • Trap:在事件发生时,代理向管理器发送通知。
  • GetBulkRequest:请求代理返回大量数据,通常用于获取整个 MIB(Management Information Base,管理信息库)。
SNMP MIB

MIB 是一种层次结构,用于组织 SNMP 管理信息。它由 OID 树和相关对象的定义组成,以提供有关网络设备和其他网络资源的信息。

MIB 通常由厂商提供,以便管理员可以使用 SNMP 来监视和管理其设备。管理员还可以编写自己的 MIB,以便 SNMP 代理可以将自定义信息报告给管理器。

SNMP 工具

有许多以 SNMP 为基础的工具和应用程序可供使用,这些工具可以帮助您了解网络设备和资源的状态、性能和配置信息。

  • SNMPwalk:使用 SNMP 从代理检索所有 OID 值。
  • SNMPget:使用 SNMP 获取单个 OID 值。
  • SNMPset:使用 SNMP 修改单个 OID 值。
  • MRTG:一个网络监控工具,可以使用 SNMP 获取设备性能信息并图形化显示。

以上介绍了 SNMP 的基础知识,当您需要管理网络设备或监测网络性能时,SNMP 是一个非常有用的协议。