SNMP如何获取并为代理设置值

时间:2014-03-06 02:04:10

标签: c network-programming snmp mib

如何代理从MIB获取/设置对象的值(我认为MIB只是没有值的对象的定义)?如何从MIB文件中管理设备处理对象的值。    示例:当SNMP获取系统的IP地址时会发生什么事情。系统通过定义的mid文件获取信息。

2 个答案:

答案 0 :(得分:1)

您需要在受监控的平台上运行SNMP代理。代理的职责是收集系统中的状态信息,并更新MIB结构。然后,代理通过SNMP协议从NOC或SNMP客户端回答SNMP Get命令。代理还负责(如果是为此设计)在值超过预定义阈值时将SNMP陷阱发送到预配置服务器

答案 1 :(得分:0)

看看net-snmp它应该是一个很好的帮助,既可以用于代理的命令行测试,也可以开发一个'C'应用程序来与之交互。

引用首页:

  

简单网络管理协议(SNMP)是一种广泛使用的协议,用于监控网络设备(例如路由器),计算机设备甚至UPS等设备的健康和福利。 Net-SNMP是一套应用程序,用于使用IPv4和IPv6实现SNMP v1,SNMP v2c和SNMP v3。套房包括:

     
      
  • 命令行应用程序:       使用单个请求(snmpget,snmpgetnext)或多个请求(snmpwalk,snmptable,snmpdelta)从支持SNMP的设备检索信息。       在支持SNMP的设备上操作配置信息(snmpset)。       从支持SNMP的设备(snmpdf,snmpnetstat,snmpstatus)中检索固定的信息集合。       在MIB OID的数字和文本形式之间转换,并显示MIB内容和结构(snmptranslate)。
  •   
  • 图形MIB浏览器(tkmib),使用Tk / perl。
  •   
  • 用于接收SNMP通知的守护程序应用程序(snmptrapd)。可以记录选定的通知(到syslog,NT事件日志或纯文本文件),转发到另一个SNMP管理系统,或传递给外部应用程序。
  •   
  • 用于响应SNMP查询以获取管理信息的可扩展代理(snmpd)。这包括对各种MIB信息模块的内置支持,可以使用动态加载的模块,外部脚本和命令以及SNMP多路复用(SMUX)和代理可扩展性(AgentX)协议进行扩展。
  •   
  • 用于开发新的SNMP应用程序的库,包含C和perl API。
  •   
  • Net-SNMP适用于许多Unix和类Unix操作系统以及Microsoft Windows。
  •   

最近我发现net-snmp命令行工具非常有价值。