Track Awesome Snmp Updates Daily
A curated list of awesome SNMP libraries, tools, and other resources.
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 eozer/awesome-snmp · ⭐ 73 · 🏷️ Networking
Mar 15, 2024
Libraries / Python
- gufo_snmp (⭐5) - 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.
- easysnmp (⭐206) - A fork of net-snmp Python bindings that attempts to bring a more Pythonic interface to the library.
Feb 03, 2023
Libraries / Go
- sleepinggenius2/gosmi (⭐90) - MIB parser in Go language.
Dec 29, 2022
Tools / CLIs
- OIDrage (⭐3) - A lightweight standalone SNMPd mimic server based on any snmpwalk output. Easily scales to mock thousands of servers.
Jun 19, 2022
Libraries / Python
- Scapy (⭐9.9k) - Packet manipulation program & library. Scapy has a module (⭐9.9k) to build/dissect SNMP packets.
Mar 03, 2022
Tools / GUIs
- 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.
Feb 27, 2022
Tools / GUIs
- toni-moreno/snmpcollector (⭐281) - 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.
Feb 26, 2022
Libraries / PHP
- opensolutions/OSS_SNMP (⭐106) - A PHP SNMP library for people who hate SNMP, MIBs and OIDs!
Tools / CLIs
- trailofbits/onesixtyone (⭐454) - Fast SNMP Scanner.
- SECFORCE/SNMP-Brute (⭐288) - Fast SNMP brute force, enumeration, CISCO config downloader and password cracking script.
- hatlord/snmpwn (⭐229) - An SNMPv3 User Enumerator and Attack tool.
- zabbix-tools/mib2zabbix (⭐167) - This Perl script will generate a Zabbix v3 Template in XML format from an OID tree in a SNMP MIB file.
Publications / Books
- 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.
Public servers / Tutorials
- snmp.ireasoning.com - Free public an SNMP agent for testing purpose.
MIB repositories / Tutorials
- oidview.com/mibs - This repository contains over 7000 unique MIBs from various vendors.
Feb 24, 2022
Libraries / Lua
- luasnmp (⭐10) - Lua binding to net-snmp library.
Tools / GUIs
- ireasoning/SNMP Agent Simulator - Free SNMP Agent Simulator Java based application that can simulate SNMPv1/v2c/v3 agents.
Feb 23, 2022
Tools / CLIs
- prometheus/snmp_exporter (⭐1.5k) - This exporter is the recommended way to expose SNMP data in a format which Prometheus can ingest.
Feb 22, 2022
Libraries / PHP
- php.net/SNMP - This is an SNMP extension for PHP, which is a wrapper around the net-snmp library.
- FreeDSx/SNMP (⭐56) - A Pure PHP SNMP Library.
Tools / CLIs
- 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 (www.net-snmp.org).
- snmptt - SNMPTT (SNMP Trap Translator) is an SNMP trap handler written in Perl for use with the Net-SNMP / UCD-SNMP snmptrapd program (www.net-snmp.org). 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 / GUIs
- muonics/Online MIB validator - Free online MIB/PIB Validator based on MIB Smithy SDK.
MIB repositories / Tutorials
- hsnodgrass/snmp_mib_archive (⭐170) - An archive of over 3000 unique SNMP MIBs.
- kcsinclair/mibs (⭐61) - 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.
- OnLineMIB/Standards - Standard: (ATM Forum, IANA, RFC) - RFC1065-5324.
- OnLineMIB/Cisco - Cisco.
- OnLineMIB/Juniper - Juniper.
- OnLineMIB/Extreme - Extreme.
- OnLineMIB/Brocade - Brocade.
Feb 20, 2022
Tools / GUIs
- Visual SNMP (⭐12) - Visual SNMP is a simple tool for testing access to SNMP agents. Currently SNMPGET and SNMPWALK are supported with some limited funcionality.
Miscellaneous / Tutorials
- 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.
Feb 18, 2022
Libraries / Python
- robotframework-snmplibrary (⭐12) - SNMPLibrary is a Robot Framework test library for testing SNMP.
Feb 17, 2022
Tools / CLIs
- net-snmp tools - The applications listed here are part of net-snmp.
- 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.
Feb 15, 2022
Libraries / Erlang
- Erlang/OTP SNMP - SNMP development is included as a component of the Erlang/Open Telecom Platform development environment.
Feb 14, 2022
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?
Feb 13, 2022
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.
Feb 12, 2022
Libraries / Python
- aiosnmp (⭐44) - Python package aiosnmp is an asynchronous SNMP client for use with asyncio. Only SNMP v2c is supported.
Libraries / Rust
- davedufresne/modern_snmp (⭐21) - 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 (⭐25) - This repository implements an SNMP Agent written in Rust.
Feb 11, 2022
Libraries / Go
- posteo/go-agentx (⭐53) - A library with a pure Go implementation of the AgentX-Protocol.
Libraries / Python
- pysnmp (⭐556) - This is a pure-Python, open source and free implementation of v1/v2c/v3 SNMP engine distributed under 2-clause BSD license.
- This project has been abandoned due to the death of the sole maintainer (⭐556).
- Some forks have been created to continue the project and the ecosystem around it. See here (⭐556).
- The leading fork seems to be lextudio/pysnmp (⭐46).
- There is also a community fork (⭐45) under active development, but it is not clear if that project is commited to maintaining all the associated repos, documentation, and websites.
- pysmi (⭐127) - PySMI is a pure-Python implementation of SNMP SMI MIB parser.
- Abandoned for the same reason as the above pysnmp project. See lextudio/pysmi (⭐2).
- 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.
- puresnmp (⭐74) - Pure Python3 SNMPv2 library without any dependencies.
- snimpy (⭐184) - Snimpy is a Python-based tool providing a simple interface to build SNMP query.
- python-netsnmpagent (⭐67) - This package allows to write net-snmp subagents in Python.
- hnmp (⭐49) - 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.
Libraries / Ruby
- ruby-netsnmp (⭐33) - SNMP library in ruby (v1, v2c, v3).
Libraries / Rust
- snmp-parser (⭐41) - SNMP parser written in rust with nom parser combinator framework.
Tools / CLIs
- snmpsim (⭐362) - This is a pure-Python, open source and free implementation of SNMP agents simulator distributed under 2-clause BSD license.
- snmpfwd (⭐66) - 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 (⭐52) - 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.
- snmpwn (⭐229) - SNMPwn is an SNMPv3 user enumerator and attack tool.
- trapperkeeper (⭐81) - 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.
Tools / GUIs
- 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.
Feb 08, 2022
Tools / CLIs
- libsmi tools - Applications built on top of libsmi and an sh/awk script that are integrated with the libsmi distribution.
- 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.
Feb 07, 2022
Tools / GUIs
- paessler/snmptester - This tool enables you to debug SNMP activities to find communication and/or data issues in SNMP monitoring configurations. Windows.
Feb 06, 2022
Libraries / C#
- sharpSNMP (⭐341) - MIT licensed SNMP library for .NET/Xamarin/Mono.
- SnmpSharpNet (⭐78) - Simple Network Management Protocol (SNMP) .Net library written in C# (csharp). Implements protocol version 1, 2 and 3.
Libraries / Java
- 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 (⭐110) - Mibble is an open-source SNMP MIB (or SMI) parser library for Java.
Tools / GUIs
- agentpp/MIB Designer - Use MIB Designer to create, edit, manage, and explore SMI specifications (
Commercial
).
- 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.
Feb 05, 2022
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++ (
Commercial
).
- openSNMP - BSD licensed multi-threaded implementation of SNMPv3.
Libraries / Go
- gosnmp/gosnmp (⭐1.1k) - 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.
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).
Libraries / JavaScript
- node-net-snmp (⭐191) - JavaScript implementation of the Simple Network Management Protocol (SNMP), implements versions 1, 2c and 3.
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 (
Commercial
).
Tools / GUIs
- tkmib - A perl/Tk interactive graphical MIB browser for SNMP.
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.
Feb 04, 2022
Libraries / JavaScript
- node-snmp-native (⭐247) - Native JavaScript SNMP library for Node.js.
- node-snmpjs (⭐111) - This package provides a toolkit for SNMP agents and management applications in Node.js.
- snmp-node (⭐2) - Native JavaScript SNMP library for Node.js.