SNMP::...MGbTor(3pm)

✨ SNMP::Info::Layer3::IBMGbTor ✨

okay bestie, gather round, because we're talking about SNMP::Info::Layer3::IBMGbTor β€” that's the Perl module (a 3pm manpage, iykyk) that gives you an SNMP interface to Lenovo and IBM Rackswitch devices. it lives in the User Contributed Perl Documentation, and it is genuinely so useful. let's get into it πŸ’–


🌸 NAME 🌸

SNMP::Info::Layer3::IBMGbTor β€” your SNMP interface to Lenovo/IBM Rackswitch devices. slay.


πŸ‘‘ AUTHOR πŸ‘‘

Eric Miller. thank you for your service, king 🫢


πŸŽ€ SYNOPSIS πŸŽ€

here's the whole vibe, literally copy-paste this:

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

my $class = $ibm->class();

print "SNMP::Info determined this device to fall under subclass : $class\n";

the way that AutoSpecify => 1 just does the subclass detective work for you?? main character energy fr fr πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

so this is an abstraction subclass for IBM Rackswitch network devices β€” formerly known as Blade Network Technologies, if you're an elder millennial who remembers. Lenovo acquired these from IBM and is now selling them under the Lenovo brand. glow-up, honestly ✨

Inherited Classes

the family tree, no cap:

  • SNMP::Info::Layer3
  • SNMP::Info::LLDP

Required MIBs

you're gonna need:

  • IBM-GbTOR-10G-L2L3-MIB

Inherited Classes' MIBs

see "Required MIBs" in SNMP::Info::Layer3 for its own MIB requirements. it's got opinions, okay? πŸ™ˆ


πŸ’œ GLOBALS πŸ’œ

these are methods that return scalar value from SNMP. little single-value besties.

  • $ibm->model() β€” returns the model type. it attempts to pull the model from the device description, and if that doesn't werk, it checks $ibm->id() against the IBM-GbTOR-10G-L2L3-MIB. two strategies, one queen πŸ‘‘
  • $ibm->vendor() β€” returns 'ibm'
  • $ibm->os() β€” returns 'ibm'
  • $ibm->os_ver() β€” returns the software version. it's pulling from ("agSoftwareVersion")
  • $ibm->temp() β€” that's ("hwTempSensors") 🌑️
  • $ibm->fan() β€” that's ("hwFanSpeed") πŸŒ€

Overrides

  • $ibm->hasLLDP() β€” is LLDP active in this device?
Note: LLDP may be active, but nothing in "lldpRemoteSystemsData" Tables β€” so the device would not return any useful topology information. 😭 devastate.

it checks to see if at least one interface is enabled to receive LLDP packets. one is enough, we're not picky 🫢

Global Methods imported from SNMP::Info::Layer3

see documentation in "GLOBALS" in SNMP::Info::Layer3 for details. it's all there, bestie.

Global Methods imported from SNMP::Info::LLDP

see documentation in "GLOBALS" in SNMP::Info::LLDP for details. also all there.


🌈 TABLE METHODS 🌈

these are methods that return tables of information in the form of a reference to a hash. big data energy fr.

Overrides

  • $ibm->interfaces() β€” returns a reference to a hash of interface names to iids. iconic.
  • $ibm->i_ignore() β€” returns a reference to a hash of interfaces to be ignored. it ignores interfaces with descriptions of tunnel, loopback, and null. not me ghosting those interfaces πŸ’€
  • $ibm->i_duplex() β€” returns a reference to a hash of interface link duplex status. source: ("portInfoMode") πŸ“
  • $ibm->lldp_if() β€” returns the mapping to the SNMP Interface Table. it tries to cross reference ("lldpInfoRemoteDevicesLocalPort") with ("ifDescr") and ("ifAlias") to get ("ifIndex"). matchmaking, honestly πŸ’–
  • $ibm->lldp_ip() β€” returns remote IPv4 address. and for all other address types you should use lldp_addr if you want any return address type. so like, if you want any type, lldp_addr is your girl. if you want IPv4 only, you're in the right place ✨
  • $ibm->lldp_platform() β€” returns remote device system description, from ("lldpInfoRemoteDevicesSystemDescription"). nosy in the best way πŸ¦‹

Table Methods imported from SNMP::Info::Layer3

see documentation in "TABLE METHODS" in SNMP::Info::Layer3 for details.

Table Methods imported from SNMP::Info::LLDP

see documentation in "TABLE METHODS" in SNMP::Info::LLDP for details.


and that's the whole page, bestie. no notes, 10/10, would perldoc again πŸ’…

this iconic piece of documentation was served up as part of perl v5.40.1, dated 2026-02-28. go forth and poll your Rackswitch πŸŽ€πŸ’–βœ¨

πŸ“¦ where this page comes from