PHP mac Adresse auslesen

Sarius87

Banned
Registriert
Mai 2016
Beiträge
888
hallo, wie kann ich die mac adresse in php auslesen ? habe viele scripts gefunden aber die funktionieren alle nicht ... hier erhalte ich eine ausgabe die nicht zu dem passt was in ipconfig /all steht :

Code:
$ifconfig=`ifconfig`;
preg_match('/([0-9a-f]{2}:){5}\w\w/i', $ifconfig, $mac);
$mac = $mac[0];
echo $mac;


wie lese ich die aus ?
 
Wozu willst du denn die Mac Adresse auslesen? Von Computern aus dem Internet? Denn das geht eigentlich nicht. Das geht maximal in deinem eigenen Netzwerk.
 
hm, wie kann ich sonst ein gerät eindeutig erkennen (außer an der ip denn die ändert sich ja) ?
 
anhand seines namens, siehe die ausgabe von ifconfig. geht natuerlich nur mit lokalen geraeten.

der auftrag ist im groben durch die folgenden schritte zu erledigen:
  1. mac-anzeigendes programm ausfuehren - z.b. "ifconfig <dev>" oder "ip addr show dev <dev>" mit exec()
  2. dessen ausgabe parsen - z.b. wie bei dir mit preg_match, wobei ich mir bei dem pattern nicht so sicher bin

die loesung hier gefaellt mir z.b. (<devname> ersetzen):
PHP:
<?php

exec("ip addr show dev <devname>", $output);
preg_match("@link/ether ((?:[0-9a-f]{2}:?){6})@sim", implode("\n", $output), $matches);

$mac = $matches[1];
echo $mac;
 
Du kannst die Mac Adresse des Requestenden Rechners nicht rausbekommen, bestenfalls wenn er in Deinem Netz ist. Sonst siehst Du bestenfalls die MacAdresse des letzten Routers. Was Du suchst ist eher irgendeine Form von Device Fingerprinting, ich empfinde das aber als unseriös. Benutze die einfach Cookies, wenn der User das nicht möchte und unterbindet lass es sein.
 
Zurück
Oben