first, see if your device tells you what MIBs it supports, some do.
$ snmpwalk $ARGS $HOSTNAME system
...
system.sysORTable.sysOREntry.sysORID.1 = OID: .iso.org.dod.internet.mg
+mt.mib-2
system.sysORTable.sysOREntry.sysORID.2 = OID: 17
system.sysORTable.sysOREntry.sysORID.3 = OID: 16
system.sysORTable.sysOREntry.sysORID.4 = OID: .iso.org.dod.internet.sn
+mpV2.snmpModules.snmpMIB
system.sysORTable.sysOREntry.sysORID.5 = OID: ifMIB
system.sysORTable.sysOREntry.sysORID.6 = OID: .iso.org.dod.internet.sn
+mpV2.snmpModules.snmpFrameworkMIB
system.sysORTable.sysOREntry.sysORID.7 = OID: .iso.org.dod.internet.sn
+mpV2.snmpModules.snmpMPDMIB
system.sysORTable.sysOREntry.sysORID.8 = OID: .iso.org.dod.internet.sn
+mpV2.snmpModules.snmpTargetMIB
system.sysORTable.sysOREntry.sysORID.9 = OID: .iso.org.dod.internet.sn
+mpV2.snmpModules.snmpNotificationMIB
system.sysORTable.sysOREntry.sysORID.10 = OID: .iso.org.dod.internet.s
+nmpV2.snmpModules.snmpUsmMIB
system.sysORTable.sysOREntry.sysORID.11 = OID: .iso.org.dod.internet.s
+nmpV2.snmpModules.snmpVacmMIB
system.sysORTable.sysOREntry.sysORID.12 = OID: transmission.7
system.sysORTable.sysOREntry.sysORID.13 = OID: 17.6
system.sysORTable.sysOREntry.sysORID.14 = OID: 17.7
system.sysORTable.sysOREntry.sysORID.15 = OID: enterprises.731.2.2.1
system.sysORTable.sysOREntry.sysORID.16 = OID: enterprises.731.2.2.2
system.sysORTable.sysOREntry.sysORID.17 = OID: 67.1.2
system.sysORTable.sysOREntry.sysORID.18 = OID: 67.2.2
system.sysORTable.sysOREntry.sysORID.19 = OID: .iso.0.8802.1.1.1
system.sysORTable.sysOREntry.sysORID.20 = OID: .iso.2.840.10036
system.sysORTable.sysOREntry.sysORID.21 = OID: enterprises.5624.1.2.4
system.sysORTable.sysOREntry.sysORID.22 = OID: enterprises.5624.1.2.6
system.sysORTable.sysOREntry.sysORID.23 = OID: enterprises.5624.1.2.9
system.sysORTable.sysOREntry.sysORID.24 = OID: enterprises.5624.1.2.10
system.sysORTable.sysOREntry.sysORID.25 = OID: enterprises.5624.1.2.11
system.sysORTable.sysOREntry.sysORID.26 = OID: enterprises.5624.1.2.17
system.sysORTable.sysOREntry.sysORID.27 = OID: enterprises.5624.1.2.18
system.sysORTable.sysOREntry.sysORID.28 = OID: enterprises.5624.1.2.26
system.sysORTable.sysOREntry.sysORID.29 = OID: enterprises.5624.1.2.27
system.sysORTable.sysOREntry.sysORID.30 = OID: enterprises.5624.1.2.30
system.sysORTable.sysOREntry.sysORDescr.1 = RFC 1213 - (AT, IP, ICMP,
+TCP, UDP groups)
system.sysORTable.sysOREntry.sysORDescr.2 = RFC 1493 - BRIDGE-MIB
system.sysORTable.sysOREntry.sysORDescr.3 = RFC 1757 - RMON-MIB (1, 2,
+ 3, 9)
system.sysORTable.sysOREntry.sysORDescr.4 = RFC 1907 - SNMPv2-MIB (SYS
+TEM, SNMP)
system.sysORTable.sysOREntry.sysORDescr.5 = RFC 2233 - IF-MIB (IF)
system.sysORTable.sysOREntry.sysORDescr.6 = RFC 2571 - SNMP-FRAMEWORK-
+MIB
system.sysORTable.sysOREntry.sysORDescr.7 = RFC 2572 - SNMP-MPD-MIB
system.sysORTable.sysOREntry.sysORDescr.8 = RFC 2573 - SNMP-TARGET-MIB
system.sysORTable.sysOREntry.sysORDescr.9 = RFC 2573 - SNMP-NOTIFICATI
+ON-MIB
system.sysORTable.sysOREntry.sysORDescr.10 = RFC 2574 - SNMP-USER-BASE
+D-SM-MIB
system.sysORTable.sysOREntry.sysORDescr.11 = RFC 2575 - SNMP-VIEW-BASE
+D-ACM-MIB
system.sysORTable.sysOREntry.sysORDescr.12 = RFC 2665 - EtherLike-MIB
system.sysORTable.sysOREntry.sysORDescr.13 = RFC 2674p - P-BRIDGE-MIB
system.sysORTable.sysOREntry.sysORDescr.14 = RFC 2674q - Q-BRIDGE-MIB
system.sysORTable.sysOREntry.sysORDescr.15 = TMS Common - TMS-COMMON-M
+IB
system.sysORTable.sysOREntry.sysORDescr.16 = TMS L3 - TMS-L3-MIB
system.sysORTable.sysOREntry.sysORDescr.17 = RFC 2618 - RADIUS Authent
+ication Client MIB
system.sysORTable.sysOREntry.sysORDescr.18 = RFC 2620 - RADIUS Account
+ing Client MIB
system.sysORTable.sysOREntry.sysORDescr.19 = IEEE 802.1X Port Access C
+ontrol MIB
system.sysORTable.sysOREntry.sysORDescr.20 = IEEE 802.11 Wireless LAN
+MIB
system.sysORTable.sysOREntry.sysORDescr.21 = Enterasys RADIUS Authenti
+cation Client Config MIB
system.sysORTable.sysOREntry.sysORDescr.22 = Enterasys Policy Profile
+MIB
system.sysORTable.sysOREntry.sysORDescr.23 = Enterasys Extended 802.11
+ MIB
system.sysORTable.sysOREntry.sysORDescr.24 = Enterasys Extended Switch
+ MIB
system.sysORTable.sysOREntry.sysORDescr.25 = Enterasys R2 Management M
+IB
system.sysORTable.sysOREntry.sysORDescr.26 = Enterasys 802.1X Rapid Re
+keying MIB
system.sysORTable.sysOREntry.sysORDescr.27 = Enterasys 802.1X Extensio
+ns MIB
system.sysORTable.sysOREntry.sysORDescr.28 = Enterasys SSH Server MIB
system.sysORTable.sysOREntry.sysORDescr.29 = Enterasys RADIUS Accounti
+ng Client Config MIB
system.sysORTable.sysOREntry.sysORDescr.30 = Enterasys TLS MIB
...
this may tell you what's supported, but it's not required.
second, the information you want can be found in the Q-BRIDGE-MIB (RFC 2674). check MibDepot and search for the MIB.
-- dot1qTp MIB group ( 1.3.6.1.2.1.17.7.1.2 )
-- iso(1). org(3). dod(6). internet(1). mgmt(2). mib-2(1). dot1dBridge
+(17). qBridgeMIB(7). qBridgeMIBObjects(1). dot1qTp(2)
dot1qTpFdbTable OBJECT-TYPE
-- 1.3.6.1.2.1.17.7.1.2.2
-- iso(1). org(3). dod(6). internet(1). mgmt(2). mib-2(1). dot1dBridge
+(17). qBridgeMIB(7). qBridgeMIBObjects(1). dot1qTp(2). dot1qTpFdbTabl
+e(2)
SYNTAX SEQUENCE OF Dot1qTpFdbEntry
MAX-ACCESS not-accessible
DESCRIPTION
"A table that contains information about unicast entries
for which the device has forwarding and/or filtering
information. This information is used by the
transparent bridging function in determining how to
propagate a received frame."
REFERENCE
"IEEE 802.1Q/D11 Section 12.7.7"
::= { dot1qTp 2}
you can walk this table and find MAC<->Port mappings.
$ snmpwalk -M+$HOME/mibs/PublicDomain -m+Q-BRIDGE-MIB -OSX $ARGS $HOST
+NAME .1.3.6.1.2.1.17.7.1.2
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:0:1d:d4:4c:2f] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:e6:8b:6e:db] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:10:a4:f5] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:88] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:89] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:8a] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:8b] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:8c] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:8d] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:8e] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:cc:97] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:13:d5:17] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:74:e5:2f] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:ee:40:8a] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:ee:42:b5] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:1:f4:ee:91:3c] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:2:2d:5e:92:6d] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:3:93:ed:a1:6d] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:3:93:ee:d5:a1] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:4:23:4c:96:c2] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:4:23:55:41:c9] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:6:25:b:b9:30] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:6:25:16:69:3c] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:6:25:1d:cb:bc] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:6:25:28:ba:63] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:8:2:44:38:a4] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:a:b7:bb:b:75] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:30:65:6:97:3d] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:40:5:b7:86:99] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:90:4b:5:e:52] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:90:4b:43:2c:3b] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:c0:9f:12:4b:2a] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:d0:1:bb:37:fc] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:e0:63:24:22:17] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:e0:63:24:22:1c] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:e0:63:82:85:cd] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][0:e0:f9:c5:b0:ae] = 1
Q-BRIDGE-MIB::dot1qTpFdbPort[1][1:0:5e:0:0:1] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2048][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2049][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2049][0:1:f4:ee:91:3c] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2050][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2051][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2052][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2053][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2054][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbPort[2055][0:1:f4:13:cc:87] = 0
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:0:1d:d4:4c:2f] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:e6:8b:6e:db] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:10:a4:f5] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:88] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:89] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:8a] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:8b] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:8c] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:8d] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:8e] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:cc:97] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:13:d5:17] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:74:e5:2f] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:ee:40:8a] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:ee:42:b5] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:1:f4:ee:91:3c] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:2:2d:5e:92:6d] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:3:93:ed:a1:6d] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:3:93:ee:d5:a1] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:4:23:4c:96:c2] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:4:23:55:41:c9] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:6:25:b:b9:30] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:6:25:16:69:3c] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:6:25:1d:cb:bc] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:6:25:28:ba:63] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:8:2:44:38:a4] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:a:b7:bb:b:75] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:30:65:6:97:3d] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:40:5:b7:86:99] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:90:4b:5:e:52] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:90:4b:43:2c:3b] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:c0:9f:12:4b:2a] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:d0:1:bb:37:fc] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:e0:63:24:22:17] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:e0:63:24:22:1c] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:e0:63:82:85:cd] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][0:e0:f9:c5:b0:ae] = learned(3)
Q-BRIDGE-MIB::dot1qTpFdbStatus[1][1:0:5e:0:0:1] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2048][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2049][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2049][0:1:f4:ee:91:3c] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2050][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2051][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2052][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2053][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2054][0:1:f4:13:cc:87] = self(4)
Q-BRIDGE-MIB::dot1qTpFdbStatus[2055][0:1:f4:13:cc:87] = self(4)
the port info you have to decode, it's a bitmaped list of ports.
0 - 00000000 - unknown
1 - 00000001 - first port
2 - 00000010 - second port
3 - 00000011 - first and second port
...
# for my AP port 1 is the wired side, port 2 & 3 are the wireless card
+s so i look for port & 00000110 to see if a MAC is using that AP.
see Re: Getting MAC Adress from wireless device and access point for a tiny bit more.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.