SNMP::...CiscoSB(3pm)

πŸ’– SNMP::Info::Layer2::CiscoSB πŸ’–

okay bestie, so this is the Perl module SNMP::Info::Layer2::CiscoSB β€” it's your SNMP interface to the Cisco Small Business series of switches. yes, the little ones. they're cute. they're also managed. let's go πŸ¦‹


🌸 AUTHOR 🌸

Nic Bernstein β€” and, quoting the man himself, shamelessly stolen from Max Baker's Aironet code. the audacity?? iconic. 🫢


✨ SYNOPSIS ✨

the vibe here is: let SNMP::Info figure out which subclass you actually need, because you are not about to guess manually πŸ’…

# Let SNMP::Info determine the correct subclass for you.
my $ciscosb = new SNMP::Info(
                         AutoSpecify => 1,
                         Debug       => 1,
                         DestHost    => 'myswitch',
                         Community   => 'public',
                         Version     => 2
                       )
   or die "Can't connect to DestHost.\n";

my $class      = $ciscosb->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";

πŸŽ€ DESCRIPTION πŸŽ€

This gives you an interface to all the SNMP data living on Cisco Small Business managed switches β€” and yes, "nee LinkSys", so if you're old enough to remember when they were LinkSys, hi, love you. basically it's for anything matching:

enterprises(1).cisco(9).otherEnterprises(6).ciscosb(1)

that OID right there is the vibe check. if your device matches it, you're home. 🏠✨

🌈 Inherited Classes

  • SNMP::Info::CDP
  • SNMP::Info::CiscoConfig
  • SNMP::Info::CiscoStats
  • SNMP::Info::EtherLike
  • SNMP::Info::Layer2

πŸ“š Required MIBs

  • CISCOSB-DEVICEPARAMS-MIB
  • CISCOSB-POE-MIB

🧬 Inherited Classes

and also all the MIBs that the inherited classes listed above need. you don't get to skip those, bestie, they're a package deal 🫢


πŸ‘‘ GLOBALS πŸ‘‘

these are the methods that hand you back a scalar value straight from SNMP. little snack-sized facts about your switch.

  • $ciscosb->mac() β€” returns the mac, pulled from "rndBasePhysicalAddress".
  • $ciscosb->os_ver() β€” returns the software version, straight from "entPhysicalSoftwareRev".
  • $ciscosb->serial() β€” returns the serial number of the unit, from "entPhysicalSerialNum".
  • $ciscosb->model() β€” returns the model and the hardware revision of the unit, from "entPhysicalModelName+entPhysicalHardwareRev". yes, both, glued together, that's just how it is.

πŸ’… Overrides

  • $ciscosb->vendor() β€” returns 'cisco'.
  • $ciscosb->os() β€” returns 'ros'.

🌟 Globals imported from SNMP::Info::Layer2

the details live in "GLOBALS" in SNMP::Info::Layer2 β€” go read that, it's giving thorough.

🌟 Globals imported from SNMP::Info::EtherLike

same deal, but for "GLOBALS" in SNMP::Info::EtherLike.


🌼 TABLE METHODS 🌼

  • $ciscosb->peth_port_power() β€” the power being supplied by the PoE ports, measured in milliwatts. it comes from "rlPethPsePortOutputPower". no cap, your ports are out here feeding devices πŸ“
  • $ciscosb->i_duplex() β€” returns the duplex, and it figures that out based on whatever EtherLike->el_duplex() came back with. it's a chain, bestie, we respect the chain.

πŸ’… Overrides

  • $ciscosb->interfaces() β€” uses the i_name() field. that's the whole thing. simple. effective. periodt.

🌟 Table Methods imported from SNMP::Info::Layer2

see "TABLE METHODS" in SNMP::Info::Layer2 for the full rundown.

🌟 Table Methods imported from SNMP::Info::EtherLike

and see "TABLE METHODS" in SNMP::Info::EtherLike for all of that too πŸ’œ


heads up bestie: everything here is a straight-up interface to what's in those MIBs. if a device doesn't answer, that's a network problem, not a me problem πŸ™ˆ

and that's the whole page, you ate it, you're a SNMP girlie now πŸ‘‘βœ¨

this lil doc is from perl v5.40.1, dated 2026-02-28 β€” the SNMP::...CiscoSB(3pm) of it all. stay connected, stay slaying πŸ’–

πŸ“¦ where this page comes from