Ich möchte die MAC-Adresse meiner Wi-Fi-Schnittstelle auf einem Raspberry Pi ZW ermitteln, auf dem Raspbian Lite ausgeführt wird.
Gibt es einen Befehl, den ich ausführen kann, um mir dies zu sagen? Gibt es ein Gerät im /procBaum, das es offenbart?
Ich möchte die MAC-Adresse meiner Wi-Fi-Schnittstelle auf einem Raspberry Pi ZW ermitteln, auf dem Raspbian Lite ausgeführt wird.
Gibt es einen Befehl, den ich ausführen kann, um mir dies zu sagen? Gibt es ein Gerät im /procBaum, das es offenbart?
Antworten:
Das Folgende ist ein Fragment eines Bash-Skripts, das ich verwende, um den MAC von Ethernet zu bestimmen, oder wenn dies von WiFi nicht existiert (für Pi Zero W).
Es basiert nicht auf ifconfigeiner anderen Methode zum Erkennen der zugewiesenen IP-Adresse und benötigt lediglich das System, um die Netzwerkhardware zu erkennen.
Dies funktioniert für Jessie, Stretch oder Buster
# Find MAC of eth0, or if not exist wlan0
if [ -e /sys/class/net/eth0 ]; then
MAC=$(cat /sys/class/net/eth0/address)
elif [ -e /sys/class/net/enx* ]; then
MAC=$(cat /sys/class/net/enx*/address)
else
MAC=$(cat /sys/class/net/wlan0/address)
fi
Grundsätzlich können Sie MAC=$(cat /sys/class/net/wlan0/address)den MAC von integriertem WLAN auf Pi3 oder Pi Zero W finden.
MAC=$(cat /sys/class/net/wlx*/address) sollte auf WiFi-Dongles auf Stretch funktionieren, aber Sie können die oben genannten problemlos anpassen, um sowohl auf Jessie als auch auf Stretch für WiFi und Ethernet zu arbeiten.
/sys/class/net?
In Terminal / Konsole eingeben ifconfig wlan0Am Ende der ersten Zeile sollte die Hardwareadresse oder MAC stehen.
Hier eine Beispielausgabe (deutsches Gebietsschema):
pi@RasPi0w-1:~ $ ifconfig wlan0
wlan0 Link encap:Ethernet Hardware Adresse b8:27:eb:xx:xx:xx
...
ifconfigeine gute Alternative für die Zukunft ist.
Viele Distributionen ersetzt ifconfigmit , ipdamit ich die Verwendung entmutigen würde ifconfig.
So zeigen Sie die wlan0-Schnittstelle an:
ip link show wlan0
oder
cat /sys/class/net/wlan0/address
ifconfiges noch viele Jahre verfügbar sein wird. Durch das Entfernen werden nur knapp 800 KB eingespart, wodurch viele alte Skripte beschädigt werden.
ip link showist wahrscheinlich besser geeignet als ip addr show.
ifconfigstandardmäßig nicht mehr zu haben scheint, Raspbian Stretch scheint es zu haben. Ich ziehe es ipvor ifconfig, obwohl ich denke, dass Bob zu Recht sagt, dass dies linkwahrscheinlich angemessener ist als addrin diesem Zusammenhang. Die Lösung, für die ich mich entschieden habe, bestand darin, sie zu lesen /sys/class/net/wlan0/address- es ist keine zusätzliche Analyse erforderlich. Außerdem schreibe ich es wie cat /sys/class/net/wl*/addressin einem naiven Versuch, es für die kommenden "vorhersehbaren Netzwerkschnittstellennamen" zu speichern.
ifconfig wlan0Am Ende der ersten Zeile sollte die Hardwareadresse alias MAC stehen.