SNMP
A protocol for collecting, modifying, and organizing information about managed devices on IP networks.
Libraries
C#
MIT licensed SNMP library for .NET with extensive SNMP standard support, latest .NET platform targets, as well as rich manager/agent samples.
Simple Network Management Protocol (SNMP) .Net library written in C# (csharp). Implements protocol version 1, 2 and 3.
Go
An SNMP library written in Go. It provides Get, GetNext, GetBulk, Walk, BulkWalk, Set and Traps. It supports IPv4/IPv6, using SNMP v1/v2c/v3.
MIB parser in Go language.
A library with a pure Go implementation of the AgentX-Protocol.
JavaScript
JavaScript implementation of the Simple Network Management Protocol (SNMP), implements versions 1, 2c and 3.
Native JavaScript SNMP library for Node.js.
This package provides a toolkit for SNMP agents and management applications in Node.js.
Native JavaScript SNMP library for Node.js.
PHP
Python
This is a pure-Python, open source and free implementation of v1/v2c/v3 SNMP engine distributed under 2-clause BSD license.
PySMI is a pure-Python implementation of SNMP SMI MIB parser.
The accelerated Python SNMP client library supporting both async and synchronous mode. It consists of a clean Python API for high-efficient BER parser and socket IO, implemented in the Rust language with PyO3 wrapper. Seems to be a bit early in the project's lifecycle, but it is easy to use and extremely fast, especially when querying many devices.
A fork of net-snmp Python bindings that attempts to bring a more Pythonic interface to the library.
Pure Python3 SNMPv2 library without any dependencies.
Snimpy is a Python-based tool providing a simple interface to build SNMP query.
This package allows to write net-snmp subagents in Python.
HNMP is a high-level Python library to ease the pain of retrieving and processing data from SNMP-capable devices such as network switches, routers, and printers.
Python package aiosnmp is an asynchronous SNMP client for use with asyncio. Only SNMP v2c is supported.
SNMPLibrary is a Robot Framework test library for testing SNMP.
Packet manipulation program & library. Scapy has a module to build/dissect SNMP packets.
Rust
SNMP parser written in rust with nom parser combinator framework.
Modern SNMP is a pure-Rust library for SNMPv3. This repository includes snmpmp (SNMPv3 Message Processing) and snmpusm (Implementation of the User-based Security Model (USM) for SNMPv3) crates.
This repository implements an SNMP Agent written in Rust.
Tools
This is a pure-Python, open source and free implementation of SNMP agents simulator distributed under 2-clause BSD license.
The SNMP Proxy Forwarder tool works as an application-level proxy with a built-in SNMP message router. Typical use case for an SNMP proxy is to work as an application-level firewall or a protocol translator that enables SNMPv3 access to a SNMPv1/SNMPv2c entity or vice versa.
This is a collection of command-line SNMP tools written in pure-Python. The tools mimic their famous Net-SNMP counterparts. It includes snmpget.py, snmpset.py, snmpwalk.py, snmpbulkwalk.py, snmptrap.py, and snmptranslate.py, see here for more details.
An SNMPv3 User Enumerator and Attack tool.
A suite of tools for ingesting and displaying SNMP traps. This is designed as a replacement for snmptrapd and to supplement existing stateful monitoring solutions.
Fast SNMP Scanner.
Fast SNMP brute force, enumeration, CISCO config downloader and password cracking script.
This Perl script will generate a Zabbix v3 Template in XML format from an OID tree in a SNMP MIB file.
A lightweight standalone SNMPd mimic server based on any snmpwalk output. Easily scales to mock thousands of servers.
Visual SNMP is a simple tool for testing access to SNMP agents. Currently SNMPGET and SNMPWALK are supported with some limited funcionality.
SnmpCollector is a full featured Generic SNMP data collector with Web Administration Interface Open Source tool which has as main goal simplify the configuration for getting data from any device which snmp protocol support and send resulting data to an influxdb backend.
An ultra-lightweight SNMP manager for Windows and Mac OS, featuring network mapping, polling, and AI analysis.