aboutsummaryrefslogtreecommitdiffstats
path: root/extras
diff options
context:
space:
mode:
authorroot <root@debian>2016-06-02 20:24:58 +0200
committerroot <root@debian>2016-06-02 20:24:58 +0200
commitbe79767a00a2bfc0e77922669bcbddeaf003a84d (patch)
tree060acc53bac626a8716761f27ff80048312c95d6 /extras
parent8b580cc21e08b187451cc36a379974ca898e5105 (diff)
tweak lldpdiscover (more info)
Diffstat (limited to 'extras')
-rwxr-xr-xextras/tools/lldp/lldpdiscover.pl20
1 files changed, 18 insertions, 2 deletions
diff --git a/extras/tools/lldp/lldpdiscover.pl b/extras/tools/lldp/lldpdiscover.pl
index 32840ad..14c4fc5 100755
--- a/extras/tools/lldp/lldpdiscover.pl
+++ b/extras/tools/lldp/lldpdiscover.pl
@@ -194,8 +194,9 @@ sub get_snmp_data {
$ret{'sysDescr'} = $session->get('sysDescr.0');
$ret{'lldpRemManAddrTable'} = $session->gettable("lldpRemManAddrTable");
$ret{'lldpRemTable'} = $session->gettable("lldpRemTable");
- $ret{'lldpLocChassisIdParsed'} = nms::convert_mac($session->getnext('lldpLocChassisId'));
- $ret{'lldpLocChassisId'} = $session->get('lldpLocChassisId.0');
+ $ret{'ipNetToMediaTable'} = $session->gettable('ipNetToMediaTable');
+ $ret{'ifTable'} = $session->gettable('ifTable');
+ $ret{'ifXTable'} = $session->gettable('ifXTable');
#print Dumper(\%ret);
};
if ($@) {
@@ -238,6 +239,21 @@ sub parse_snmp
$lol{$value->{lldpRemIndex}}{lldpRemManAddr} = nms::convert_ipv6($addr);
}
}
+ while (my ($key, $value) = each %{$snmp->{ipNetToMediaTable}}) {
+ $value->{ipNetToMediaPhysAddress} = nms::convert_mac($value->{ipNetToMediaPhysAddress});
+ push @{$lol{$value->{ipNetToMediaIfIndex}}{ARP}}, $value;
+ }
+ while (my ($key, $value) = each %{$snmp->{ifTable}}) {
+ $value->{ifPhysAddress} = nms::convert_mac($value->{ifPhysAddress});
+ foreach my $key2 (keys %$value) {
+ $lol{$value->{ifIndex}}{$key2} = $value->{$key2};
+ }
+ }
+ while (my ($key, $value) = each %{$snmp->{ifXTable}}) {
+ foreach my $key2 (keys %$value) {
+ $lol{$key}{$key2} = $value->{$key2};
+ }
+ }
return \%lol;
print Dumper (\%lol);
}