arp таблица по SNMP

OID — .1.3.6.1.2.1.17.7.1.2.2.1.2

Пример запроса и ответа:

$ snmpwalk -v 2c -c public -OnQ 192.168.1.13 .1.3.6.1.2.1.17.7.1.2.2.1.2 | head
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.12.41.60.129.58 = 29
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.21.93.15.135.0 = 38
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.21.93.15.135.3 = 38
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.21.93.15.135.4 = 38
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.22.62.23.213.41 = 11
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.22.62.76.224.134 = 11
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.37.144.2.76.76 = 30
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.37.144.2.76.118 = 27
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.37.144.2.76.248 = 25
.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.37.144.2.77.152 = 17

Пример перлятины для разбора:
#!/usr/bin/perl
$format =
"vlan = %u mac = " . join( ":", map { "%02x" } 1 .. 6 ) . " port = %u\n";
while () {
( $oid, $port ) = split(/(?<=\S)\s*=\s*(?=\S)/); $port || die "Invalid line: '$_'\n"; printf( $format, ( split( /\./, $oid ) )[ 14 .. 20 ], $port ); }[/code] Ну и готовый пример [code]$ echo -e ".1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.37.144.2.76.118 = 27\n.1.3.6.1.2.1.17.7.1.2.2.1.2.2.0.37.144.2.76.248 = 25" | ./mac.pl vlan = 2 mac = 00:25:90:02:4c:76 port = 27 vlan = 2 mac = 00:25:90:02:4c:f8 port = 25[/code] И да, vlan и порт у кого-то это влан и порт, а у кого-то индекс влана и индекс порта во внутреннем представлении железки. Смотрите доку вашего вендора.

You can leave a response, or trackback from your own site.

2 комментария to “arp таблица по SNMP”

  1. Cyxapic:

    Ошень мало! Надо больше про SNMP!!!))))

    • yukra:

      Что конкретно интересует? Тут узкая проблема, которая бывает не часто, но когда возникает начинаешь вспоминать «что вроде сделать можно, но как именно — сходу не понятно» и ее решение. Все остальное в SNMP более менее очевидно (во всяком случае из того, с чем я сталкивался).

Leave a Reply

Subscribe to RSS Feed