Page 1 sur 2

MAC adresse

Posté : 23 août 2005, 19:45
par Ic3Cub3
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

Posté : 23 août 2005, 19:49
par Cyrano
Pour ma culture, c'est quoi l'adresse MAC au juste ?

Posté : 23 août 2005, 19:51
par Xenon_54
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.

Posté : 23 août 2005, 19:52
par Ic3Cub3

Posté : 23 août 2005, 19:54
par Ic3Cub3
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é ?

Posté : 23 août 2005, 19:57
par Xenon_54
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)

Posté : 23 août 2005, 21:49
par Ic3Cub3
Personne n'a une idee ? => délestage ? Résolu ? :?

Posté : 23 août 2005, 22:04
par Invité
cherche bien sur google, un jour j'était tombé sur une classe ou un script permettant de le faire.

Posté : 23 août 2005, 22:07
par iclo
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.

Posté : 23 août 2005, 22:13
par Invité
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

Posté : 23 août 2005, 22:16
par iclo
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...

Posté : 23 août 2005, 22:29
par Ic3Cub3
moi non plus c'est cela mon probleme, car j'etais deja tombé sur le site NEXEN

Posté : 23 août 2005, 22:40
par Xenon_54
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)

Posté : 24 août 2005, 12:34
par Ic3Cub3
ok ok :?
pas de chance pas possible...
mais merci a toi

Posté : 24 août 2005, 12:37
par Ic3Cub3
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.......