SNMP 简介
SNMP(简单网络管理协议)是一种互联网标准协议,用于管理 IP 网络上的设备。它主要用于网络管理系统,监控网络连接设备是否存在需要管理的情况。SNMP 以被管理系统变量的形式公开管理数据,描述系统配置。管理应用程序可以查询(有时也可以设置)这些变量。通过 SNMP 访问的变量按层次组织,由管理信息库(MIB)描述。
SNMP 的工作进展
SNMP 有两个组件,分别称为 NMS 和 Agent。
NMS(网络管理站)是运行客户端程序的工作站。目前,常用的网络管理平台有 QuidView、Sun NetManager 和 IBM NetView。
Agent 是运行在网络设备上的服务器端软件。
NMS 可以向 Agent 发送 GetRequest、GetNextRequest 和 SetRequest 信息。从 NMS 收到这些请求信息后,Agent 会根据信息类型执行读或写操作,生成响应信息,并将信息返回给 NMS。
当设备出现异常情况或状态变化(如设备重启)时,Agent 也会主动向 NMS 发送 Trap 信息,向 NMS 报告发生的事件。
SNMP 使用 UDP 协议在管理器和代理之间传输信息。SNMP 使用 UDP 端口 161 接收和发送请求,使用端口 162 接收陷阱。SNMP 信息全部通过 UDP 161 端口接收,只有陷阱信息通过 UDP 162 端口接收。
SNMP 版本
目前,设备中的 SNMP 代理支持 SNMP v3 版本,与 SNMP v1 版本和 SNMP v2C 版本兼容。SNMP v3 使用用户名和密码验证方法。
SNMP v1 和 SNMP v2C 使用 "社区名 "验证,非设备识别社区的 SNMP 消息将被丢弃。
SNMP Community Name(SNMP Community Name)用于定义 SNMP NMS 和 SNMP Agent 之间的关系。Community Name 就像密码一样,可以限制 SNMP NMS 访问设备上的 SNMP Agent。
用户可以选择指定与社区名称相关的一个或多个以下特征。
1.定义社区名称可以访问的 MIB 视图。
2.将群组名称对 MIB 对象的访问权限设置为读写(写)或只读(读)。具有只读权限的群组名称只能查询设备信息,而具有读写权限的群组名称还可以配置设备。
3.设置由群组名称指定的基本访问控制列表。
SNMP 操作命令
SNMP 协议易于使用,因为它提供了三种基本操作命令,用于从外部控制 MIB 对象。它们是 获取、设置和捕获。
Get: 管理站从代理处读取对象的值。这是 SNMP 协议中最常用的命令之一,因为它是从网络设备中获取管理信息的基本方法。
Set: 管理平台在代理处设置对象的值。这是一条特权命令,因为它可用于更改设备的配置或控制设备的运行状态。它可以设置设备名称、关闭端口或清除地址解析表中的条目等。
Trap:该代理主动向管理站通报重要事件。其功能是让管理代理通知网管系统发生了某种特殊情况或问题,而无需网管系统明确提出请求。在出现意外情况时,客户端会向服务器的 162 端口发送报文,通知服务器指定变量的值发生了变化。捕获信息可用于通知管理站线路故障、连接终止和恢复、认证失败以及其他信息。管理站可对其进行相应处理。MIB&OID
SNMP 消息中使用管理变量来描述设备中的管理对象。
为了唯一标识设备中的管理对象,SNMP 使用分层命名方案来标识管理对象。
整个层次结构就像一棵树,树上的节点代表管理对象。每个节点都可以通过从根节点开始的路径进行唯一标识。
MIB(管理信息库)用于描述树的层次结构,它是受监控网络设备的标准变量定义的集合。
在下图中,受管对象 B 可以通过一串数字 {1.2.1.1} 进行唯一标识,这就是受管对象的对象标识符 (OID)。
SNMP 参数说明
openvox 模拟网关已支持三种版本的 SNMP 功能。它们通常是 SNMPv1、SNMPv2c 和 SNMPv3。
设置 | 说明 |
启用SNMP | 启用/禁用SNMP功能。默认设置为"否"。 |
系统联系方式 | 系统联系方式 |
系统位置 | 系统位置 |
支持SNMP版本 | 选择设备支持的SNMP版本 |
SNMP版本 | 选择当前SNMP版本 |
安全名称 | 社区中的安全名称 |
源 | NMS IP地址范围 |
社区 | SNMP社区 |
组 | 设备组 |
视图名称 | SNMP视图名称 |
视图类型 | 在此视图中选择包含/排除子树 |
ViewSubtree | 在该视图中选择MIB |
视图掩码 | 子树的掩码(十六进制) |
读取 | 读取访问 |
写入 | 写入访问 |
通知 | 通知访问 |
在 SNMP v3 中,有以下参数需要特别注意。
SNMP 测试
在客户端设备上配置 SNMP 后,可以使用企业管理系统或免费的 SNMP 测试工具测试 SNMP 功能。
在本文中,我们将使用 "iReasoning MIB 浏览器",这是一款免费且易于使用的 SNMP 测试工具,其中包括一个陷阱接收器。
您可以从 http://ireasoning.com/download.shtml 获取 "iReasoning MIB 浏览器 "个人版。
通过使用 "iReasoning MIB 浏览器",您可以轻松测试 openvox 模拟网关的 SNMP 功能。Once the MIB file is imported into the MIB Browser, you can select different SNMP versions for verification.
注意:要检索 openvox 产品的 MIB,请向 support@openvox.cn 提交技术支持单。
SNMP v1
在模拟网关 SNMP 页面,选择版本为 v1。 在 MIB 浏览器软件中,填写设备的 IP 地址,将 "Community "参数设置为 "Read Community"(读取社区)和 "Write Community"(写入社区),并将 SNMP 版本设置为 1 并保存。
在 MIB 浏览器中选择 "walk "操作,将输出值。
SNMP v2c
在模拟网关 SNMP 页面,选择版本为 v2c。在 MIB 浏览器软件中,填写设备的 IP 地址,将 "社区 "参数设置为 "读取社区 "和 "写入社区",将 SNMP 版本设置为 2 并保存。
在 MIB 浏览器中选择 "walk "操作,将输出值。
SNMP v3
在模拟网关 SNMP 页面,选择版本为 v3。 在 MIB 浏览器软件中打开工具->选项->默认值,选择版本 3,在 "User(用户)"参数中填写 "USM User(USM 用户)",在 "AuthPassword(Auth 密码)"参数中填写 "Auth Password(Auth 密码)",在 "PrivacyPassword(Privacy 密码)"参数中填写 "Privacy Password(Privacy 密码)",并选择相应的加密算法。