markabrahams / node-net-snmp

JavaScript implementation of the Simple Network Management Protocol (SNMP)
209 stars 97 forks source link

Create SNMP Server and client with NodeJS #225

Closed amrashraf1992 closed 1 year ago

amrashraf1992 commented 1 year ago

Server Code:

'use strict'; var snmp = require("net-snmp");

// Default options var options = { port: 161, disableAuthorization: false, accessControlModelType: snmp.AccessControlModelType.None, engineID: "8000B98380XXXXXXXXXXXXXXXXXXXXXXXX", // where the X's are random hex digits address: null, transport: "udp4" };

var callback = function (error, data) { if (error) { console.error(error); } else { console.log(JSON.stringify(data, null, 2)); } };

snmp.createAgent(options, callback);

Client Code:

'use strict'; var snmp = require("net-snmp");

var session = snmp.createSession("127.0.0.1", "INOS");

var oids = ["1.3.6.1.2.1.1.5.0", "1.3.6.1.2.1.1.6.0"];

session.get(oids, function (error, varbinds) { if (error) { console.error(error); } else { for (var i = 0; i < varbinds.length; i++) { if (snmp.isVarbindError(varbinds[i])) { console.error(snmp.varbindError(varbinds[i])); } else { console.log(varbinds[i].oid + " = " + varbinds[i].value); } } } session.close(); });

session.trap(snmp.TrapType.LinkDown, function (error) { if (error) { console.error(error); } });

It gives me this error in server side:

RequestFailedError: Local community not found for message with community INOS at Listener.processIncoming (D:\INOS_deployment\SNMP Server\node_modules\net-snmp\index.js:2857:14) at Agent.onMsg (D:\INOS_deployment\SNMP Server\node_modules\net-snmp\index.js:4560:22) at Socket.emit (node:events:513:28) at UDP.onMessage [as onmessage] (node:dgram:930:8) { status: undefined }

How can i solve this issue

markabrahams commented 1 year ago

Great error message!

On the server:

const agent = snmp.createAgent(options, callback);
agent.getAuthorizer().addCommunity("INOS");
amrashraf1992 commented 1 year ago

Okay Thanks