Détection carte réseau avec php
Fermé
studentw
-
2 févr. 2010 à 09:38
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 8 févr. 2010 à 16:54
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 8 févr. 2010 à 16:54
A voir également:
- Détection carte réseau avec php
- Entrer les informations d'identification reseau - Guide
- Pile carte mere - Guide
- Créer une carte avec des points - Guide
- Débloquer carte sim sans code puk - Guide
- Detection materiel pc - Guide
9 réponses
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
2 févr. 2010 à 09:54
2 févr. 2010 à 09:54
php travaille coté serveur. Si il detecte une carte réseau, ce sera celle du serveur, mais php est plus haut que ca
il est possible avec PHP d'appeller des commandes système grace à la fonction exec. Donc si ton serveur est sous linux, une commande ifconfig, ou iwconfig pourrait renvoyer les info que tu cherche, sous windows ce serait plutot ipconfig...
il est possible avec PHP d'appeller des commandes système grace à la fonction exec. Donc si ton serveur est sous linux, une commande ifconfig, ou iwconfig pourrait renvoyer les info que tu cherche, sous windows ce serait plutot ipconfig...
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
2 févr. 2010 à 14:47
2 févr. 2010 à 14:47
comme je te disais, PHP ne permet pas de faire ceci directement, mais tu peux obtenir tes informations en faisant un appel systeme aux applications réseaux depuis php avec la commande exec www.manuelphp.com/php/function.exec.php
pour savoir si t'es sur linux ou windows: https://forums.commentcamarche.net/forum/affich-16410881-detection-carte-reseau-avec-php#2
et la commande à appeller:
windows: ipconfig
unix: ifconfig et iwconfig
pour savoir si t'es sur linux ou windows: https://forums.commentcamarche.net/forum/affich-16410881-detection-carte-reseau-avec-php#2
et la commande à appeller:
windows: ipconfig
unix: ifconfig et iwconfig
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
2 févr. 2010 à 16:00
2 févr. 2010 à 16:00
est ce que php peut détecter la carte réseau du pc
que veux tu dire par detecter ?
si c'est le numéro IP, PHP peut le donner:
si tu es en réseau local avec le serveur ce sera l'adresse IP local du PC,
ex: 192.168...... donc correspondant à l'IP de la carte réseau dans le réseau local
par contre si ton script est sur un serveur "distant" il te donnera le numéro IP du routeur
ex:90.48.........
que veux tu dire par detecter ?
si c'est le numéro IP, PHP peut le donner:
$IP=$_SERVER[REMOTE_ADDR];
si tu es en réseau local avec le serveur ce sera l'adresse IP local du PC,
ex: 192.168...... donc correspondant à l'IP de la carte réseau dans le réseau local
par contre si ton script est sur un serveur "distant" il te donnera le numéro IP du routeur
ex:90.48.........
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
2 févr. 2010 à 16:20
2 févr. 2010 à 16:20
Dans mon cas:
j'ai un mini réseau local comprenant:
- une Livebox qui est connectée à internet et sert de routeur
- un certain nombre de micros (PC, MAC)
- un micro en Linux qui sert de serveur web de test
si je fais un script php dans lequel je mets:
- si je mets ce script sur mon serveur local de test et l'appelle depuis le navigateur de mon PC, il va me répondre:
Adresse ip=192.168.1.....
c'est l'adresse IP locale de ma carte réseau du PC
- si je mets ce script sur un serveur distant (chez un hebergeur) et l'appelle depuis le navigateur de mon PC, il va me répondre:
Adresse ip=90.48.........
c'est l'adresse IP que Orange a affectée à la Livebox
j'ai un mini réseau local comprenant:
- une Livebox qui est connectée à internet et sert de routeur
- un certain nombre de micros (PC, MAC)
- un micro en Linux qui sert de serveur web de test
si je fais un script php dans lequel je mets:
<?php echo "Adresse ip= ".$_SERVER[REMOTE_ADDR];
- si je mets ce script sur mon serveur local de test et l'appelle depuis le navigateur de mon PC, il va me répondre:
Adresse ip=192.168.1.....
c'est l'adresse IP locale de ma carte réseau du PC
- si je mets ce script sur un serveur distant (chez un hebergeur) et l'appelle depuis le navigateur de mon PC, il va me répondre:
Adresse ip=90.48.........
c'est l'adresse IP que Orange a affectée à la Livebox
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
2 févr. 2010 à 17:18
2 févr. 2010 à 17:18
$_SERVER[REMOTE_ADDR] renvoie l'adress ip du visiteur il me semble.
d'après ce que comprend, il souhaite connaitre l'ip de son ordinateur.
l'ensemble des IP de l'ordi est acecssible via les commadnes décrites plus haut (s'il donnait son systeme (linux ou windows), je lui donnerai bien un code....
il faut aussi savoir que le serveur apache n'écoute pas forcement sur toutes les adresses IP du PC (dans le fichier httpd.conf, après l'instruction listen, n peut specifier els adresses IP, ce qui permet par exemple, si on est connecté à deux réseaux différents, l'un en wifi et l'autre en ethernet par exemple, de n'écouter que sur l'une des deux interface. L'utilisation courante est de n'écouter que sur 127.0.0.1, c'est à dire de n'accepter que les connexions venant du serveur (très utile pour pas que les membres du réseau voient ce que vous développez)
d'après ce que comprend, il souhaite connaitre l'ip de son ordinateur.
l'ensemble des IP de l'ordi est acecssible via les commadnes décrites plus haut (s'il donnait son systeme (linux ou windows), je lui donnerai bien un code....
il faut aussi savoir que le serveur apache n'écoute pas forcement sur toutes les adresses IP du PC (dans le fichier httpd.conf, après l'instruction listen, n peut specifier els adresses IP, ce qui permet par exemple, si on est connecté à deux réseaux différents, l'un en wifi et l'autre en ethernet par exemple, de n'écouter que sur l'une des deux interface. L'utilisation courante est de n'écouter que sur 127.0.0.1, c'est à dire de n'accepter que les connexions venant du serveur (très utile pour pas que les membres du réseau voient ce que vous développez)
studentw
>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
2 févr. 2010 à 17:31
2 févr. 2010 à 17:31
c'est windows
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
2 févr. 2010 à 17:24
2 févr. 2010 à 17:24
dans son cas, je pense qu'il faut soit :
- paramettrer apache (en dur) dans le fichier httpd.conf
- faire un script php qui modifie httpd.conf (c'est sale)
- soit mettre apache ecoutant sur toutes les IP (donc LISTEN 80), faire ce que je disais en haut, récuperer les IP, et essayer de voir si on peut trouver l'IP du serveur utilisé pour une instance du script... et j'ai du mal a voir comment faire
si on connaissait exactement les conditiosn d'utilisation (intranet, extranet, etc...), ce qu'on veut utiliser, bloquer, etc, on pourrait peut etre trouver un moyen détourné, notemment avec le $_SERVER[REMOTE_ADDR]
- paramettrer apache (en dur) dans le fichier httpd.conf
- faire un script php qui modifie httpd.conf (c'est sale)
- soit mettre apache ecoutant sur toutes les IP (donc LISTEN 80), faire ce que je disais en haut, récuperer les IP, et essayer de voir si on peut trouver l'IP du serveur utilisé pour une instance du script... et j'ai du mal a voir comment faire
si on connaissait exactement les conditiosn d'utilisation (intranet, extranet, etc...), ce qu'on veut utiliser, bloquer, etc, on pourrait peut etre trouver un moyen détourné, notemment avec le $_SERVER[REMOTE_ADDR]
studentw
>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
2 févr. 2010 à 17:33
2 févr. 2010 à 17:33
et c'est pour un réseau local
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
2 févr. 2010 à 17:55
2 févr. 2010 à 17:55
je tacherai de trouver un moment moment pour te faire (ou trouver) un script donnant l'ensemble des IP de ton serveur. (d'ailleurs, juste IPv4 ou IPv6 aussi ?).
Perso je te donnerai un exemple focntionnant sur XP.
il faudrais que tu explique mieux le blocage que tu souhaite faire... es ce que c'est un blocage static (permanant), dynamique (pouvant etre modifié via uen page php par exemple). es ce que c'est un blocage juste pour une page / site ou pour tout le contenu du serveur ?
n'oublies pas que plus tu détailles, plus nous pouvons être précis dans nos réponses
Perso je te donnerai un exemple focntionnant sur XP.
il faudrais que tu explique mieux le blocage que tu souhaite faire... es ce que c'est un blocage static (permanant), dynamique (pouvant etre modifié via uen page php par exemple). es ce que c'est un blocage juste pour une page / site ou pour tout le contenu du serveur ?
n'oublies pas que plus tu détailles, plus nous pouvons être précis dans nos réponses
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
2 févr. 2010 à 19:34
2 févr. 2010 à 19:34
tiens, j'ai fait ce script, qui te liste les IP de ton ordi.
chez moi, il ne liste pas l'interface de loopback (127.0.0.1).
on pourrait faire ca beaucoup mieux, en enregistrant les infos dans des ojects, mais je te laisse le soin d'approfondir et publier les ajouts que tu y ferais:
chez moi, il ne liste pas l'interface de loopback (127.0.0.1).
on pourrait faire ca beaucoup mieux, en enregistrant les infos dans des ojects, mais je te laisse le soin d'approfondir et publier les ajouts que tu y ferais:
<?php $cartes = array(); //tableau de stockage des IP de la machine $index = 0; //index gardant le nombre d'IP stockées exec("ipconfig",$sortie); //execution de la commande systeme d'information réseau foreach($sortie AS $indice => $valeur) //traitement de chaque ligne retournée if (substr(trim($valeur),0,10)=="Adresse IP") //si la ligne est un retour d'adresse IP $cartes[$index++] = substr(strstr($valeur,":"),2); //enregistrement de l'ip, et incrémentation du compteur $index echo "Votre ordi a ".$index." IP(s): <br/>"; //affichage des infos foreach($cartes AS $indice => $valeur) echo $valeur."<br />"; ?>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
3 févr. 2010 à 15:28
3 févr. 2010 à 15:28
si tu n'as plus rien à demander sur ce sujet, merci de le passer en résolu
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
>
studentw
3 févr. 2010 à 16:37
3 févr. 2010 à 16:37
ok, tiens nous au courant....
studentw
>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 févr. 2010 à 16:39
3 févr. 2010 à 16:39
ok et merci pour ton aide
saluto
>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
4 févr. 2010 à 15:08
4 févr. 2010 à 15:08
Nabla's merci encore pour ton aide mais je ne sais pas où devrais je mettre ce code et comment je vais le tester est ce par une page html ou comment ?
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
4 févr. 2010 à 20:18
4 févr. 2010 à 20:18
avec la solution proposée par notre ami Nabla's,il faut que tu ai sur chaque pc ou tu veux faire le test que wamp ou easy php soit installé
et le script doit être dans le repertoire www de wamp par exemple et tu appelles le script depuis ton navigateur
car la commande exec("ipconfig",$sortie) ne s'éxécute que sur la machine ou est le script php
et le script doit être dans le repertoire www de wamp par exemple et tu appelles le script depuis ton navigateur
car la commande exec("ipconfig",$sortie) ne s'éxécute que sur la machine ou est le script php
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
5 févr. 2010 à 09:10
5 févr. 2010 à 09:10
oui, c'est bien ce que je disais dans le post 1. On detecte la carte reseau du serveur. Je pense que c'est ce qu'il veut. sinon, pour la carte réseau du client, en faisant simple, on ne peut detecter que celle qui est utilisé pour contacter le serveur. Pour detecter les autres, je ne vois pas de manière autre que les activeX (caca) ...
studentw
>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
8 févr. 2010 à 16:28
8 févr. 2010 à 16:28
merci à tous vos réponse vont vraiment me servir merci beaucoup
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
8 févr. 2010 à 16:54
8 févr. 2010 à 16:54
n'oublies pas re passer le post en resolu si tu as eu la réponse à ta question
2 févr. 2010 à 10:08