IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Script php supervision des equipements d'un reseau


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Homme Profil pro
    Licence reseaux et services informatique
    Inscrit en
    Avril 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Licence reseaux et services informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Script php supervision des equipements d'un reseau
    Bonjour tout le monde

    je suis entrain de preparer une application web qui permet de verifier l'etat d'un equipement deja enregistré dans une base des données & identifié par son adrese ip s'il est actif icone verte s'il est inactif icone rouge pour mon projet fin d'etude alors quelqu'un peut m'aider d'avoir ce simple script ou bien corriger ce script qui me renvoie toujours l'erreur suivant :
    Warning: snmpwalk(): No response from 197.15.56.224 in C:\wamp\www\pfe\supervision.php on line 64
    Warning: snmpwalk(): No response from 197.15.56.224 in C:\wamp\www\pfe\supervision.php on line 64
    Call Stack
    # Time Memory Function Location
    1 0.0030 148096 {main}( ) ..\supervision.php:0
    2 8.1705 158392 snmpwalk ( ) ..\supervision.php:64
    et voila le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    <html>
     
    <body bgcolor="#EAF4FF">
     
    <font color="#6666CC"><h3><strong>les routeurs:</strong></h3></font>
    <table cellspacing="20">
    <?php
    mysql_connect("localhost", "root", ""); // Connesion à la base de données
    mysql_select_db("monitor");
    //selection des adresses ip,type et le libelle d'equipements
    $sql = "SELECT `ip`,`nom`,`libelle`FROM `equipements` ";
    $requete = mysql_query( $sql) ;
    while($r=mysql_fetch_row($requete))
     
           {$ip="$r[0]"; 
    //Recuperation  les adresses physiques et les noms des equipements
     
     
    // ping sur les equipement
    $ping= "ping -n 1 ".$ip;
    exec($ping,$r);
    $nom="$r[1]";
    $libelle="$r[2]"; 
    if( $libelle=='Routeur')
    {
     
    for($i=6;$i< sizeof ($r);$i++) 
               {
     
    if(($r[$i]=="Impossible de joindre l'hote de destination.")||($r[$i]=="Delai d'attente de la demande depasse."))
                  {
     
      if (! $sock = @fsockopen($ip))
     
     
     
        $fp=fopen("log.txt","a"); // Ouverture du fichier avec le mode ecriture
        fputs($fp, "\n"); // on va a la ligne
        $date = date("d-m-Y"); // On recupere la date de l'incident
        $heure = date("H:i"); // On recupere l'heure  de l'incident
        fputs($fp,"$date   $heure   $ip   deconnecte  "); // On ecrit la date, l'heure, l'ip et l'etat
        fclose($fp); // Fermeture du fichier
         /* $mon_email = "khalil.guessmi3@gmail.com";
       
       
       // Headers
       $headers  = 'MIME-Version: 1.0' . "\r\n";
       $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
       $headers .= "From : <".$mon_email.">";
       $subject = "panne";
       // Message
       $message = " urgent ilya une panne au niveau de l'equipement d'adresse ip :$ip des le  date("d-m-Y") date("H:i")";
       //Destinataire
       $to = $mon_email;
       // Envoie de l'email
       mail($to,$subject,$message,$headers);   */ 
     
     
    echo "<td width='200' align='center'>$libelle<br><imgs rc='/image/routeur_att.bmp'><br>$ip<br></td>";
     
     
    $i+=9;
    }     
    else{ $a = snmpwalk("$ip", "public", "");
    for ($i=0 ; $i<count($a); $i++)
    { $a[4];
    $i+=21;
    $a[25];
    $i=count($a);
    }	
     
     
    echo "<td  width='200' align='center'>$libelle<br><img src='/img/router.png'><br>$a[4]:$ip<br>$a[25]</td>";
     
    $i+=11;}
     
              }
        }
     }
    ini_set('max_execution_time', 300); //300 seconds = 5 minutes
     
    ?>
     
     
     
    </table>
    <META http-equiv="Refresh" content="8">
    <table align="right"><tr>
    <td><a href="log.txt"><img src="../image/log.bmp"</a></td>
    <td><a href="statistique.php"><img src="../image/stat.bmp"</a></td></tr></table>
     
     
     
    </body>
    </html>

  2. #2
    Membre du Club
    Inscrit en
    Février 2010
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 277
    Points : 64
    Points
    64
    Par défaut
    Bonjour,

    Je connais un peu les protocoles réseaux et en particulier SNMP mais en revanche je ne connais pas l'API/fonction de requête SNMP de PHP.

    Si tu as un message d'erreur de type "No response from 197.15.56.224 " cela veut dire que l'équipement réseau que tu interroge, identifié par son adresse IP (ta variable $ip), ne répond pas. Soit parce que l'équipement n'est pas accessible sur le réseaux soit le nom de communauté "public" que tu utilises n'est pas le bon. Une autre raison possible est que l'agent SNMP embarqué dans le routeur n'est pas activé/configuré.

    Pour avoir lu rapidement ton code, tu vérifies que l'équipement est accessible en IP via un ping. Si l'équipement est accessible en IP alors tu interroges l'agent SNMP du routeur via un snmpwalk. Celui ci ne répond pas donc a mon avis l'agent SNMP n'est pas configuré/actif ou le nom de communauté "public" n'est pas le bon. Peut-être aussi que la version SNMP de ton routeur est la v3 et que la v1ou la v2c n'est pas activé/configuré.

    Une autre raison possible est que tu utilises mal la fonction snmpwalk de l'API PHP. Là je ne sais pas du tout. Je te conseille de tester avec un snmpget (fonction snmpget(), sans doute) sur le sysObjectID par exemple d'un routeur accessible en IP .

  3. #3
    Candidat au Club
    Homme Profil pro
    Licence reseaux et services informatique
    Inscrit en
    Avril 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Licence reseaux et services informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    merci beaucoup pour votre reponse monsieur, mais bon j'ai oublié de vous dire que ca marche sauf lorsque les routeurs sont actifs quand je debranche les equipement (etat inactif) la reponse se termine avec ce message d'erreur sans l'envoie d'email .

Discussions similaires

  1. [PHP 5.0] Supervision des equipements reseau
    Par jajashou dans le forum Langage
    Réponses: 5
    Dernier message: 29/05/2014, 14h34
  2. Script php pour des rubriques et sous rubriques.
    Par Knular dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 25/09/2012, 14h22
  3. [JpGraph] script php pour des graphiques
    Par etudianti4 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 11/02/2008, 21h57
  4. [Upload] Script PHP pour des images
    Par bodysplash007 dans le forum Langage
    Réponses: 4
    Dernier message: 21/05/2007, 20h39
  5. Réponses: 4
    Dernier message: 14/12/2005, 12h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo