简单网络管理协议(SNMP)是Internet标准协议,用于在管理控制台应用程序(例如HP Openview,Novell NMS,IBM NetView或Sun Net Manager)与受管实体之间交换管理信息。受管实体可以包括主机,路由器,网桥和集线器。
SNMP的工作方式
以下步骤概述了第三方SNMP管理控制台应用程序如何从SNMP服务返回信息:
- SNMP管理控制台应用程序根据用户输入来制定SNMP消息。该消息包括协议数据单元(PDU)和认证信息。管理控制台应用程序可以使用Microsoft SNMP管理API库(MGMTAPI.DLL)或Microsoft WinSNMP API库(WSNMP32.DLL)来执行此步骤。
- SNMP管理控制台应用程序使用SNMP服务库将SNMP消息发送到SNMP服务。
- SNMP服务收到请求。验证身份验证信息和源IP地址。
- SNMP服务选择适当的扩展代理,并请求代理检索请求的信息。
- SNMP服务将响应发送到SNMP管理控制台应用程序。
SNMP管理信息库(MIB)
管理信息库(MIB)描述了一组管理对象。如果SNMP服务具有支持MIB的扩展代理DLL,则SNMP管理控制台应用程序可以操纵特定计算机上的对象。
MIB中的每个管理对象都有一个唯一的标识符。标识符包括对象的类型(例如计数器,字符串,量规或地址),对象的访问级别(例如读取或读取/写入),大小限制和范围信息。
下表包含系统随附的MIB的部分列表。它们与SNMP服务一起安装在%systemroot%\ system32目录中。有关MIB的完整列表,请参阅Windows资源工具包。
| MIB | 描述 |
|---|---|
| DHCP服务器 | Microsoft定义的MIB,其中包含用于监视远程主机和DHCP服务器之间的网络流量的对象类型 |
| HOSTMIB.MIB | 包含用于监视和管理主机资源的对象类型 |
| LMMIB2.MIB | 涵盖工作站和服务器服务 |
| MIB_II.MIB | 包含管理信息库(MIB-II),它提供了一个简单,可行的体系结构和系统来管理基于TCP / IP的Internet |
| WINS.MIB | Microsoft为Windows Internet名称服务(WINS)定义的MIB |
Windows NT:通常,您可以从支持特定MIB的SNMP扩展代理中复制MIB。Windows NT 4.0资源工具包中提供了一些其他MIB。
SNMP服务安装了MIB-II,LAN Manager MIB-II和主机资源MIB的扩展代理DLL。在安装其他MIB的相应服务时,将安装其他MIB的扩展代理DLL。在服务启动时,SNMP服务将加载注册表中列出的所有扩展代理DLL。
用户可以添加实现其他MIB的其他扩展代理DLL。为此,他们必须在SNMP服务下为新DLL添加一个注册表项。他们还必须向SNMP管理控制台应用程序注册新的MIB。有关更多信息,请参阅管理控制台应用程序随附的文档。
相关RFC
TCP / IP标准在Internet工程任务组(IETF)发布的请求注释(RFC)中定义。下表列出了与SNMP相关的RFC。
| RFC编号 | 标题 |
|---|---|
| 1155 | “基于TCP / IP的Internet的管理信息的结构和标识。” 它定义了SMI.MIB。 |
| 1157 | “一个简单的网络管理协议(SNMP)。” 它定义了SNMP本身。 |
| 1213 | “用于基于TCP / IP的Internet的网络管理的管理信息库:MIB-II。” 它定义了MIB_II.MIB。 |
| 1901年 | “基于社区的SNMPv2简介” |
| 1902年 | “简单网络管理协议(SNMPv2)版本2的管理信息结构” |
| 1903年 | “简单网络管理协议(SNMPv2)版本2的文本约定” |
| 1904年 | “简单网络管理协议(SNMPv2)版本2的符合性声明” |
| 1905年 | “简单网络管理协议(SNMPv2)版本2的协议操作” |
| 1906年 | “简单网络管理协议(SNMPv2)版本2的传输映射” |
| 1907年 | “简单网络管理协议(SNMPv2)版本2的管理信息库” |
| 1908年 | “ Internet标准网络管理框架的版本1和版本2之间的共存” |
| 2089 | “在双语SNMP代理中将SNMPv2映射到SNMPv1的V2ToV1” |
SNMP的系统文件
下表描述了与SNMP服务相关的主要文件。
| 文档名称 | 描述 |
|---|---|
| DHCPMIB文件 | 实现Microsoft定义的DHCP MIB的扩展代理DLL。仅安装在DHCP服务器上。 |
| EVNTAGNT.DLL | SNMP DLL,可将事件日志转换为SNMP陷阱;也称为SNMP事件转换器。 |
| HOSTMIB.DLL | 实现主机资源MIB的扩展代理DLL。 |
| LMMIB2.DLL | 实现LAN Manager MIB-II的扩展代理DLL。 |
| MGMTAPI.DLL | Microsoft SNMP管理API库。该API允许SNMP管理器应用程序“侦听” SNMP管理器请求,并向SNMP代理发送请求并从SNMP代理接收响应。 |
| MIB库 | MGMTAPI.DLL使用的已编译MIB信息。 |
| SNMP文件 | SNMP服务。这是接收SNMP请求并将其传递到适当的扩展代理DLL的主代理。 |
| SNMPAPI.DLL | SNMP扩展代理DLL和管理器应用程序使用的SNMP实用工具DLL。该DLL包含用于开发扩展代理DLL的框架。 |
| SNMPSNAP.DLL | SNMP配置应用程序,它是Microsoft管理控制台(MMC)管理单元的组件。该管理单元将几个页面添加到“ SNMP服务属性”表中。有关更多信息,请参见SNMP服务的联机帮助。 |
| SNMP陷阱文件 | SNMP陷阱服务。接收SNMP陷阱并将其转发到SNMP管理器应用程序。 |
| WINSMIB.DLL | 实现Microsoft定义的WINS MIB的扩展代理DLL。仅安装在WINS服务器上。 |
| WSNMP32.DLL | Microsoft WinSNMP API库。该API允许SNMP管理器应用程序“侦听” SNMP管理器请求,并向SNMP代理发送请求并从SNMP代理接收响应。 |
SNMP实用程序
下表列出了Microsoft Windows Resource Kit中可用的SNMP实用程序。
| 文档名称 | 描述 |
|---|---|
| EVNTCMD.EXE | 用于配置SNMP事件转换程序的命令行应用程序 |
| EVNTWIN.EXE | 提供用于配置SNMP事件转换器的用户界面的应用程序 |
| 可执行文件 | SNMP MIB编译器 |
| SNMPUTIL.EXE | SNMP管理器控制台应用程序示例 |
Windows管理规范(WMI)SDK中的SNMP提供程序允许客户端应用程序通过WMI访问静态和动态SNMP信息。有关更多信息,请参见WMI SDK文档中的SNMP Provider。