A pure JavaScript implementation of SNMP (v1, v2c, v3) for Node.js, supporting all five SNMP application types.
net-snmp is a pure JavaScript implementation of the Simple Network Management Protocol (SNMP) for Node.js. It provides comprehensive support for SNMP versions 1, 2c, and 3, allowing developers to create SNMP managers, agents, notification receivers, and proxy forwarders without relying on external C libraries or system binaries. The module solves the problem of integrating SNMP functionality into Node.js applications for network monitoring and device management.
Node.js developers building network monitoring tools, SNMP agents, or device management systems that need to communicate with SNMP-enabled network equipment like routers, switches, and servers.
Developers choose net-snmp because it's a pure JavaScript implementation that works across platforms without native dependencies, offers full RFC compliance for all major SNMP versions, and provides both high-level convenience methods and low-level protocol access for maximum flexibility.
JavaScript implementation of the Simple Network Management Protocol (SNMP)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements SNMPv1, v2c, and v3 with authentication (MD5/SHA) and encryption (DES/AES), covering all major standards as detailed in the README's features list.
Supports all five SNMP applications—command generator, responder, notification originator, receiver, and proxy forwarder—enabling diverse use cases from tools to agents.
No external binaries or libraries needed, making it cross-platform and easy to install via npm, as emphasized in the project philosophy for accessibility.
Includes MIB parsing, OID translation, table support, and RowStatus operations, allowing for sophisticated agent development with structured data management.
DES encryption for SNMPv3 is unsupported on Node.js v17+ by default, requiring the --openssl-legacy-provider flag, which is a security and compatibility concern as admitted in the compatibility note.
The module's comprehensive RFC compliance and extensive API, with numerous constants and methods, can be overwhelming for developers new to SNMP or those with simple requirements.
As a pure JavaScript implementation, it may not handle high-volume SNMP traffic as efficiently as native C-based alternatives, especially in resource-constrained environments.