SNMP::Info::Layer3::Pf - SNMP Interface to FreeBSD-Based Firewalls using Pf /Pf
Sense
# Let SNMP::Info determine the correct subclass for you.
my $pf = new SNMP::Info(
AutoSpecify => 1,
Debug => 1,
# These arguments are passed directly to SNMP::Session
DestHost => 'myswitch',
Community => 'public',
Version => 2
)
or die "Can't connect to DestHost.\n";
my $class = $pf->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";
Subclass for FreeBSD PF-Based devices
LLDP Support is included but untested in this Device Class. It is reported that
the available CDP/LLDP modules for net-snmp don't work on FreeBSD (on which
pfSense is based) as they assume certain Linux specific Ethernet structures.
This problem is apparently solved on PF based firewall appliances by using the
ladvd package, for which a port may be found here:
<http://www.freshports.org/net/ladvd/>. I'm not sure if this module ties
into Net-SNMP or not.
- FOKUS-MIB
- Inherited Classes' MIBs
- See "Required MIBs" in SNMP::Info::Layer3 for its own MIB
requirements.
These are methods that return scalar values from SNMP
- $pf->vendor()
- Returns 'freebsd'
- $pf->model()
- Grabs the os version from
"sysDescr"
- $pf->os()
- Returns 'Pf'
- $pf->os_ver()
- Tries to reference $pf->id() to one of
the product MIBs listed above. Will probably return a truncation of the
default OID for pf-based systems
"enterprises.12325.1.1.2.1.1".
See documentation in "GLOBALS" in SNMP::Info::Layer3 for details.
These are methods that return tables of information in the form of a reference
to a hash.
See documentation in "TABLE METHODS" in SNMP::Info::Layer3 for
details.