awesome-snmp
by eozer
A curated list of awesome SNMP libraries, tools, and other resources.
AI summary
SNMP toolkit
A curated list of libraries and tools for working with the Simple Network Management Protocol
- stars
- 129
- forks
- 6
- watching
- 3
- awesome lists
- 2
- entries
- 147
What's in the list
147 links in 31 sections, with live GitHub stats.activeno commit in 2y
Libraries / C/C++
- net-snmp
A suite of software for using and deploying the SNMP protocol (v1, v2c and v3 and the AgentX subagent protocol). Contains also Python bindings
- SNMP++
BSD licensed SNMP implemention from HP. Supports SNMP v1/2c/v3, thread-safety, and many more
- AGENT++
The AGENT++ C++ framework provides a complete tri-lingual SNMP v1/2c/3 protocol engine and dispatcher for the development of SNMP agents. Apache licensed
- AgentX++
The AgentX++ C++ framework provides a complete AgentX protocol (RFC 2741) implementation that adds AgentX master and sub-agent support to AGENT++ ( )
- openSNMP
BSD licensed multi-threaded implementation of SNMPv3
Libraries / C#
C# SNMP Library
MIT licensed SNMP library for .NET with extensive SNMP standard support, latest .NET platform targets, as well as rich manager/agent samples
- SNMP Pro
Commercial extension that adds enterprise MIB support
SnmpSharpNet
Simple Network Management Protocol (SNMP) .Net library written in C# (csharp). Implements protocol version 1, 2 and 3
Libraries / Erlang
- Erlang/OTP SNMP
SNMP development is included as a component of the Erlang/Open Telecom Platform development environment
Libraries / Go
gosnmp/gosnmp
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
sleepinggenius2/gosmi
MIB parser in Go language
posteo/go-agentx
A library with a pure Go implementation of the AgentX-Protocol
Libraries / Java
- SNMP4J
SNMP4J is an enterprise class, free open source, and state-of-the-art SNMP v1/2c/v3 implementation for Java™
- SNMP4J-Agent
SNMP4J-Agent is a Java™ API on top of the core SNMP4J API for the development of SNMP agents (command responders)
- joeSNMP
joeSNMP is an open-source Java SNMP class library published under the LGPL
- Westhawk's SNMP
An open-sourced Java library that can be used for SNMP v1/v2c/v3. Supports traps, authentication and privacy. As authentication protocols it offers MD5 and SHA1
mibble
Mibble is an open-source SNMP MIB (or SMI) parser library for Java
Libraries / JavaScript
node-net-snmp
JavaScript implementation of the Simple Network Management Protocol (SNMP), implements versions 1, 2c and 3
node-snmp-native
Native JavaScript SNMP library for Node.js
node-snmpjs
This package provides a toolkit for SNMP agents and management applications in Node.js
snmp-node
Native JavaScript SNMP library for Node.js
Libraries / Lua
luasnmp
Lua binding to net-snmp library
Libraries / PHP
- php.net/SNMP
This is an SNMP extension for PHP, which is a wrapper around the net-snmp library
FreeDSx/SNMP
A Pure PHP SNMP Library
opensolutions/OSS_SNMP
A PHP SNMP library for people who hate SNMP, MIBs and OIDs!
Libraries / Python
pysnmp
This is a pure-Python, open source and free implementation of v1/v2c/v3 SNMP engine distributed under 2-clause BSD license
Libraries / Python / pysnmp
the original repo
This project is derived from
Libraries / Python
pysmi
PySMI is a pure-Python implementation of SNMP SMI MIB parser
Libraries / Python / pysmi
the original repo
This project is derived from
Libraries / Python
gufo_snmp
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 fast, especially when querying many devices
- net-snmp Python bindings
Net-SNMP 5.4 and later contains Python bindings in the "python" sub-directory, though, they are not built by default
easysnmp
A fork of that attempts to bring a more Pythonic interface to the library
puresnmp
Pure Python3 SNMPv2 library without any dependencies
snimpy
Snimpy is a Python-based tool providing a simple interface to build SNMP query
python-netsnmpagent
This package allows to write net-snmp subagents in Python
hnmp
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
aiosnmp
Python package aiosnmp is an asynchronous SNMP client for use with asyncio. Only SNMP v2c is supported
robotframework-snmplibrary
SNMPLibrary is a Robot Framework test library for testing SNMP
Scapy
Packet manipulation program & library. Scapy has a to build/dissect SNMP packets
Libraries / Ruby
ruby-netsnmp
SNMP library in ruby (v1, v2c, v3)
Libraries / Rust
snmp-parser
SNMP parser written in rust with nom parser combinator framework
davedufresne/modern_snmp
Modern SNMP is a pure-Rust library for SNMPv3. This repository includes snmp_mp (SNMPv3 Message Processing) and snmp_usm (Implementation of the User-based Security Model (USM) for SNMPv3) crates
Svedrin/sunt
This repository implements an SNMP Agent written in Rust
Tools / CLIs
- net-snmp tools
The applications listed here are part of net-snmp
Tools / CLIs / net-snmp tools
- encode_keychange
Produces the KeyChange string for SNMPv3
- snmptranslate
Translates MIB OID names between numeric and textual forms
- snmpget
Communicates with a network entity using SNMP GET requests
- snmpgetnext
Communicates with a network entity using SNMP GETNEXT requests
- snmpbulkget
Communicates with a network entity using SNMP GETBULK requests
- snmpwalk
Retrieves a subtree of management values using SNMP GETNEXT requests
- snmpbulkwalk
Retrieves a subtree of management values using SNMP GETBULK requests
- snmpset
Communicates with a network entity using SNMP SET requests
- snmptest
Communicates with a network entity using SNMP requests
- snmptable
Retrieve an SNMP table and display it in tabular form
- snmpdelta
Monitor delta differences in SNMP Counter values
- snmpusm
Manipulates the SNMPv3 User-based-security user table
- snmpvacm
Manipulates the SNMPv3 View-based-access-control-module configuration tables
- snmpstatus
Retrieves a fixed set of management information from a network entity
- snmpnetstat
Display networking status and configuration information from a network entity via SNMP
- snmpdf
Displays disk information like the unix df tool using information collected from SNMP
- snmptrap
Sends SNMP TRAP or INFORM notification messages
- snmpinform
Send INFORM notification messages. snmpinform command is functionally the same as snmptrap -Ci
- snmptrapd
An SNMP daemon that listens for SNMP TRAPs or INFORMs and logs or acts upon them
- traptoemail
This an snmptrapd handler script to convert snmp traps into emails
- net-snmp-config
Returns information about installed net-snmp libraries and binaries
- snmpconf
Creates and modifies SNMP configuration files
- fixproc
Fixes a process by performing the specified action
- snmpd
An SNMP agent that responds to SNMP requests for a given host
- mib2c
A MIB conversion utility that can translate MIB structures into other forms, such as C-code
- mib2c-update
This a script to merge custom code into updated mib2c code
Tools / CLIs
- SNMP4JCLT
Use the SNMP4J Command Line Tool (CLT) to send SNMPv1/v2c/v3 requests and traps to a target with IPv4 or v6 based UDP, TCP, or TLSv1,2 transport ( )
- libsmi tools
Applications built on top of libsmi and an sh/awk script that are integrated with the libsmi distribution
Tools / CLIs / libsmi tools
- smilint
This is used to check MIB or PIB modules for syntax errors and semantics at some degree. SMIv1/v2 style MIB modules as well as SPPI PIB modules are supported
- smidump
This is a MIB/PIB compiler. It allows to dump the contents of a module in various formats: SMIv1, SMIv2, SMIng, SPPI, Import Trees, Type Definition Trees, OID Node Trees, MOSY Style, and CORBA IDL definitions according to the JIDM Specs, and others
- smidiff
This is a tool that parses two revisions of a MIB module and analyzes the modifications from the old to the new revision
- smiquery
This is a MIB/PIB query front end. It can be used to query single items from the command line
- smistrip
This is a simple shell/awk script that allows to extract MIB and PIB modules from documents, such as RFCs or Internet Drafts
Tools / CLIs
snmpsim
This is a pure-Python, open source and free implementation of SNMP agents simulator distributed under 2-clause BSD license
snmpfwd
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
snmpclitools
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 for more details
snmpwn
SNMPwn is an SNMPv3 user enumerator and attack tool
trapperkeeper
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
- SNMP Trap Translator
SNMPTT (SNMP Trap Translator) is an SNMP trap handler written in Perl for use with the Net-SNMP / UCD-SNMP snmptrapd program ( )
Tools / CLIs / SNMP Trap Translator
- snmptt
SNMPTT (SNMP Trap Translator) is an SNMP trap handler written in Perl for use with the Net-SNMP / UCD-SNMP snmptrapd program ( ). SNMPTT supports Linux, Unix and Windows
- snmpttconvert
Some vendors provide a file that can be imported into HP Openview using a HP Openview utility. snmpttconvert is a simple Perl script which will convert one of these files into the format used by snmptt
- snmpttconvertmib
The snmpttconvertmib is a Perl script which will read a MIB file and convert the TRAP-TYPE (v1) or NOTIFICATION-TYPE (v2) definitions into a configuration file readable by snmptt
Tools / CLIs
prometheus/snmp_exporter
This exporter is the recommended way to expose SNMP data in a format which Prometheus can ingest
trailofbits/onesixtyone
Fast SNMP Scanner
SECFORCE/SNMP-Brute
Fast SNMP brute force, enumeration, CISCO config downloader and password cracking script
hatlord/snmpwn
An SNMPv3 User Enumerator and Attack tool
zabbix-tools/mib2zabbix
This Perl script will generate a Zabbix v3 Template in XML format from an OID tree in a SNMP MIB file
OIDrage
A lightweight standalone SNMPd mimic server based on any snmpwalk output. Easily scales to mock thousands of servers
Tools / GUIs
- tkmib
A perl/Tk interactive graphical MIB browser for SNMP
- agentpp/MIB Designer
Use MIB Designer to create, edit, manage, and explore SMI specifications ( )
- agentpp/MIB Explorer Pro
Use MIB Explorer to browse, configure, test&debug, monitor, and discover SNMPv1/2c/3 entities
- sharpsnmp/SNMP Pro
A family of .NET based SNMP products, including the commercial MIB Compiler, MIB Assembly, and the open source Library
- paessler/snmptester
This tool enables you to debug SNMP activities to find communication and/or data issues in SNMP monitoring configurations. Windows
- ireasoning/MIB Browser
This tool allows users to load standard, proprietary MIBs, and even some mal-formed MIBs. It also allows them to issue SNMP requests to retrieve agent's data, or make changes to the agent. Free for personal use
- ireasoning/SNMP Agent Simulator
Free SNMP Agent Simulator Java based application that can simulate SNMPv1/v2c/v3 agents
Visual SNMP
Visual SNMP is a simple tool for testing access to SNMP agents. Currently SNMPGET and SNMPWALK are supported with some limited funcionality
- muonics/Online MIB validator
Free online MIB/PIB Validator based on MIB Smithy SDK
toni-moreno/snmpcollector
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
- Unbrowse SNMP
Unbrowse SNMP is a tool that helps to compile cryptic MIB files into an easy GUI view, retrieve and set MIB variables on devices, import snmpwalk dumps, receive traps, chart counters, and much more
Publications / Books
- The Networknomicon, or SNMP Mastery by Abdul Alhazred and Michael W. Lucas
The Simple Network Management Protocol, SNMP, empowers you to invoke ancient standards from the void. SNMP exposes the secrets of your network and servers, and--if you're careless--reconfigures them into unspeakable nightmares. It exposes your inadequate brain to the vast alien dimensions underlying modern computing
- SNMP Mastery by Michael W. Lucas
SNMP, Simple Network Management Protocol, Four lies in one acronym?
- SNMP MIB Handbook by Larry Walsh
Essential Guide to SNMP MIB Development, Use, and Diagnosis
- Mauro, D. and Schmidt, K., 2005. Essential SNMP: Help for System and Network Administrators. " O'Reilly Media, Inc.".
Essential SNMP explores both commercial and open source packages, and elements like OIDs, MIBs, community strings, and traps are covered in depth. The book contains five new chapters and various updates throughout
- Snmp, Snmpv2, Snmpv3, and Rmon 1 and 2 by William Stallings
Presents a concise, focused & practical guide to SNMP-based network & internetwork management for network administrators, managers, & designers
- Perkins, D. and McGinnis, E., 1997. Understanding SNMP MIBs (p. 528). Englewood Cliffs: Prentice Hall PTR.
The first complete, practical insider's guide to writing SNMP MIBs
Publications / RFCs
- rfc1098
A Simple Network Management Protocol (version 1)
- rfc1155
Structure and Identification of Management Information
- rfc2578
Structure of Management Information Version 2 (SMIv2)
- rfc2741
Agent Extensibility (AgentX) Protocol Version 1
- rfc2742
Definitions of Managed Objects for Extensible SNMP Agents
- rfc3410
Introduction and Applicability Statements for Internet Standard Management Framework
- rfc3411
An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks
- rfc3412
Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)
- rfc3413
Simple Network Management Protocol (SNMP) Applications
- rfc3414
User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)
- rfc3415
View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)
- rfc3416
Version 2 of the Protocol Operations for the Simple Network Management Protocol (SNMP)
- rfc3417
Transport Mappings for the Simple Network Management Protocol (SNMP)
- rfc3418
Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)
- rfc3584
Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework
- rfc3826
The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model
- rfc4088
Uniform Resource Identifier (URI) Scheme for the Simple Network Management Protocol (SNMP)
- rfc5343
Simple Network Management Protocol (SNMP) Context EngineID Discovery
- rfc5590
Transport Subsystem for the Simple Network Management Protocol (SNMP)
- rfc5591
Transport Subsystem for the Simple Network Management Protocol (SNMP)
- rfc5592
Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)
- rfc7630
HMAC-SHA-2 Authentication Protocols in the User-based Security Model (USM) for SNMPv3
Publications / Tutorials
- net-snmp tutorials
This Wiki page contains various tutorials ranging from the basics of SNMP protocol to implementation of SNMP applications and agents using net-snmp library
Public servers
- snmp.ireasoning.com
Free public an SNMP agent for testing purpose
MIB repositories
hsnodgrass/snmp_mib_archive
An archive of over 3000 unique SNMP MIBs
kcsinclair/mibs
Another collection of MIBS used for SNMP. Make sure to clone the repository to see the full list of MIBs
- mibdepot.com
mibDepot is a free service to the SNMP community and offers a dictionary of MIBs and a unique-in-the-industry Search Engine with over 12,000 SNMP MIBs representing over 1,800,000 MIB object definitions
- oid-info.com
This OID repository gathers information about Object Identifiers (OIDs), and provides tools to display, update and search for this information
- michaelfmcnamara.com
Hand-curated list of MIBs by Michael McNamara
- snmplink.org/OnLineMIB
This website shows documentation of a set of MIBs with a built-in MIB viewer
MIB repositories / snmplink.org/OnLineMIB
- OnLineMIB/Standards
Standard: (ATM Forum, IANA, RFC) - RFC1065-5324
- OnLineMIB/Cisco
Cisco
- OnLineMIB/Juniper
Juniper
- OnLineMIB/Extreme
Extreme
- OnLineMIB/Brocade
Brocade
MIB repositories
- oidview.com/mibs
This repository contains over 7000 unique MIBs from various vendors
Miscellaneous
- SNMPLink.org
SNMPlink.org provides links and information about SNMP, MIB (Management Information Base), Network Management and Network Monitoring
- SNMPTools.net
SNMPTools.net provides links and information about SNMP applications, toolkits, gateways, simulators, MIB browsers and many more
Nothing in this list matches your filter.
Featured in 2 awesome lists
Each link jumps to the spot where the list mentions awesome-snmp.