Cyber city, digital technology and Information Security. Big data concept in 3D illustration. Neural networks, blockchain, database in world of future

Unravelling SNMP Trap Varbind Translation with Cribl

Last edited: January 21, 2025

Nobody dreams about SNMP traps. Well, maybe not nobody, but certainly not very many people! They’re not glamorous, they’re not fun, and they’re not the kind of thing that gets people excited – at least until they are translated into a more understandable format and they tell you that your infrastructure is broken. The problem is, dealing with traps is a chore, thanks to obscure numeric OIDs, encoded varbinds, and tools that feel like they belong in the late 80s. Retro style doesn’t translate well to enterprise tooling.

unnamed.png

If you’ve ever squinted at a trap payload, desperately trying to decipher varbind objects, MIB imports, or the difference between TRAP-TYPE and NOTIFICATION-TYPE (hint: they are the same thing!), then this post is for you. Let’s break down why SNMP traps are such a pain—and how Cribl’s SNMP Trap Varbind Translation Pack makes them manageable, actionable, and, dare we say…useful.

Why SNMP Traps Are a Nightmare

SNMP traps are the messaging system of choice for countless network devices and appliances. They’re concise and efficient—just like the standards they’re built on. But that efficiency comes at a price: human readability. Traps are packed with numeric Object Identifiers (OIDs) that might as well be hieroglyphics. Without translation, a trap may look like the one below when logged in snmptrapd – and that output is even truncated.

2024-12-18 10:00:00 traps-edge [UDP: [traps-edge]:162->[snmptrapd]] TRAP2, SNMP v2c, community public

SNMPv2-MIB::snmpTrapOID.0 = OID: 1.3.6.1.4.1.9.9.599.0.9; 1.3.6.1.4.1.9.9.599.1.2.26.0 = Timeticks: (2291715600) 265 days, 16:21:56.00; 1.3.6.1.4.1.9.9.599.1.2.9.0 = INTEGER: 5; 1.3.6.1.4.1.9.9.599.1.2.17.0 = STRING: "100.14.37.123"; 1.3.6.1.4.1.9.9.599.1.3.1.1.1.0 = STRING: "a2:cf:62:c1:af:fe"; 1.3.6.1.4.1.9.9.599.1.3.1.1.5.0 = STRING: "10.5.5.5"; 1.3.6.1.4...

What does that mean? If you’re fluent in SNMP OIDs—or enjoy spending hours combing through MIBs (Management Information Bases)—you might figure it out. If that doesn’t sound like an exciting afternoon, it’s an exercise in frustration.

What’s worse? The MIB above, CISCO-LWAPP-DOT11-CLIENT-MIBhas more than 50 unique varbind objects that add context to traps, including the OID 1.3.6.1.4.1.9.9.599.0.9 from the example. When what you really want to know is when a wireless client connects to an access point using the ciscoLwappDot11ClientAssocTrap notification is the way to do it, but now you’re stuck trying to decode more than the trap name and every supporting detail.

Cribl’s Journey with SNMP Traps: From Serialize to Translation

At Cribl, we’ve been thinking about SNMP traps for a while and working with some of our largest customers to make handling SNMP traps easier. But our SNMP Trap Serialize Function is a game-changer, solving the missing host IP issue by adding back the .1.3.6.1.6.3.18.1.3 OID with the correct host IP missing from the v2c and v3 trap payload. This allows enterprises to assign traps to the right source IP—a huge win for distributed environments where traps could come from anywhere in the network, not just the same subnet as the centralized trap receiver.

But once we helped organizations capture the correct source IP, a new question emerged: “How do I make sense of the rest of this trap?” That’s where the SNMP Trap Varbind Translation Pack comes in.

A Universal Decoder Ring

This Cribl Pack tackles the problem of making traps human-readable. It transforms cryptic OIDs into something that doesn’t require an SNMP PhD to understand. Here’s how it works:

  • OID Decoding: The pack uses a Lookup, built from 15000+ MIBs, that contains more than 92000 unique OIDs

    • Example: .1.3.6.1.4.1.31023.1.1.1.0.1 is the trap named OnBackupJobCompleted

  • Varbind Translation: It labels and contextualizes all the variables included in the trap, automatically translating OIDs to varbind objects as field:value

    • Example: Trap varbind OID .1.3.6.1.4.1.31023.1.1.101 is translated into backupJobId:job001

