SNMP::...kPoint(3pm)

πŸ’– SNMP::...kPoint(3pm) πŸ’–

okay bestie, we're diving into the User Contributed Perl Documentation section of the manual, and this one is SNMP::Info::Layer3::CheckPoint. it's giving "niche but iconic." let's go πŸ¦‹


✨ NAME ✨

SNMP::Info::Layer3::CheckPoint β€” the SNMP Interface to CheckPoint Devices, periodt.


🌸 AUTHORS 🌸

Ambroise Rosset. thank you for your service, king πŸ‘‘


πŸŽ€ SYNOPSIS πŸŽ€

here's the vibe, fr fr β€” let SNMP::Info figure out which subclass you actually need:

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

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

like, if it can't connect it just dies β€” dramatic, but valid πŸ’€


πŸ’œ DESCRIPTION πŸ’œ

it's a subclass for CheckPoint Devices. that's the whole assignment, and it ate. πŸ’…

⚠️ WARNING ⚠️

okay so listen up, because this one matters. to correctly and completely work on IPSO based devices, you gotta add the following line in the file /etc/snmp/snmpd.local.conf on each of your CheckPoint devices:

# Netdisco SNMP configuration
extend  ckpVersion /opt/CPsuite-R77/fw1/bin/fw ver
extend  ckpAsset /bin/clish -c 'show asset all'

no skipping this, bestie, it's literally in the manual πŸ™ˆ

🧬 Inherited Classes

  • SNMP::Info::Layer3

πŸ“š Required MIBs

  • CHECKPOINT-MIB
  • UCD-SNMP-MIB
  • NET-SNMP-EXTEND-MIB
  • NET-SNMP-TC
  • HOST-RESOURCES-MIB

🌈 Inherited Classes' MIBs

  • peep SNMP::Info::Layer3 for its own MIB requirements, iykyk.

πŸ‘‘ GLOBALS πŸ‘‘

these are the methods that return a scalar value from SNMP. little single-value queens, every one of them. ⭐

  • $ckp->vendor() β€” returns "svnApplianceManufacturer" in lowercase, else 'checkpoint'.
  • $ckp->model() β€” returns "svnApplianceProductName", else the model type based on the sysObjectOID translation.
  • $ckp->os() β€” returns the OS extracted from "sysDescr".
  • $ckp->os_ver() β€” returns "svnVersion", else the software version is extracted from "sysDescr", along with the Net-SNMP version.
  • $ckp->uptime() β€” returns the system uptime instead of the agent uptime. NOTE: discontinuity timers and other Time Stamp based objects are based on agent uptime, so use orig_uptime(). yes, this is the plot twist of the whole page 😭
  • $ckp->serial() β€” returns <svnApplianceSerialNumber>, else the serial number of the device if the SNMP server is configured as indicated previously. returns '' in any other case. so if you're getting nothing back, that's not a bug, that's a config problem bestie πŸ’€
  • $ckp->layers() β€” return '01001100'. that's it. that's the method. iconic.

🌸 Globals imported from SNMP::Info::Layer3

hit up the SNMP::Info::Layer3 docs for the deets. 🫢


πŸ¦‹ TABLE ENTRIES πŸ¦‹

these are the methods that return tables of information in the form of a reference to a hash. big main character energy. πŸ’–

πŸ”₯ Overrides

  • $ckp->i_ignore() β€” returns a reference to a hash. increments the value of IID if the port is to be ignored. it ignores loopback.

πŸŽ€ Table Methods imported from SNMP::Info::Layer3

again, go check SNMP::Info::Layer3 for the details. πŸ“


πŸ’… NOTES πŸ’…

if your device is not recognized by SNMP::Info as being in the class SNMP::Info::Layer3::CheckPoint, you might need additional snmp configuration on the CheckPoint device. not a you problem, just a config problem, okay? 😌

in order to cause SNMP::Info to classify your device into this class, it may be necessary to put a configuration line into your snmpd.conf similar to

sysobjectid .1.3.6.1.4.1.8072.3.2.N

where N is the object ID for your OS from the "NET-SNMP-TC" MIB (or 255 if it's not listed). heads up tho: some Net-SNMP installations default to an incorrect return value for "system.sysObjectId". so yeah, lowkey a known situation. πŸ™ˆ

and in order to recognize a Net-SNMP device as Layer3, it may be necessary to put a configuration line similar to

sysservices 76

into your snmpd.conf. that's the whole trick, no cap. ✨


and that's a wrap, bestie!! πŸ’– this whole page was written by perl v5.40.1 and dated 2026-02-28 β€” so it's fresh, it's documented, and it's slaying accordingly. go forth and poll those CheckPoint devices, you absolute legend πŸ‘‘πŸŒˆ

πŸ“¦ where this page comes from