Kablosuz arayüzümün MAC adresini nasıl bulabilirim?


10

Raspbian Lite çalıştıran bir Raspberry Pi ZW üzerindeki Wi-Fi arayüzümün MAC adresini belirlemek istiyorum.

Bana bunu söyleyebileceğim bir komut var mı? /procAğaçta onu ifşa edecek bir cihaz var mı ?


1
Terminale girin ifconfig wlan0İlk satırın sonunda donanım adresi aka MAC olmalıdır.
LotPings

2
@LotPings Bunu bir cevap verebilirsin!
joan

Yanıtlar:


9

Aşağıda, Ethernet MAC'ini belirlemek için kullandığım bir bash betiğinin bir parçası veya WiFi yoksa (Pi Zero W için).

ifconfigTahsis edilen IP'yi tespit etmek için veya başka bir yönteme dayanmaz ve sadece ağ donanımını algılamak için sisteme ihtiyaç duyar.

Bu Jessie, Stretch veya Buster için çalışıyor

# 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

Temel olarak MAC=$(cat /sys/class/net/wlan0/address), Pi3 veya Pi Zero W'da dahili WiFi'nin MAC'ini bulmak için kullanabilirsiniz .

MAC=$(cat /sys/class/net/wlx*/address) Stretch'te WiFi dongle'larında çalışmalıdır, ancak WiFi ve Ethernet için hem Jessie hem de Stretch üzerinde çalışmak için yukarıdakileri kolayca uyarlayabilirsiniz.


Çok iyi bir cevap. Teşekkür ederim! Raspbian Stretch öngörülebilir ağ arabirimi adlarını kullanıyor mu? Altındaki yapının adını etkiler /sys/class/netmi?
Bex

1
@Bex Bağlıdır; yeni bir yükleme varsayılan olarak öngörülebilir ağ arabirimi adları kullanır, yükseltmeler hakkında bilmiyorum. Önceki davranışı geri yüklemek kolaydır, ayrıntılar için bkz . Ağ / WiFi / Statik IP'yi nasıl ayarlarım . Donanım numaralandırma işlemi tarafından seçilen adın gösterilmesi gerekir. Bu işlemi değiştirmenin birkaç yöntemi vardır.
Milliways

10

Terminal / konsola girin ifconfig wlan0İlk satırın sonunda donanım adresi aka MAC olmalıdır.

Burada örnek bir çıktı (Almanca yerel ayarı):

pi@RasPi0w-1:~ $ ifconfig wlan0
wlan0     Link encap:Ethernet  Hardware Adresse b8:27:eb:xx:xx:xx
...

Bu cevabı iptal ettim - ama ifconfigileride iyi bir alternatif olduğunu düşünmüyorum .
Bex

1
Anlaşıldı, neyse ki iki alternatif var.
LotPings

7

Birçok dağıtımın yerini alıyor ifconfig, ipböylece kullanımını caydırırdım ifconfig.

Wlan0 arayüzünü göstermek için:

ip link show wlan0

veya

cat /sys/class/net/wlan0/address

Ref: https://www.linux.com/learn/replacing-ifconfig-ip


Eminim ifconfiguzun yıllar boyunca hala kullanılabilir olacak. Kaldırıldığında, çok sayıda eski komut dosyasını kırarak 800 kB tasarruf edersiniz.
Dmitry Grigoryev

Sorun şu ki, o kişi maaş istiyor.
Dmitry Grigoryev

1
Yeni uygulamalarda kullanımdan kaldırılmış bir komut kullanmaya devam etmek üzücü. Bunu işle ilgili durumlarda gördüm ve bu da problemi önünüze itmek gibi ve zamanla büyük olacak! Onunla uğraşmaya başlayın!
MatsK

2
Bu durumda, ip link showmuhtemelen daha uygundur ip addr show.
Bob

1
Masaüstü sistemimde, ifconfigartık varsayılan olarak görünmeyen Debian Stretch'i çalıştırıyorum , Raspbian Stretch var gibi görünüyor. Tercihim ipüzerinde ifconfigBob söyleyerek doğru olduğunu düşünüyorum olsa linkmuhtemelen daha uygun olduğunu addr, bu bağlamda. Yine de benim aradığım çözüm, onu okumaktı /sys/class/net/wlan0/address- ek ayrıştırma gerekmiyordu. Ayrıca, cat /sys/class/net/wl*/addressgelecekteki "öngörülebilir ağ arabirimi adları" için kaydetmek için naif bir girişimde olduğu gibi yazıyorum .
Bex
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.