The result is a normalized, translated trap that fits seamlessly into your observability workflows. You don’t have to be Ralphie, even if you do have a secret decoder ring for traps and varbinds.

unnamed.png

Why SNMP Trap Varbind Translation Matters

Enterprises can process millions of SNMP traps daily, with most traps dropped or discarded after being processed by large fleets of trap parsing infrastructure mainly dedicated to the single task of trap parsing. By translating OIDs and enriching data with Cribl Stream, the SNMP Trap Varbind Translation Pack will help reduce the toil of varbind translation, enable trap-consuming teams to make better-informed decisions and make sending traps to disparate systems easier.

Imagine this: Instead of a flood of cryptic alerts, your team sees a simple message like:

[Device: Router-01] Interface eth0 is down. Critical.

Better yet, you didn’t need to parse a MIB to do it either. Now, that’s something you can act on.

unnamed.png

How to Use the SNMP Trap Varbind Translation Pack

Getting started with the Pack is straightforward:

Yeah, it is that easy. You take an ugly jumble of OIDs and values (on the left side) and turn it into something super easy to parse for any tool or team, even if they don’t understand the nuances of OIDs, MIBs, and ASN.1 notation.

unnamed.png

Adding a new trap OID is easy, too, though it does mean having to dig into the MIB using tools like snmptranslate or pysnmp to get the OID and varbind objects into a CSV format like the one below. Don’t worry, the ciscoWirelessMOStatusNotification is included in the Pack!

"oid", "oidName", "mibName", "objects",

"1.3.6.1.4.1.9.9.712.0.1", "ciscoWirelessMOStatusNotification", "CISCO-WIRELESS-NOTIFICATION", "cWNotificationTimestamp|{more_varbind_objects}"

How Cribl Stands Out

If you are reading this article, you already know the pains of managing MIBs for SNMP traps. I’ve used tools that parse MIBs and then allow you to map OIDs to strings with a GUI manually. I’ve used tools entirely managed via YAML and other configuration files, and I still shudder when I think about the cryptic language we used to describe what we were doing with traps. And, as the author of the Cribl Pack for SNMP traps, I’ve used Python and shell scripts to parse MIBs into a usable format, stitching together pysnmp output with manual touches to refine the output.

The Cribl approach is different, starting with the SNMP trap pack. You have more than 92000 unique trap OIDs, and mapping the varbinds happens automatically when you find a match. No picking varbinds one-by-one, managing YAML syntax, or toying around with Python for a few weekends … OK, maybe that last one only applies to me, but you get the idea! Use this Pack as the starting point for your SNMP trap parsing future and “salt to taste” as any good recipe deserves.

Take Control of Your SNMP Traps Today

Whether you’re dealing with a small network or a sprawling hybrid environment, SNMP traps don’t have to be a black box. The SNMP Trap Varbind Translation Pack transforms ASN.1 formatted data into enriched events, saving your team time and improving your MTTR.

Download the Pack today and start making sense of your traps. Because OIDs shouldn’t be a mystery—they should be part of your observability strategy.

Cribl, the Data Engine for IT and Security, empowers organizations to transform their data strategy. Customers use Cribl’s suite of products to collect, process, route, and analyze all IT and security data, delivering the flexibility, choice, and control required to adapt to their ever-changing needs.

We offer free training, certifications, and a free tier across our products. Our community Slack features Cribl engineers, partners, and customers who can answer your questions as you get started and continue to build and evolve. We also offer a variety of hands-on Sandboxes for those interested in how companies globally leverage our products for their data challenges.

More from the blog

get started

Choose how to get started

See

Cribl

See demos by use case, by yourself or with one of our team.

Try

Cribl

Get hands-on with a Sandbox or guided Cloud Trial.

Free

Cribl

Process up to 1TB/day, no license required.