2016-05-11 14 views
0

Hallo erhalten Ich versuche, die MAC-Adresse des Client-Rechners aus Python oder java.I versuchte von Java zu erfassen, aber kein Druck luck.its nur für Server mac address.I muß Client-mac address.Ich habe einige Methoden in Python versucht.MAC-Adresse des Client-Rechners aus Python

from uuid import getnode as get_mac 
mac = get_mac() 

Der obige Code Druck Uuid Nummer des machine.But denke ich, es nur für Server machine.I funktioniert müssen für Client machine.Any Hilfe erfassen wird geschätzt.

+0

Es gibt zwei Probleme mit Ihrer Aufgabe. a) Sie können nur die MAC-Adresse von Rechnern in Ihrem lokalen Subnetz abrufen, b) die unteren Schichten des OSI-Stapels sind nicht der Serving-Anwendung des Betriebssystems ausgesetzt. Sie können aus dem ARP-Cache abgerufen werden, aber wie unterscheidet sich auf Ihrem Betriebssystem. –

Antwort

1

Nach einem pip install netifaces:

import netifaces 
print(netifaces.ifaddresses('wlan0')[netifaces.AF_LINK]['addr']) 

Sollte die MAC-Adresse Ihrer Schnittstelle drucken: ac bc: 32: ba: bd: cb

Mehr Infos here

0

Sie verwenden können Systemschnittstellen Adressendatei

def getmacaddress(interface): 
    macaddress = open('/sys/class/net/'+interface+'/address').readline() 
    return macaddress[0:17] 

rufen Sie dies mit MACADDRESS = getmacaddress("wlan0") Dies wird Ihre System-Macadresse zurückgeben.