PHPFrance

Discuter de tout ce qui touche au PHP, en français.

Vers le contenu

» Masquer les résultats de la recherche

Recherche dynamique PHPfrance

  1. Effectuez une recherche, les résultats s'afficheront dynamiquement ici.

MAC adresse

Pour ceux qui débutent en PHP.

MAC adresse

Messagede Ic3Cub3 le 23 Aoû 2005, 19:45

Hello a vous,
une simple question : est il possible de recuperer l'adresse MAC d'un pc qui se connecte sur mon site ?
L'adresse IP je l'obtiens sans probleme, mais la MAC...
J'ai cherché du coté de google et apparemment ce ne serait pas possible...mais bon j'espere tout de meme que l'un d'entre vous a un miracle pour moi :)
Merci d'avance
Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Publicité

Messagede Cyrano le 23 Aoû 2005, 19:49

Pour ma culture, c'est quoi l'adresse MAC au juste ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:
Avatar de l’utilisateur
Cyrano
Ganesha
 
Messages: 18039
Inscription: 07 Fév 2005, 15:27
Localisation: Paris XIII

Messagede Xenon_54 le 23 Aoû 2005, 19:51

Bonjour,

Non, impossible. L'adresse MAC contenu dans la trame IP est modifiée à chaque noeud rencontré. Donc il n'y a aucun moyen de connaître directement l'adresse MAC à moins de lui demander directement.
La programmation est l'expression de la poésie d'un programmeur
Génération PHP
Avatar de l’utilisateur
Xenon_54
Magohamoth
 
Messages: 1839
Inscription: 07 Fév 2005, 14:40
Localisation: Qc

Messagede Ic3Cub3 le 23 Aoû 2005, 19:52

Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Messagede Ic3Cub3 le 23 Aoû 2005, 19:54

C'est bien ce que je me disais PHP, merci a toi.
Mais maintenant, comment faire pour eventuellement demander ( faire la requete ) cette adresse MAC directement au PC concerné ?
Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Messagede Xenon_54 le 23 Aoû 2005, 19:57

Bonjour,

Bonne question. À moins d'utiliser un exécutable directement sur le poste, je ne vois pas trop comment... Car si je me souviens bien de mes cours de réseautique, à aucun moment le destinataire n'a connaissance de l'adresse MAC de l'expéditeur (à moins qu'il soit directement connecté ensemble)
La programmation est l'expression de la poésie d'un programmeur
Génération PHP
Avatar de l’utilisateur
Xenon_54
Magohamoth
 
Messages: 1839
Inscription: 07 Fév 2005, 14:40
Localisation: Qc

Messagede Ic3Cub3 le 23 Aoû 2005, 21:49

Personne n'a une idee ? => délestage ? Résolu ? :?
Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Messagede Invité le 23 Aoû 2005, 22:04

cherche bien sur google, un jour j'était tombé sur une classe ou un script permettant de le faire.
Invité
 

Messagede iclo le 23 Aoû 2005, 22:07

Je n'ai malheureusement pas de solution à proposé, mais je me permets d'apporter quelques précisions.
L'adresse MAC est l'adresse physique de la carte réseaux, elle se trouve
sous le niveau IP. Bref c'est plutot "boite-noire" et je ne suis pas sur qu'on puisse facilement l'atteindre vu que c'est très loin des couches protocoles ou applications.

Je me permets de m'interroger sur ce que tu veux faire exactement avec la MAC adresse, vu qu'elle n'est plus forcément immuable (on peut la modifier dans certains cas avec des softs des fabriquants) donc si c'est pour la sécurité que tu veux l'utiliser, je suis un peu sceptique.
Avatar de l’utilisateur
iclo
ViPHP
ViPHP
 
Messages: 2105
Inscription: 09 Fév 2005, 23:00

Messagede Invité le 23 Aoû 2005, 22:13

tiens je vien de trouver un lien.
j'ai fait rapide regarde si ça te va:
http://www.nexen.net/scripts/details.php?scripts=915
Invité
 

Messagede iclo le 23 Aoû 2005, 22:16

Interessant, je ne pensais pas que ça serait aussi accessible,
Reste probablement à utiliser les commandes unix si c'est à utiliser sur un serveur. Je ne connais pas l'équivalent unix de la commande arp windows.

EDIT : si tu veux l'adresse mac de l'expéditeur d'une requêtte http, il va falloir que ces instructions soient executés sur le pc client., et là, j'ai peur que ça soit difficilement faisable...
Dernière édition par iclo le 23 Aoû 2005, 22:38, édité 1 fois.
Avatar de l’utilisateur
iclo
ViPHP
ViPHP
 
Messages: 2105
Inscription: 09 Fév 2005, 23:00

Messagede Ic3Cub3 le 23 Aoû 2005, 22:29

moi non plus c'est cela mon probleme, car j'etais deja tombé sur le site NEXEN
Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Messagede Xenon_54 le 23 Aoû 2005, 22:40

Bonjour,

ARP correspond à la table locale de correspondance entre les adresse IP et MAC. Cependant, il y a une mise en garde. La manière dont fonctionne les protocoles TCP/IP fait en sorte que l'adresse MAC contenue dans la table ne correspond pas nécessairement à l'adresse IP associée.

Pour faire une histoire (très) courte, voici comment fonctionne la transmission des paquets sur l'Internet:

Supposons 3 noeuds différents. Les adresse MAC ont été raccourcies afin d'être plus concis.

Poste A
Adresse IP: 24.200.23.41
Adresse MAC: FA:BC

Routeur B (un routeur peut avoir plusieurs ports et donc plusieurs adresses IP et MAC pour chacun d'eux)
Adresse IP: 24.200.23.1
Adresse MAC: D3:A7
Adresse IP: 24.200.24.1
Adresse MAC: 12:4C

Poste C
Adresse IP: 24.200.24.12
Adresse MAC: 13:4E


1) Donc si A (le client) veut communiquer avec C (le serveur) il doit effectuer en premier lieu si l'adresse IP est située dans le même sous-réseau. Ce n'est pas le cas.

2) Il vérifie dans sa table ARP locale s'il n'aurait pas une adresse MAC correspondant à l'adresse IP de destination (24.200.24.12) Non. (on suppose qu'elle est vide pour le moment) Ce n'est pas le cas.

