my company use the cisco csm module to SLB ( server load
balancing ).
i try to get the serverfarm name.
i try to get the serverfarm name.
cisco is not support the serverfarm name mibs.
>> snmpwalk -O f -m CISCO-SLB-EXT-MIB -c public -v 1
192.168.1.5
ciscoSlbMIB
.....
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."PUB" = INTEGER: roundRobin(1)
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."AUTH" = INTEGER: roundRobin(1)
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."FILE" = INTEGER: roundRobin(1)
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."LOCAL" = INTEGER: roundRobin(1)
-------
this value is serverfarm name ( "LOCAL", "FILE", "AUTH" )
.....
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."PUB" = INTEGER: roundRobin(1)
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."AUTH" = INTEGER: roundRobin(1)
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."FILE" = INTEGER: roundRobin(1)
.slbServerFarms.slbServerFarmTable.slbServerFarmTableEntry.slbServerFarmPredictor.4."LOCAL" = INTEGER: roundRobin(1)
-------
this value is serverfarm name ( "LOCAL", "FILE", "AUTH" )
>> cat test.pl
#!/usr/loca/bin/perl
#------------------------------------------------------------------------[ Definition ]
use SNMP;
&SNMP::initMib();
&SNMP::addMibDirs( "/usr/local/share/snmp/mibs/" );
&SNMP::loadModules( "CISCO-SLB-MIB" );
&SNMP::initMib();
&SNMP::addMibDirs( "/usr/local/share/snmp/mibs/" );
&SNMP::loadModules( "CISCO-SLB-MIB" );
#------------------------------------------------------------------------[
Setting SNMP ]
$sess = new
SNMP::Session(
DestHost => "192.168.1.5",
Community => "public",
Retries => 3 );
DestHost => "192.168.1.5",
Community => "public",
Retries => 3 );
#------------------------------------------------------------------------[
Getting The Real Server Information ]
my $VS = new
SNMP::VarList(
[slbServerFarmPredictor]
);
[slbServerFarmPredictor]
);
for ( ( @var1 ) = $sess->getnext($VS)
;
$$VS[0]->tag =~ /slbServerFarmPredictor/ and not $sess->{ErrorStr};
( @var1 ) = $sess->getnext($VS) ) {
$$VS[0]->tag =~ /slbServerFarmPredictor/ and not $sess->{ErrorStr};
( @var1 ) = $sess->getnext($VS) ) {
print
$$VS[0]->tag, "\t", $$VS[0]->val, "\t", $$VS[0]->type, "\t",
$$VS[0]->name, "\t", $$VS[0]->iid,
"\t";
print "\n";
}
print "\n";
}
#------------------------------------------------------------------------[
End of Script ]
>> perl test.pl
slbServerFarmPredictor 1 INTEGER slbServerFarmPredictor 4.3.80.85.66
slbServerFarmPredictor 1 INTEGER slbServerFarmPredictor 4.4.65.85.84.72
slbServerFarmPredictor 1 INTEGER slbServerFarmPredictor 4.4.70.73.76.69
slbServerFarmPredictor 1 INTEGER slbServerFarmPredictor 4.5.76.79.67.65.76
how can i get this value?
please..