Accueil > > > [CLASSE PHP5]SCAN IP V2.0 - SCANNER DES PLAGES D'IP ET RETROUNER LE RÉSULTAT DANS UN TABLEAU
[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.
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
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
|
Derniers Blogs
[SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|