3) Il effectue une requête ARP afin de connaitre l'adresse MAC de celui qui possède l'adresse IP 24.200.24.12 ou qui pourrait transférer le tout au destinataire. Le Routeur B répondra à la requête en transmettant son adresse MAC D3:A7. Le Poste A conservera donc dans sa table ARP locale cette adresse pour référence future.

4) Le Routeur B recoit le paquet et le transmet à sa deuxième interface possédant l'adresse IP 24.200.24.1. Il fera le même procédé pour récupérer l'adresse MAC de celui qui pourra recevoir ou transmettre le paquet. Le poste C répondra à l'appel et lui transmettra son adresse MAC 13:4E.

5) Le routeur B transmet le paquet à Poste C qui est le destinataire.


À tout moment lors du procédé, Poste A n'aura jamais connaissance de l'adresse MAC du poste C. Donc si tu trouves une occurence dans la table ARP locale de ton poste, ce ne sera pas celle du destinataire mais bien du prochain noeud si tu désires lui envoyer un paquet. (donc certainement un routeur quelconque)
La programmation est l'expression de la poésie d'un programmeur
Génération PHP
Avatar de l’utilisateur
Xenon_54
Magohamoth
 
Messages: 1839
Inscription: 07 Fév 2005, 14:40
Localisation: Qc

Messagede Ic3Cub3 le 24 Aoû 2005, 12:34

ok ok :?
pas de chance pas possible...
mais merci a toi
Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Messagede Ic3Cub3 le 24 Aoû 2005, 12:37

En fait ce ke je voulais faire etais d'identifié de maniere unique chaque visiteur sur mon site.
N'ayant pas d'acces aux bases de donnees ( merci hebergeur ) et n'ayant pas de partie membre ( donc d'identification ) je cherchais une autre solution...
J'ai pensé aux cookies, mais il faut encore que le visiteur les accepte....
C'etait principalement pour faire des stats....
Bref si quelqu'un a une autre idee.......
Ic3Cub3
Ma première boucle
 
Messages: 104
Inscription: 05 Aoû 2005, 20:53

Suivante

Retourner vers PHP débutant

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 13 invités

  • Publicité