.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SNMP::Info::Layer2::Catalyst 3pm" .TH SNMP::Info::Layer2::Catalyst 3pm "2019-02-25" "perl v5.28.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SNMP::Info::Layer2::Catalyst \- SNMP Interface to Cisco Catalyst devices running Catalyst OS. .SH "AUTHOR" .IX Header "AUTHOR" Max Baker .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 9 \& # Let SNMP::Info determine the correct subclass for you. \& my $cat = new SNMP::Info( \& AutoSpecify => 1, \& Debug => 1, \& DestHost => \*(Aqmyswitch\*(Aq, \& Community => \*(Aqpublic\*(Aq, \& Version => 2 \& ) \& or die "Can\*(Aqt connect to DestHost.\en"; \& \& my $class = $cat\->class(); \& print "SNMP::Info determined this device to fall under subclass : $class\en"; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" SNMP::Info subclass to provide information for Cisco Catalyst series switches running CatOS. .PP This class includes the Catalyst 2920, 4000, 5000, 6000 (hybrid mode) families. .PP This subclass is not for all devices that have the name Catalyst. Note that some Catalyst switches run \s-1IOS,\s0 like the 2900 and 3550 families. Cisco Catalyst 1900 switches use their own \s-1MIB\s0 and have a separate subclass. Use the method above to have SNMP::Info determine the appropriate subclass before using this class directly. .PP See \fBSNMP::Info::device_type()\fR for specifics. .PP Note: Some older Catalyst switches will only talk \s-1SNMP\s0 version 1. Some newer ones will not return all their data if connected via Version 1. .PP For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above. .PP .Vb 1 \& my $cat = new SNMP::Info::Layer2::Catalyst(...); .Ve .SS "Inherited Classes" .IX Subsection "Inherited Classes" .IP "SNMP::Info::Layer2::Cisco" 4 .IX Item "SNMP::Info::Layer2::Cisco" .PD 0 .IP "SNMP::Info::CiscoStack" 4 .IX Item "SNMP::Info::CiscoStack" .PD .SS "Required MIBs" .IX Subsection "Required MIBs" .IP "Inherited Classes' MIBs" 4 .IX Item "Inherited Classes' MIBs" See \*(L"Required MIBs\*(R" in SNMP::Info::Layer2::Cisco for its own \s-1MIB\s0 requirements. .Sp See \*(L"Required MIBs\*(R" in SNMP::Info::CiscoStack for its own \s-1MIB\s0 requirements. .PP These MIBs are found in the standard v2 MIBs from Cisco. .SH "GLOBALS" .IX Header "GLOBALS" These are methods that return scalar value from \s-1SNMP\s0 .ie n .IP "$cat\->\fBos()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBos()\fR" 4 .IX Item "$cat->os()" Returns 'catalyst' .ie n .IP "$cat\->\fBos_ver()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBos_ver()\fR" 4 .IX Item "$cat->os_ver()" Tries to use the value from SNMP::Info::CiscoStats\->\fBos_ver()\fR and if it fails it grabs \f(CW$cat\fR\->\fBm_swver()\fR\->{1} and uses that. .ie n .IP "$cat\->\fBvendor()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBvendor()\fR" 4 .IX Item "$cat->vendor()" Returns 'cisco' .ie n .IP "$cat\->\fBcisco_comm_indexing()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBcisco_comm_indexing()\fR" 4 .IX Item "$cat->cisco_comm_indexing()" Returns 1. Use vlan indexing. .SS "Global Methods imported from SNMP::Info::Layer2::Cisco" .IX Subsection "Global Methods imported from SNMP::Info::Layer2::Cisco" See documentation in \*(L"\s-1GLOBALS\*(R"\s0 in SNMP::Info::Layer2::Cisco for details. .SS "Global Methods imported from SNMP::Info::CiscoStack" .IX Subsection "Global Methods imported from SNMP::Info::CiscoStack" See documentation in \*(L"\s-1GLOBALS\*(R"\s0 in SNMP::Info::CiscoStack for details. .SH "TABLE METHODS" .IX Header "TABLE METHODS" These are methods that return tables of information in the form of a reference to a hash. .SS "Overrides" .IX Subsection "Overrides" .ie n .IP "$cat\->\fBinterfaces()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBinterfaces()\fR" 4 .IX Item "$cat->interfaces()" Returns the map between \s-1SNMP\s0 Interface Identifier (iid) and physical port name. .ie n .IP "$cat\->\fBi_name()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBi_name()\fR" 4 .IX Item "$cat->i_name()" Returns reference to hash of iid to human set name. .Sp \&\f(CW\*(C`portName\*(C'\fR .ie n .IP "$cat\->\fBi_physical()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBi_physical()\fR" 4 .IX Item "$cat->i_physical()" Returns a map to \s-1IID\s0 for ports that are physical ports, not vlans, etc. .ie n .IP "$cat\->\fBbp_index()\fR" 4 .el .IP "\f(CW$cat\fR\->\fBbp_index()\fR" 4 .IX Item "$cat->bp_index()" Returns reference to hash of bridge port table entries map back to interface identifier (iid) .Sp Crosses (\f(CW\*(C`portCrossIndex\*(C'\fR) to (\f(CW\*(C`portIfIndex\*(C'\fR) since some devices seem to have problems with \fIBRIDGE-MIB\fR .SS "Table Methods imported from SNMP::Info::Layer2::Cisco" .IX Subsection "Table Methods imported from SNMP::Info::Layer2::Cisco" See documentation in \*(L"\s-1TABLE METHODS\*(R"\s0 in SNMP::Info::Layer2::Cisco for details. .SS "Table Methods imported from SNMP::Info::CiscoStack" .IX Subsection "Table Methods imported from SNMP::Info::CiscoStack" See documentation in \*(L"\s-1TABLE METHODS\*(R"\s0 in SNMP::Info::CiscoStack for details.