|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
[CLASSE PHP5]SCAN IP V2.0 - SCANNER DES PLAGES D'IP ET RETROUNER LE RÉSULTAT DANS UN TABLEAU
Information sur la source
Description
Cela fait déjà quelque mois que le code existe sur l'admin de mon site mais je l'avais rédigé jusqu'à lors sous la forme de fonctions, pas très pratique quand il est utilsé dans plusieurs endroit. J'ai donc décidé de le transformer en classe, de maniere a faciliter son utilisation et j'avais envie de vous en faire profiter. Concretement, cette classe porte bien son nom puisqu'avec une simple poignée de renseignements elle vous retourne une liste complete des équipements (avec leur type et localisation) sur une plage d'adresse IP donnée. Il vous suffit juste de donner le pool (deux premiers chiffre de l'adresse IP), la plage (le 3ème chiffre), le nombre de plage que vous désirez scanner et c'est parti! Le script va se carger de générer avec deux ou trois boucles toutes les adresses IP possible dans ce que vous lui avez donné à manger. Pour finir, je préciserai que deux 'modes' sont disponibles, a savoir le mode 'simple' qui ne scanne qu'une seule plage d'adresse, sois 255 adresses différentes ou le mode 'multiple' qui scanne plusieurs plages (d'ou le nombre de plage a fournir).
Source
- //Code a mettre dans votre page (index.php par exemple)
- include('ScanIP.Class.php');//On importe la classe
-
- $ScanIP = new ScanIP($operateur, $typeTest, $locationQuery);
- $ScanIP->addPool($pool, $depart, $NbPlages);
- $ScanIP->launch();
-
- //Si vous desirez un compte-rendu graphique, rajoutez juste ceci :
- $url = $ScanIP->generateGraphResume('chemin_de/sauvegarde');
-
- ?>
-
- <img src="<? echo $url;?>" alt="" />
//Code a mettre dans votre page (index.php par exemple)
include('ScanIP.Class.php');//On importe la classe
$ScanIP = new ScanIP($operateur, $typeTest, $locationQuery);
$ScanIP->addPool($pool, $depart, $NbPlages);
$ScanIP->launch();
//Si vous desirez un compte-rendu graphique, rajoutez juste ceci :
$url = $ScanIP->generateGraphResume('chemin_de/sauvegarde');
?>
<img src="<? echo $url;?>" alt="" />
Conclusion
Pour faire tourner le scanner, un objet est a creer (avec les paramètres qui vont bien avec, rdv dans le fichier), des pools sont a indiquer à l'objet (par le biais de $votreObjet->addPool();) et une fonction est a appeler : $votreObjet->launch(); et c'est parti! Deux choix s'offrent à vous : fournir les paramètres par un formulaire ou coder en dur dans votre page les paramètres a definir. Cette version n'est basée que sur IPV4... peut-etre qu'un jour, quand IPV6 se sera démocratisé, je ferai les modifications nécéssaires. ///--------------------- Au niveau des opérateurs, cette vision est un peu abstraite mais c'est un moyen pour savoir qui possède quoi durant le scan. La définition d'opérateurs permet en outre de ne selectionner que les équipements de tels ou tels opérateurs (par le biais des patterns de determination de type), les autres entrées seront désignée comme 'bad'. ///--------------------- Sur le point du vue des deux fonction de détermination du type et de la localisation, vous pouvez ajouter vos propres paterns et type et ceux que j'ai fournis peuvent deja vous montrer la marche a suivre. Libre a vous donc de modifier ces deux fonction pour obtenir les résultats escomptés. ///--------------------- En dernier lieu, la classe est uniquement compatible PHP5 et la librairie GD2 est nécéssaire pour génerer les compte-rendus graphiques. Le choix du PHP5 m'était plus pratique, tous ceux qui ne pourrons pas faire fonctionner la classe à cause de ce choix recoivent mes sincères exuses.
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 22 juillet 2006 16:02:52 :
- Correction d'un erreur bete dans la deuxieme partie de l'explication
- 26 juillet 2006 21:05:41 :
- Comme précisé dans l'un de mes commentaires, cette MAJ concerne la méthode addPool(); qui remplace la fastidieuse confection d'un array résumant l'ensemble des propriétés des pools à scanner (cétait vraiement pas très malin de ma part). Elle simplifie donc la vie de l'utilisateur.
Pour le reste, les paterns de localisation et de typage resterons la ou ils sont car je pense que la classe doit etre personnalisée selon les besoins de chacun (meme si c'est pas le but d'une classe en général). Seul le moteur (ScanPlage();) doit rester tel quel. Je ne peut prévoir ce qui va etre determiné pour la localisation et le type (je vous en ai fourni quelque-uns, ceux dont j'avais besoin) donc je ne peut pas finaliser la classe de ce coté la.
La source est maintenent dans sa version finale (du moin je pense), bonne utilisation.
- 07 mai 2007 19:37:57 :
- Post de la V2.0 : Modifications dans le fonctionnement ainsi que l'implémentation des graphs resumant le scan.
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
scanner repertoire [ par morgandetoi06 ]
comment faire pour scanner un repertoire "photos/" et afficher toutes les photos de ce repertoire ?mercu de votre aidewww.morgan06.fr.fm
dilemme pour scanner un répertoire distant [ par floflotz ]
bonjour à tousje suis en train de faire un petit script et je rencontre un gros souci !je souhaite scanner un répertoire distant, répertoire contenant
Utiliser un scanner en php [ par mictif ]
bonjour, j'aimerais savoir si il ete possioble de gerer un scanner en php ;je vous explique la fonctionnalité que j'aimerais integrer dans mon a
PHP sans acces adsl [ par boblebricotueur ]
Je voudai savoir comment faire pour faire du php sur mon pcmerci
gethostbyadress [ par wizad ]
Bonjour,J'utilise la fontction gethostbyadresse dans un de mes script php malheureusement les visiteurs de certain réseau (type entrprise ou scolaire)
Condition PHP pb d'operateurs [ par d9thc ]
Bonjour à vous, j'ai une question sur les condition en php, commencons par le début: <f
scanner des photos et enregistrer en format JPG [ par merkhaled ]
bonjour, je souhaiterais savoir si on pouvait scanner une image (twain) en php, et l'enregistrer en format jpg, en local ou sur un serveur distant (ft
scanner un répertoire [ par mcleod1 ]
Quelqu'un sait il comment scanner un répertoireet lister tous les sous répertoires non vides avec lien vers ceux ci (création d'un html avec liste de
Scanner un dossier vers mysql... [ par R3dDragon ]
Bonjour à tous,J'aimerais s'il est possible de scanner les fichiers d'un dossier, et d'en envoyé le nom, ainsi que le nom complet (avec extension) ver
Module pour piloter un scanner [ par sasigabon ]
Bonjour,Je suis en train en train de développer un logiciel GED en PHP4, et j'ai 3 questions fondamentales.1Q : Je suis bloqué pour coder la fonction
|
Téléchargements
Logiciels à télécharger sur le même thème :
|