PDA

Показать полную графическую версию : Как работать с SNMP по-другому?


glukin
02-04-2017, 19:36
Есть скрипт:
set objSNMP = CreateObject("OlePrn.OleSNMP")

strHostname = InputBox("Введите hostname или IP: ", "Input hosname:", "localhost")
strCommunity = InputBox("Введите Community: ", "Input Community:", "public")
strOID = InputBox("Введите OID: ", "Input OID:", "1.3.6.1.2.1.1.5.0")

objSNMP.Open strHostname, strCommunity, 2, 1000
arrOut = objSNMP.GetTree("." & strOID)

if UBound(arrOut, 2) = -1 then
wscript.echo objSNMP.Get("." & strOID)
Else
For i = 0 To UBound(arrOut, 1) - 1
For j = 0 To UBound(arrOut, 2)
wscript.echo arrOut(i, j) & " (" & join(objSNMP.OIDFromString(arrOut(i, j)), ".") & ") = " & arrOut(i+1, j)
Next
Next
End If

objSNMP.Close
Но я его, если честно, не понимаю, ранее работал с SNMP вот так:
Set colSystem = objWmiServices.ExecQuery("SELECT sysName FROM SNMP_RFC1213_MIB_system",,, objWmiNamedValueSet)
Объясните, плз, как мне спуститься по дереву MIB SNMP ниже, то есть вместо SNMP_RFC1213_MIB_system я ставлю SNMP_RFC1213_MIB_ip, затем мне надо в ipAddrTable, затем в ipAddrEntry, и там уже получить ipAdEntIfIndex.

glukin
03-04-2017, 09:22
Я что-то не то написал или никто не знает?

Elven
03-04-2017, 10:56
glukin, не совсем понятно что требуется. Задача больше по раздербаниванию MIB'ов нежели по VBS, если я правильно понимаю.

glukin
03-04-2017, 11:02
Elven, Ну да, толко делать это надо с vbs.
Другими словами, мне надо добраться из скрипта вот до этого:
snmpwalk -v 2c -c public 10.0.0.1 1.3.6.1.2.1.4.20.1.2.10.0.0.1
IP-MIB::ipAdEntIfIndex.10.0.0.1 = INTEGER: 44

Индекс 44

Запрашиваем имя интерфейса

snmpwalk -v 2c -c public 10.0.0.1 1.3.6.1.2.1.31.1.1.1.1.44

IF-MIB::ifName.44 = STRING: Tu1
То есть взять индекс интерфейса по IP, затем по индексу взять имя интерфейса.
Это вывод из линупса, мне из него не подходит, так как разрешенный IP-адрес для скана сети по SNMP находится на винде 2003.

glukin
03-04-2017, 19:00
Не? Никто не в курсе?

Elven
03-04-2017, 21:43
разве что пронатить порт через эту машину и с линухи гонять что угодно после этого. к слову поддержка 2003 закончилась уж скоро как два года (если я правильно помню), м.б. стоит вместо 2003 поставить... ну то что удобно, словом. В качестве альтернативы попробовать виндовый пакет Net-SNMP.




© OSzone.net 2001-2012