SNMP::...mshield(3pm)
π SNMP::Info::Layer7::Stormshield π
okay bestie, welcome to the manual page for SNMP::Info::Layer7::Stormshield β it's a Perl thing, it lives in the 3pm manual section, and it's the SNMP interface to Stormshield Network Security appliances. yes, that's the whole NAME section, we ate it, moving on π«Ά
π AUTHORS
Rob Woodward β the icon, the legend, the one who wrote this whole thing. respect. π
β¨ SYNOPSIS β¨
so here's the vibe, you let SNMP::Info figure out which subclass you actually need and it does the detective work for you:
# Let SNMP::Info determine the correct subclass for you.
my $Stormshield = new SNMP::Info(
AutoSpecify => 1,
Debug => 1,
DestHost => 'myfirewall',
Community => 'public',
Version => 2
)
or die "Can't connect to DestHost.\n";
my $class = $Stormshield->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";
no cap, AutoSpecify => 1 is doing the heavy lifting here and honestly? she's a main character. π
πΈ DESCRIPTION πΈ
this is the subclass for Stormshield Network Security (SNS) appliances. π
and the tea is: the module supports both High Availability (HA) and non-HA Stormshield appliances. equality! we love to see it. β¨
- Scalar globals like serial number, model and OS version get retrieved from
STORMSHIELD-PROPERTY-MIB. - Since
ENTITY-MIBis not available on the device (rip), a whole set ofe_*methods is provided instead, based onSTORMSHIELD-HA-MIBtables, so we can approximate ENTITY-like information for HA nodes. we're improvising, but we're improvising beautifully. π
π₯ High Availability (HA) Devices (HA-derived e_* methods)
for HA devices, the module uses STORMSHIELD-HA-MIB to build ENTITY-like methods:
- Serial Number table:
snsFwSerial(.1.3.6.1.4.1.11256.1.11.7.1.2) - Model table:
snsModel(.1.3.6.1.4.1.11256.1.11.7.1.4) - Version table:
snsVersion(.1.3.6.1.4.1.11256.1.11.7.1.5) - HA license table:
snsHALicence(.1.3.6.1.4.1.11256.1.11.7.1.6)
Note: whilesnsNodeIndexexists in the HA MIB, it isMAX-ACCESS not-accessibleand cannot be fetched directly π thee_indexmethod uses the row indices of the HA tables (e.g.,snsFwSerial) as identity mapping instead. we work around it, obviously.
Example SNMP walk for model:
snmpwalk -v2c -On .1.3.6.1.4.1.11256.1.11.7.1.4
.1.3.6.1.4.1.11256.1.11.7.1.4.0 = STRING: "SN-S-Series-220"
.1.3.6.1.4.1.11256.1.11.7.1.4.1 = STRING: "SN-S-Series-220"
π¦ Non-HA Devices (Property MIB globals)
for single nodes or the primary cluster node, the module uses STORMSHIELD-PROPERTY-MIB:
- Serial Number:
snsSerialNumber(.1.3.6.1.4.1.11256.1.18.3) - Model:
snsModel(.1.3.6.1.4.1.11256.1.18.1) - Version:
snsVersion(.1.3.6.1.4.1.11256.1.18.2)
Example SNMP walk for model:
snmpwalk -v2c -On .1.3.6.1.4.1.11256.1.18
.1.3.6.1.4.1.11256.1.18.1.0 = STRING: "SN-S-Series-220"
π§ Inherited Classes
SNMP::Info::Layer7 β yes she comes from a long line of distinguished ancestors, the genes are immaculate. π
π Required MIBs
Inherited Classes' MIBs
See SNMP::Info::Layer7 for its own MIB requirements. (she has her own list, go ask her.)
STORMSHIELD-HA-MIB
Required for High Availability (HA) Stormshield appliances.
STORMSHIELD-PROPERTY-MIB
Required for both single nodes and clusters. so basically everybody needs this one, it's the group chat everyone's in. π«Ά
β GLOBALS β
these are methods that return scalar value from SNMP. one value, one vibe, no delulu.
$Stormshield->vendor()β Returns'stormshield'.$Stormshield->name()β ReturnssnsProductProperty.snsSystemNameif available, regularsysNameotherwise.$Stormshield->os()β Returns'SNS'.$Stormshield->os_ver()β Release extracted fromSTORMSHIELD-PROPERTY-MIB.$Stormshield->model()β Model extracted fromSTORMSHIELD-PROPERTY-MIB.$Stormshield->serial()β Returns serial number extracted fromSTORMSHIELD-PROPERTY-MIB.
π Globals imported from SNMP::Info::Layer7
See documentation in SNMP::Info::Layer7 for details. (go read her page, she's iconic too.)
π TABLE METHODS π
these are methods that return tables of information in the form of a reference to a hash. a whole hash bestie, we love a structured data moment. π
$Stormshield->e_index()β Returns an identity mapping of HA node row indices inferred fromSTORMSHIELD-HA-MIBtables; key = iid, value = iid.$Stormshield->e_class()β Returns reference to hash: key = iid, value ='chassis'.$Stormshield->e_name()β Returns reference to hash: key = iid, value ='chassis.<iid>'.$Stormshield->e_vendor()β Returns reference to hash: key = iid, value ='stormshield'.$Stormshield->e_descr()β Returns reference to hash: key = iid, value ='<model> <licence> <serial> <version>'assembled from HA tables:snsModel,snsHALicence,snsFwSerial, andsnsVersion. it's giving Frankenstein but make it ~informative~. β¨$Stormshield->e_model()β Returns reference to hash: key = iid, value = model (fromsnsModel).$Stormshield->e_swver()β Returns reference to hash: key = iid, value = software version (fromsnsVersion).$Stormshield->e_serial()β Returns reference to hash: key = iid, value = serial (fromsnsFwSerial).$Stormshield->interfaces()β Override interface details withSTORMSHIELD_IF_MIB. yes, she's overriding, and she's right to.
π Overrides
$Stormshield->i_name()β Returns reference to hash: key = ifIndex, value = interface name fromSTORMSHIELD_IF_MIB.$Stormshield->i_alias()β Returns reference to hash: key = ifIndex, value = interface alias fromSTORMSHIELD_IF_MIB.$Stormshield->i_description()β Returns reference to hash: key = ifIndex, value = interface description fromSTORMSHIELD_IF_MIB.$Stormshield->i_type()β Returns reference to hash: key = ifIndex, value = interface type fromSTORMSHIELD_IF_MIB.$Stormshield->i_index()β Returns reference to hash: key = ifIndex, value = interface index fromSTORMSHIELD_IF_MIB.
π Table Methods imported from SNMP::Info::Layer7
See documentation in SNMP::Info::Layer7 for details. told you she'd come up again, she's everywhere. π
and that's the whole page babes β¨ go forth and SNMP responsibly π«Ά
this little masterpiece is perl v5.40.1, dated 2026-02-28. ok bye bestie, go poll something. ππ
π¦ where this page comes from
- ubuntu stonking: libsnmp-info-perl 3.975000-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms