SNMP Provider - atTable Collection

B

Bill Prehl

I wrote a VBScript to use the SNMP Provider in WMI to download the atTable
from our core Extreme BlackDiamond switch. The script then takes that
resulting collection and insert all the entries into a table in an MDB file
which then runs an unmatched query to determine which MAC addresses are not
in our authorization list. The unmatched list is then emailed to me by the
script.

The atTable returns three fields of information: atIfIndex, atPhysAddress
and atNetAddress. The BlackDiamond has presorted the list by atNetAddress
(IP Address). The atIfIndex is not really useful to me but it suppose to
represent an Interface. The problem is I'm expecting almost 1700 entries in
the table but I only recieve about the first 1500 or less.

Turns out the problem is a sequencing issue. While the SNMP Provider is
obtaining the atTable entries as long as the atIfIndex is the same or
greater than the previous entry then the SNMP Provider continues to get the
next entry. But, the Blackdiamond is not sorting the list by atIfIndex -
it's sorting by the atNetAdresss. So, for whatever reason, the Blackdiamond
assigned a smaller interface number to the 1501ish entry that was was found
in the 1500ish entry so the SNMP Provider quits. *sigh* This was the
perfect solution until I hit this snag. My other SNMP programs (like GetIf)
show exactly where the WMI SNMP Provider quits.

Here's a sample of the information:
int. net address phys address
20064 172.029.091.244 00105AA1F72B
20064 172.029.091.247 00047638D9D0
20064 172.029.091.252 000CF1E0B800
20064 172.029.091.253 000476B76082
20048 172.029.092.005 001111EE735F
20065 172.029.093.002 001083436B13
20065 172.029.093.003 0030C12F6DE5
20065 172.029.093.004 001083425C17

My list returned by the SNMP Provider ends with 20064, 172.29.91.253 entry
because the next entry the interface value goes DOWN to 20048.

I'm dying to know if anyone has any suggestions. This was such a cool
solution to run everything in a VBScript - I really hate to execute an
outside program just to retrieve the table. Or, if anyone can tell me how
to issue the get() method instead of using InstanceOf. The documentation on
the SNMP Provider is very weak so I've been struggling to find strong
examples. Guess I'm treading on untested and unused ground.

Thanks in advance.

Bill
 
B

Bill Prehl

I found a solution. I was able to compile the Extreme Networks MIB into the
SMIR. It took me a while because Extreme put all the modules in one file.
So, I had to break out the modules I needed just to get the MAC address
listing from the switch. Turns out the return list it's better than the RFC
standard atTable. It also worked with WMI SNMP Provider because the index
numbers only increase. Hopefully someone from MS will read this posting and
investigate this bug I found.

Bill
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top