Beste Weg, um den MAC von eth0 zu bekommen?

20

Gibt es eine effizientere Möglichkeit, die MAC-Adresse einer Netzwerkkarte unter Linux abzurufen?

Das funktioniert:

ip link show dev eth0 | awk ' /link\/ether/ { print $2 }'

aber kann es über etwas gefunden werden:

cat /sys/net/something
brodul
quelle

Antworten:

27

Es befindet sich in /sys/class/net/eth0/address(oder genauer gesagt, /sys/devices/pciXXXX:XX/XXXX/net/eth0/addresswo XXX Ihre PCI-Bus-ID ist, dies ist jedoch von System zu System unterschiedlich).

(Ich habe das übrigens mit gefunden find /sys -name eth0und mir die Dateien in den Verzeichnissen angesehen.)

Zanchey
quelle
4

Es ist auch erhältlich über ifconfig:

kce@thinkpad:~$ /sbin/ifconfig eth0 |grep HWaddr
eth0      Link encap:Ethernet  HWaddr 00:1e:37:cc:ce:cc  

Oder wenn Sie nur die MAC-Adresse möchten:

kce@thinkpad:~$ /sbin/ifconfig eth0 |awk '/HWaddr/{print $5}'
00:1e:37:cc:ce:cc

quelle
2
Nun, du musst es immer noch abhaken oder abschneiden. Weil der Mac am Ende der Leitung steht.
Brodul
3

Wenn Sie das moreutilsPaket installieren können , gibt es ein ifdataTool. Beschreibung sagt:

ifdata: Informationen zur Netzwerkschnittstelle abrufen, ohne die ifconfig-Ausgabe zu analysieren

Hier ist ein Beispiel:

me@box:~$ ifdata -ph eth0
00:21:86:61:35:44
Michał Šrajer
quelle