37 lines
799 B
Perl
Executable File
37 lines
799 B
Perl
Executable File
#!/usr/bin/perl -w
|
|
#
|
|
# $Id: mac-port,v 1.2 2006-10-19 14:19:02 hjp Exp $
|
|
#
|
|
# find the port of a baystack 350 T switch to which a given
|
|
# mac address is connected.
|
|
#
|
|
use strict;
|
|
|
|
sub usage {
|
|
print STDERR "Usage: $0 switch mac-address\n";
|
|
exit(1);
|
|
}
|
|
|
|
|
|
if (@ARGV != 2) {usage();}
|
|
|
|
my @hmac = split(/:/, $ARGV[1]);
|
|
|
|
my $switch = $ARGV[0];
|
|
|
|
my @dmac = map { hex } @hmac;
|
|
|
|
my $object = "SNMPv2-SMI::mib-2.17.4.3.1.2." . join(".", @dmac);
|
|
|
|
# snmpget -v 1 -c public 143.130.49.11 SNMPv2-SMI::mib-2.17.4.3.1.2.0.22.212.55.173.185
|
|
|
|
system("snmpget", "-v", "1", "-c", "public", $switch, $object);
|
|
|
|
# $Log: mac-port,v $
|
|
# Revision 1.2 2006-10-19 14:19:02 hjp
|
|
# Adapted to NET-SNMP version: 5.2.3
|
|
#
|
|
# Revision 1.1 2001/04/11 14:31:29 hjp
|
|
# mac-port: convert mac address to switch port using snmp.
|
|
#
|