cjones@monster:~/snmpscripts$ cat testcase01.pl
#!/usr/bin/perl
use Net::SNMP;
use strict;
use warnings;
my $community = "eX0gyN37";
my $inputfilename = "/home/cjones/snmpscripts/hostipaddresses.txt";
my $outputfilename = "/home/cjones/snmpscripts/vlan1.csv";
my $IFINDEX = "1.3.6.1.2.1.2.2.1.1";
my $IFTYPE = "1.3.6.1.2.1.2.2.1.3";
my $IFNAME = "1.3.6.1.2.1.31.1.1.1.1";
my $IFALIAS = "1.3.6.1.2.1.31.1.1.1.18";
my $IFOPERSTATUS = "1.3.6.1.2.1.2.2.1.8";
my $VMVLAN = "1.3.6.1.4.1.9.9.68.1.2.2.1.2";
my $HOSTNAME_OID = "1.3.6.1.4.1.9.2.1.3.0";
my $IFNUMBER = "1.3.6.1.2.1.2.1.0";
open my $input, '<', $inputfilename or die "$0: $inputfilename: $!\n";
open my $output, '>', $outputfilename or die "$0: $outputfilename: $!\n";
while (my $ip = <$input>) {
$ip =~ s/\n//;
$ip =~ s/\r//;
my ($snmp,$snmperror) = Net::SNMP->session(
-hostname => $ip,
-community => $community
) or die "ERROR: $!";
my $response = $snmp->get_request(
$IFNUMBER,
$HOSTNAME_OID
);
my $getNumInterfaces = $response->{"$IFNUMBER"};
my $hostname = $response->{"$HOSTNAME_OID"};
die "Number of Interfaces isnt being defined for some reason\n" unless defined $getNumInterfaces;
die "Hostname isnt being defined for some reason\n" unless defined $hostname;
die "IP address isnt being defined for some reason\n" unless defined $ip;
#print "$ip - $hostname: ";
}
cjones@monster:~/snmpscripts$ perl testcase01.pl
Number of Interfaces isnt being defined for some reason
cjones@monster:~/snmpscripts$