[PERL] Requete MIB en SNMP

Résolu
NewKind Messages postés 16 Statut Membre -  
 jicé -
Salut,

Je cherche à recuperer des informations contenues dans la Mib d'un routeur en SNMP.

Voici une partie du code que j'utilise:

# Informations de connexion en snmp
  my ($sesnmp, $error) = Net::SNMP->session(
      -hostname     => $iprouteur,
      -username     => 'username',
	  -password		=> 'password'
      
   );

   if (!defined($sesnmp)) {
      printf("ERROR: %s.\n", $error);
      exit 1;
   }

   my $versionIOS = '1.3.6.1.2.1.1.1.0';
   
  # Requete snmp
   my $result = $sesnmp->get $versionIOS
   print "$result\n"

 # Liberation des ressources
   $session->close;
   $sesnmp->close;


La syntaxe semble erronée, le script ne fonctionne et j'ai un mal fou à trouver des exemple de script d'interrogation d'une MIB en Perl...

Si quelqu'un en connait ou sait me dire ce qui ne va pas dans mon script, ce serait sympa !

Merci à ceux qui ont lu jusqu'ici ! lol
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. NewKind Messages postés 16 Statut Membre 2
     
    Bon, en fait je me compliquais la vie pour rien.
    Pour ceux qui auraient le même probleme, le mieux est semble t il de télécharger "Snmpget".

    Voila ensuite le code à integrer au script Perl:

    {
      # Interrogation de la mib du routeur en snmp
      system("snmpget -v 1 -c $community -Oqv $iprouteur .1.3.6.1.2.1.1.1.0 >Conf\\vers_IOS.txt"); 
      }
    


    $community represente mot de passe défini sur le switch/routeur pour le parametre SNMP Read Community.

    .1.3.6.1.2.1.1.1.0 permet de récupérer la version de l'IOS

    Voila ... Je tiens également à me remercier pour mon aide.
    Sans moi je ne m'en serais jamais sorti !
    3
    1. patrice
       
      lol dommage que personne ne t'ai aidé!!!
      0
    2. jicé
       
      NewKind,

      je viens de tomber sur ton post, je n'ai pas regardé ce qui cloche vraiment. Mais en tout cas l'appel à snmpget via la commande system n'est pas la meilleure solution car c'est beaucoup plus lent que le module snmp de perl.

      Quel message d'erreur avais-tu ?
      0
  2. NewKind Messages postés 16 Statut Membre 2
     
    Re !

    J'ai modifié ma requete et pour l'instant j'en suis là, mais ça ne fonctionne toujours pas :s
     my $versionIOS = '1.3.6.1.2.1.1.1.0';
       {
      # Requete snmp
       my @output3 = $sesnmp->get_request(-versionIOS=> $versionIOS);
       print "@output3\n";
       }
    


    Personne n'a une idée ???
    0