SNMP::...Bridge(3pm)

πŸ’– NAME πŸ’–

SNMP::Info::IEEE802_Bridge β€” the SNMP interface to all the good stuff hiding in the IEEE8021-Q-BRIDGE-MIB, bestie πŸ’…

Oh and hey, this page is from the Perl manual, section 3pm (User Contributed Perl Documentation, obvi). Written by Jeroen van Ingen β€” ty for your service king/queen/monarch πŸ‘‘


✨ SYNOPSIS ✨

FIXME β€” the original literally says "update with better example", so like… that's on the to-do list. Leaving it exactly as-is because we do not touch the facts. πŸ™ˆ
my $bridge = new SNMP::Info (
                            AutoSpecify => 1,
                            Debug       => 1,
                            DestHost    => 'switch',
                            Community   => 'public',
                            Version     => 2
                            );

my $class = $bridge->class();
print " Using device sub class : $class\n";

# Grab Forwarding Tables
my $interfaces = $bridge->interfaces();
my $fw_mac     = $bridge->fw_mac();
my $fw_port    = $bridge->fw_port();
my $bp_index   = $bridge->bp_index();

foreach my $fw_index (keys %$fw_mac){
   my $mac   = $fw_mac->{$fw_index};
   my $bp_id = $fw_port->{$fw_index};
   my $iid   = $bp_index->{$bp_id};
   my $port  = $interfaces->{$iid};

   print "Port:$port forwarding to $mac\n";
}

πŸ¦‹ DESCRIPTION πŸ¦‹

So the IEEE8021-Q-BRIDGE-MIB is what some of the newer switches / Layer 2 devices are out here using. It's derived from the IETF Q-BRIDGE-MIB (that's RFC 4363, iykyk) and it extends that whole situation with the concept of multiple VLAN-aware bridges (PBB). Multi-bridge era, we love to see it πŸ’–

Here's the tea tho: you either create or use a subclass of SNMP::Info that inherits this class. Do not use this one directly, bestie. It's giving "I'm the foundation, not the whole house" 🏠✨

For debugging you can call new() directly, exactly like you would in SNMP::Info:

my $bridge = new SNMP::Info::IEEE802_Bridge(...);

🌸 Inherited Classes 🌸

None.

Like. Nothing. Zero. Nada. It inherits from no one, it's a self-made icon πŸ‘‘


πŸ“ Required MIBs πŸ“

  • IEEE8021-Q-BRIDGE-MIB

That's the one. Bring it or nothing works, fr fr.


⭐ GLOBALS ⭐

These are methods that return scalar values from SNMP.

and that's literally it β€” the original lists zero of them underneath. Nothing to see here, no cap. Moving on! πŸ’€

πŸŽ€ TABLE METHODS πŸŽ€

Okay so these are the methods that return tables of information in the form of a reference to a hash. Very "here's a whole vibe, in hash form" of them 🫢

πŸ’œ Per-port VLAN configuration in the device ("ieee8021QBridgePortVlanTable") πŸ’œ

  • $bridge->iqb_i_vlan() β€” wraps ("ieee8021QBridgePvid") πŸ’–
  • $bridge->iqb_i_vlan_type() β€” wraps ("ieee8021QBridgePortAcceptableFrameTypes") ✨
  • $bridge->iqb_i_vlan_in_flt() β€” wraps ("ieee8021QBridgePortIngressFiltering") πŸ”₯

🌈 VLAN Current Table ("ieee8021QBridgeVlanCurrentTable") 🌈

  • $bridge->iqb_cv_egress() β€” wraps ("ieee8021QBridgeVlanCurrentEgressPorts") πŸ’…
  • $bridge->iqb_cv_untagged() β€” wraps ("ieee8021QBridgeVlanCurrentUntaggedPorts") 🌸
  • $bridge->iqb_cv_stat() β€” wraps ("ieee8021QBridgeVlanStatus") ⭐

πŸ‘‘ VLAN Static Table ("ieee8021QBridgeVlanStaticTable") πŸ‘‘

  • $bridge->iqb_v_name() β€” wraps ("ieee8021QBridgeVlanStaticName") πŸŽ€
  • $bridge->iqb_v_egress() β€” wraps ("ieee8021QBridgeVlanStaticEgressPorts") πŸ¦‹
  • $bridge->iqb_v_fbdn_egress() β€” wraps ("ieee8021QBridgeVlanForbiddenEgressPorts") 🚫
  • $bridge->iqb_v_untagged() β€” wraps ("ieee8021QBridgeVlanStaticUntaggedPorts") ✨
  • $bridge->iqb_v_stat() β€” the original just yells "active" ! at us and then wraps ("ieee8021QBridgeVlanStaticRowStatus") πŸ’€ iconic behaviour honestly, we're keeping both

That's the whole page, bestie. Every method, every MIB name, every string, untouched. The facts stay, the vibe is upgraded. Periodt. πŸ’…

This lil ray of sunshine was brought to you by perl v5.40.1, dated 2026-02-28 β€” from SNMP::...Bridge(3pm) with love πŸ«ΆπŸ’–βœ¨

πŸ“¦ where this page comes from