Kiedy robię ifconfig, pokazuje wlan1 jako
wlanx00c0ca8476b6
Czym na świecie jest ten bełkot?
Uwaga: wyświetla się w przypadku mojego adaptera Wi-Fi USB. Moje wewnętrzne wlan0 pokazuje się dobrze.
Uwaga: Zrobiłem aktualizację (Kali Linux 2016). Czy kodowanie znaków jest pomieszane? Nie wiem jak to naprawić. To wcześniej tego nie pokazywało. Kiedyś to było wlan1. :-(
Nie mogę nawet użyć mojego adaptera, ponieważ kiedy:
airmon-ng wlx00c0ca8476b6
Dostaję:
ERROR adding monitor mode interface: command failed: Invalid argument (-22)
Musi więc występować problem inny niż sugerowany komentarz poniżej, mówiąc, że jest to „adres MAC adaptera”. Nie powinien pokazywać adresu MAC. Ma pokazywać nazwę interfejsu.
character-encoding
ifconfig
IRGeekSauce
źródło
źródło
Odpowiedzi:
Tak, to rzeczywista nazwa interfejsu, a nie problem z kodowaniem. Te „dziwne znaki” to litery i cyfry.
Ogólny
en*
lubwl*
format (np.enp1s0
Lubwlp2s0
) pochodzi od systemowych „trwałych nazw interfejsów”, które są zainspirowane wcześniejszą funkcją biosdevname Fedory . Ustawia nazwy interfejsów na podstawie funkcji sprzętowych -enp*
lubwlp*
opisywałby magistralę / gniazdo PCIenu*
lubwlu*
opisywałby port USB;enx*
lubwlx*
opisałby adres MAC.Jest to przydatne w systemach z wieloma interfejsami sieciowymi, ponieważ są one wykrywane w określonej kolejności, więc od czasu do czasu można zamieniać
eth0
lubeth1
zamieniać miejsca.systemd nie włącza jednak domyślnie nazw opartych na adresach MAC - jest to dodatek specyficzny dla Debiana , który jest stosowany tylko w interfejsach podłączonych przez USB. (Nie mogą korzystać z domyślnego systemowego nazewnictwa, ponieważ ścieżki USB… nie są tak trwałe i przewidywalne).
Podczas gdy konfiguracja Debiana używa nazw generowanych przez systemd-udev wewnętrznie, jest technicznie implementowana jako osobny plik reguł udev i nie honoruje dokładnie tej samej konfiguracji. To honoruje
net.ifnames=0
(patrz poniżej).Przyczyna
airmon-ng
niepowodzenia, jak sądzę, jest taka, że nazwa jest za długa - nazwy interfejsów w Linuksie są ograniczone do 16 bajtów, więc airmon-ng nie ma już miejsca na dodanie „mon” do nazwy nowego interfejsu monitora.Jednak tak naprawdę nie potrzebujesz „airmon-ng” z nowoczesnymi sterownikami - wszystko to jest skrypt powłoki, aby ujednolicić kilka różnych rodzajów konfiguracji interfejsu (nowoczesnego i starożytnego).
Aby całkowicie wyłączyć zmianę nazwy , uruchom z
net.ifnames=0
parametrem jądra, np. Dodaj go/etc/default/grub
. (Istnieją inne metody, ale wymagają one zbyt dużej edycji konfiguracji i mogą ulec zmianie w przyszłości).Powinno to przywrócić standardowe
wlan*
nazwy po ponownym uruchomieniu.Aby ręcznie utworzyć interfejs monitora , użyj
iw
:Później usuń go:
źródło
net.ifnames=0
parametrem.net.ifnames=0
Fix działa również na Kali na Raspberry Pi :) Wystarczy dodać go do /boot/cmdline.txt z przodu!