2010-04-16 109 views
2

HII,我工作的SNMP从过去的几天里,我有建立一种小型应用程序(SNMP代理)的是否有可能没有MIB支持的SNMP代理?

* Run on 161 port. 
* Have a tree structured OID support. 
* Respond to all Get,GetNext,Set Pdu Request types. 
* Tested with some SNMP Managers(free available) by get and set the values of the OID's. 

,但现在的问题是,当我用仙人掌尝试它,它不会响应任何东西,但检测windows snmp服务..它只是响应SNMP管理器的请求。

那么,是否必须为SNMP提供SNMP代理??。

+0

虽然我在下面回答了您的问题,但我不确定我是否帮助您找到了解决问题的方法。当您尝试从Cacti查询代理时究竟发生了什么?你收到任何结果吗? Cacti是否提供了对基本OID执行'snmpwalk'的选项('snmpwalk'在处理树形结构的MIB时很有用)? – lostriebo 2010-04-16 15:11:59

+0

Thanx为您的answer..cacti没有检测到我的snmp代理(显示SNMP错误)..我已经用我的snmp Agent.i手动测试了snmpwalk.exe我尝试了其他命令的net-snmp(如snmpget.exe,snmpgetnext .exe等)。现在我只想通过Cacti检测我的Agent。 – 2010-04-17 05:51:21

+0

您是否能够使用Cacti查询任何SNMP代理?如果没有,这可能是Cacti的配置问题,而不是您的代理问题。 – lostriebo 2010-04-17 07:03:46

回答

3

不,MIB并非严格要求能够查询SNMP代理。

MIB允许SNMP客户端解释代理返回的信息(即通过给它一个可读的名称而不仅仅是OID,以所需的格式正确显示数据等)。如果您知道OID,则客户端应能够在不提供MIB的情况下查询代理。

+0

Thanx,但如果我不会使用MIB的根据RFC的标准..然后是不是我说这个协议的任何规则?? ..是好的,如果我只是处理来自经理的请求。 – 2010-04-17 06:43:12

+0

@Divya mohan Singh,你是什么意思,“违反协议规则”? – lostriebo 2010-04-17 07:02:42

+0

我的意思是......不是在RFC中提供的一组规则来处理所有标准的OID(比如1.3.6.1.2.1.1是系统的基本OID)??如果我没有响应某些标准的OID那么,这很好吗? – 2010-04-17 07:11:24

0

@Divya mohan Singh,你想Cacti检测你的经纪人,那么你应该去追逐Cacti本身。

一旦您知道Cacti预计哪些OID,您可以在代理中实施它们,然后一切都会好的。

如果您有时间可以在代理中实现尽可能多的SNMP对象,但是如果Cacti只依赖其中的少数几个,则可以采用简单的方式在它要求的少数几个上实现。

好吧,听起来好像我鼓励你开发一个不符合RFC的SNMP代理,但事实是许多代理已经违反了规则,而你的代码不会是最后一个。 :)

+0

cacti正在寻找系统信息(即1.3.6.1.2.1.1)的基础OID并走入这个分支..我已经在我的代理中执行它..并成功地使用net-snmp遍历这个分支。但仙人掌不会查询任何东西..爵士显示错误..如何可以静静地得到的信息,以防止窗口snmp服务..如何查询代理?? ..请帮我出 – 2010-04-26 05:39:50

+0

请利用网络监视器或System.Net跟踪来捕获由cacti发送的消息,以及它要求的OID。此外,向Cacti支持团队咨询以澄清问题是一种更直接的解决方案。 – 2010-04-26 06:03:54

相关问题