I'm using the node net-snmp package to create a simple subagent but I cannot query its only table provider (Error in packet... No such variable name in MIB). I have installed net-snmp and registered it, I am able to query simple things such as uptime: C:\usr\etc\snmp>snmpwalk -v1 -c public 127.0.0.1 .1.3.6.1.2.1.1.3 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (306196) 0:51:01.96
So, at least I know the snmpd is running and responding. My snmpd.conf:rwcommunity public master agentx agentXSocket tcp:localhost:705load 12 12 12 Any thoughts would be greatly appreciated. thanksIan in Ottawa | | | | | | | | | | | net-snmp JavaScript implementation of the Simple Network Management Protocol (SNMP). Latest version: 3.5.8, last publishe... | | | Test table query:C:\usr\etc\snmp>snmpget -v1 -c public 127.0.0.1 1.3.6.1.4.1.8072.9999.9999.2 Error in packet Reason: (noSuchName) There is no such variable name in this MIB. Failed object: NET-SNMP-MIB::netSnmpPlaypen.2 Js subagent:let snmp = require("net-snmp"); export class SNMPServer { private static instance: SNMPServer; subagent: null | any mib: null | any private constructor() { this.subagent = snmp.createSubagent(suboptions); } public static getInstance(): SNMPServer { if (!SNMPServer.instance) { SNMPServer.instance = new SNMPServer(); } return SNMPServer.instance; } public openSubAgent() { this.subagent.open( this.openCallback ); } openCallback = ( error: any, data: any ) => { if ( error ) { console.error('subagent.open() ERROR:' +error); } else { console.log('subagent.open() OK...'+data) this.subagent.registerProvider (myTableProvider, registerProviderCallback); this.mib = this.subagent.getMib(); if (this.mib != null) { this.mib.addTableRow ("smallIfTable", [1, "IAN", 12]); console.log("SNMP Server: SubAgent-MIB Invoked"); } else { console.error ("Subagent Get MIB failure"); } } } public closeSubAgent() { this.subagent.unregisterProvider(myTableProvider, ()=>{} ); this.subagent.close (() => {}); }} // Default suboptionsvar suboptions = { debug: true, master: "localhost", masterPort: 705, timeout: 0, description: "Node net-snmp AgentX sub-agent"}; var registerProviderCallback = function (error: any, data: any) { if ( error ) { console.error ('CREATE SUBAGENT ERROR '+error); } else { console.log ('OK SNMP CREATE SUBAGENT '+JSON.stringify(data, null, 2)); }}; var myTableProvider = { name: "smallIfTable", type: snmp.MibProviderType.Table, oid: "1.3.6.1.4.1.8072.9999.9999.2", tableColumns: [ { number: 1, name: "CampField1", type: snmp.ObjectType.Integer }, { number: 2, name: "CampField2", type: snmp.ObjectType.OctetString }, { number: 3, name: "CampField3", type: snmp.ObjectType.Integer } ], tableIndex: [ { columnName: "CampField1" } ], handler: function (mibRequest: any) { console.log('MibRequest!') // e.g. can update the table before responding to the request here mibRequest.done(); }};
_______________________________________________ Net-snmp-coders mailing list Net-snmp-coders@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/net-snmp-coders