<<

NAME

pf::Switch::Cisco

DESCRIPTION

SUBROUTINES

TODO: This list is incomplete

setTrunkPortNativeVlan - sets PVID on a trunk port
getMacBridgePortHash

Cisco is very fancy about fetching it's VLAN information. In SNMPv3 the context is used to specify a VLAN and in SNMPv1/2c an @<vlan> is appended to the read-only community name when reading.

setModeTrunk - sets a port as mode access or mode trunk
getMacAddr

Warning: this method should _never_ be called in a thread. Net::Appliance::Session is not thread safe:

http://www.cpanforum.com/threads/6909/

copyConfig

Copy the configuration.

Source and destination types are defined under ConfigFileType from CISCO-CONFIG-COPY MIB. Local values are available in pf::Switch::constants.

We could support other destination types if there was motivation to do so.

Notice that we are throwing exceptions in here so make sure to trap them!

Inspired by: http://www.notarus.net/networking/cisco_snmp_config.html#wrmem

saveConfig

Save the running config into startup config. Exact equivalent of doing a 'write mem' on the CLI.

Notice that we are throwing exceptions in here so make sure to trap them!

_radiusBounceMac

Using RADIUS Change of Authorization (CoA) defined in RFC3576 to bounce the port where a given MAC is present.

Uses pf::util::dhcp for the low-level RADIUS stuff.

At proof of concept stage. For now using SNMP is still preferred way to bounce a port.

AUTHOR

Inverse inc. <info@inverse.ca>

COPYRIGHT

Copyright (C) 2005-2015 Inverse inc.

LICENSE

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

<<