为自定义OID设置SNMP值

时间:2012-07-18 10:43:39

标签: c# windows snmp

我们有applied Private Enterprise Number来“保留”SNMP MIB“树”中的空格来存储一些监控值。最终,我们将分配一个如下数字:

iso.org.dod.internet.private.enterprise.XXX (1.3.6.1.4.1.XXX)

我们还没有收到我们分配的PEN,但是我希望通过简单地使用{临时,仅在我的工作站上)OID并使用SNMP#Net为其写入值来启动我的项目。我已经按照set example工作正常(sysLocation,OID 1.3.6.1.2.1.1.6.0,设置正常)。

所以,接下来我尝试设置一个“伪造的”OID(1.3.6.1.4.1.99999.1.0,其中99999最终将成为我们分配的PEN)。但是,ErrorStatus 17失败,private,根据this source,应该是“无法写入或创建变量。”

我已检查了我的SNMP代理服务,并且我正在使用的READ/CREATE社区设置为{{1}}。我在Windows 7上使用C#。

在设定所需的价值之前,我还需要做些什么吗?在Windows允许我设置值之前,是否需要导入某种“MIB定义”?为了(现在测试)设定值,我需要做什么?也许我需要首先使用SNMP代理“声明”或“注册”我想要的OID?

1 个答案:

答案 0 :(得分:0)

您需要使用WinSNMP API在SNMP代理提供程序服务中将变量注册为绑定列表的一部分。

基本上,您使用SnmpCreateVbl将OID绑定到变量。