Lister machines d'un reseau?

Résolu
bastientelecom Messages postés 28 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 1 mars 2007 - 5 déc. 2006 à 14:27
bastientelecom Messages postés 28 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 1 mars 2007 - 21 janv. 2007 à 18:42
Bonjour à tous,

Nous travaillons actuellement sur un projet qui vise à fixer un temps d'utilisation pour des PC équipée de Windows XP présents sur un réseau local.

J'aimerais, du coté administration, pouvoir scanner le réseau pour trouver toutes les machines présentes sur celui ci, soit par leur nom, soit par leur adresse IP, le tout en langage PHP.

Merci d'avance pour votre aide.

6 réponses

Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
6 déc. 2006 à 15:05
Le ping d'une adresse réseau ne donne pas les noms des
hôtes, mais combinée avec les bonnes options (plus du nettoyage...)
donne les IP des machines connectées.

Si on place tout ca dans une boucle et qu'on fait un host sur l'IP récuperée, on peut avoir les noms d'hote de ces IP.


Exemple pratique :


15:02 bling182@Audeline ~% for host in $(ping -A -c 5 -b 10.90.0.0 |
cut -d' ' -f4 | sed '{s/:// ; s/^[^1].*$// }' | sort -u) ; do host
$host ; done

WARNING: pinging broadcast address

Host 99.10.90.10.in-addr.arpa not found: 3(NXDOMAIN)

Host 32.6.90.10.in-addr.arpa not found: 3(NXDOMAIN)

Host 126.82.90.10.in-addr.arpa not found: 3(NXDOMAIN)

Host 127.83.90.10.in-addr.arpa not found: 3(NXDOMAIN)

Host 167.83.90.10.in-addr.arpa not found: 3(NXDOMAIN)

Host 60.83.90.10.in-addr.arpa not found: 3(NXDOMAIN)


(Il s'agit d'addresses privées, et le DNS n'est pas configuré pour jouer cache whois, d'ou le "not found")
3
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
5 déc. 2006 à 18:27
Salut :)

Tu peux essayer de récuperer le résultat d'un exec ('ping -A -b ');

Seul prérequis, ils faut que tes machines répondent au ping...
0
bastientelecom Messages postés 28 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 1 mars 2007
6 déc. 2006 à 14:50
Re,
L'idée d'utiliser les résultats d'une commande n'est pas bête, bien que le ping d'une adresse réseau n'ai jamais donné les hôtes de ce réseau et que les options -A et -b n'existe pas !!!
Je pourrais cependant utiliser le commande "net view" et traiter le résultat d'une manière ou d'une autre. Mais je préférerai avoir une fonction php déjà toute faite...
Donc merci si vous avez des idées...
0
bastientelecom Messages postés 28 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 1 mars 2007
6 déc. 2006 à 15:09
Autant pour moi ! Bien joué...


Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bastientelecom Messages postés 28 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 1 mars 2007
19 janv. 2007 à 14:36
Re,
Je ne parviens à mettre en place ce que tu m'as donné. Les commandes cut et sed sont des commandes linux ? Comment je fais sous Windows ?
Je suis désolé j'ai un peu de mal là !!!
Merci d'avance
0
bastientelecom Messages postés 28 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 1 mars 2007
21 janv. 2007 à 18:42
Voilà j'ai adapté à Windows :

    $netview = array();
    exec('net view',$netview);
    for ($i=3;$i<count($netview)-2;$i++)
    {
        $nom = explode(" ",$netview[$i]);       
        $nom[0] = substr($nom[0],2);
        printf($nom[0]."
");
    }

affiche les noms des ordinateurs...

A+
0
Rejoignez-nous