我尝试使用示例代码snmpd
编写代理并定义自定义对象。但是当我在snmpwalk
等其他库中使用net-snmp
时,我的代理不会返回带有值的自定义对象
自定义对象
public TestObject(): base(new ObjectIdentifier("1.3.6.1.4.1.52222"))
{
}
public override ISnmpData Data
{
get
{
return new Integer32(12345);
}
set
{
throw new AccessFailureException();
}
}
我的经纪人
var store = new ObjectStore();
store.Add(new SysDescr());
store.Add(new SysObjectId());
store.Add(new SysUpTime());
store.Add(new SysContact());
store.Add(new SysName());
store.Add(new SysLocation());
store.Add(new TestObject());
我的代理中的其他代码就像样本而不是更改
结果命令行 - > snmpwalk -v 2c -c public 127.0.0.1
SNMPv2-MIB::sysDescr.0 = STRING: #SNMP Agent on Microsoft Windows NT 6.2.9200.0
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::internet
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (17747798) 2 days, 1:17:57.98
SNMPv2-MIB::sysContact.0 = STRING: Taratech
SNMPv2-MIB::sysName.0 = STRING: DESKTOP-T5PVHIB
SNMPv2-MIB::sysLocation.0 = STRING:
如您所见,结果不正确,TestObject
的值不返回
我的代码在哪里错了?