Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1699 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  Net::SNMP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Net::SNMP

n°696227
chopman
Posté le 09-04-2004 à 09:04:20  profilanswer
 

hop,
 
voila j'utilise le module Net::SNMP pour aller chercher des infos sur des routeurs mais g quelques difficultés à utiliser les fonctions disponibles
(j'utilise ce module car il fournit des fonctions non-bloquante ce qui accelere considerablement l'execution)
 
voila le code:
 

Citation :

use DBI;
use Net::SNMP;
 
my $con_db=DBI->connect("DBI:mysql:site","root" );
my $req=$con_db->prepare("select * from ..." );
$req->execute;
 
while(@var=$req->fetchrow_array()){
  my $host ="$var[1]"; // IP
  $o1 = ".1.3.6.1.2.1.2.2.1.10."."$var[5]";  
  $o2 = ".1.3.6.1.2.1.2.2.1.16."."$var[5]";
 
  //$var[5] = numero d'interface
 
      my ($session, $error) = Net::SNMP->session(
         -hostname    => $host,
         -community => "$var[3]",
         -nonblocking => 0x1
      );
      if (!defined($session)) {
         printf("ERROR: %s.\n", $error);
         exit 1;
      }
      $session->get_request(
          -varbindlist => [$o1,$o2],
          -callback    => [\&aff]
      );
}
 
snmp_dispatcher();
 
 exit 0;
 
   sub aff
   {
      local ($session2) = (@_);
      local ($str)=$session2->error;
      print "$str";
 
         local ($r1) = $session2->var_bind_list->{$o1};
         local ($r2) = $session2->var_bind_list->{$o2};
         local ($h) = $session2->hostname;
         print "$h $r1 $r2";
         print "\n";
 
 
      $session2->error_status;
   }


 
normalement il devrait afficher l'ip, le traffic in et out mais il n'affiche que l'ip...
 
j'ai comparé avec les exemples de la doc mais ya rien qui change fondamentalement... comprends po!
Si ya quelqu'un qui a deja utilisé ca, ca serait bien gentil de m'eclairer, je suis surement passé à coté de qqch...


Message édité par chopman le 09-04-2004 à 09:05:56
mood
Publicité
Posté le 09-04-2004 à 09:04:20  profilanswer
 

n°696238
chopman
Posté le 09-04-2004 à 09:16:24  profilanswer
 

g testé en mettant snmp_dispatcher(); dans la boucle while... ca fonctionne mais ca perd tout son interet vu que quand le prog arrive à cette fonction, il attend que toutes les requetes aient renvoyées une reponse et donc ca rebloque l'execution... aaaaaaaaaaaaaaaargh


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  Net::SNMP

 

Sujets relatifs
IIS, ASP.NET , Visual Studio .NET, XML , et codage UTF-8 (ouf!)Sécurisation entre Server SQL 2000 et une application .NET (ssl?)
Intégrer des ressources à un programme .NETVisual Studio .Net qui se plante mais à la fermeture ?!
[SNMP] Retouver le switch correspondant à une adresse MAC, assez urgencomment utiliser le Protocol SNMP
Displays the percentage of unique visitors that have the .NET CLRNET SNMP
[Perl] Net::Telnet vers une machine win32 
Plus de sujets relatifs à : Net::SNMP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR