Wie scanne ich nach Wireless Access Points?

15

In Ubuntu 11.04 habe ich InSSIDer verwendet, um die verfügbaren APs zu scannen und sie nach Signalstärke zu sortieren.

Leider scheint das Programm in Ubuntu 11.10 und 10.10 kaputt zu sein

iwlist wlan0 scan

gibt nichts Sinnvolles zurück.

Welche Optionen muss ich verwenden, um nach verfügbaren Wireless Access Points zu suchen, möglicherweise mit einer grafischen Benutzeroberfläche?

Mascarpone
quelle
1
Ubuntu-Veröffentlichung? Hardware? Umgebung? "irgendetwas Sinnvolles"? Muss ich 11.04 und InSSIDer installieren, um herauszufinden, nach welchem ​​Verhalten Sie suchen? Was bedeutet "scheint kaputt zu sein" wirklich? Bitte helfen Sie uns, indem Sie Informationen in Ihre Fragen aufnehmen. "Optionen"? Versuchen Sie es mit Network Manager. Sie sollten sein Symbol in der oberen Reihe finden.
Waltinator
Wenn Sie es genauer lesen, ist alles schon da. Ich benutze Ubuntu 11.10 und inssider startet überhaupt nicht. Ich benutze Intel WiFi. Ich möchte alle verfügbaren Netzwerke nach Stärke sortiert auflisten.
Mascarpone
2
sudo iwlist wlan0 scanning | egrep 'Cell |Encryption|Quality|Last beacon|ESSID'sollte helfen.
Waltinator

Antworten:

18

sudo iwlist wlan0 scanning | egrep 'Cell |Encryption|Quality|Last beacon|ESSID' sollte helfen.

Es ist die Kombination von sudo(als root ausführen, privilegierte Operationen ausführen), iwlist wlan0 scanning(eine Ausgabe auf STDOUT erzeugen), dem Pipe-Symbol "|" (Verbinden von STDOUT der Befehle nach links mit STDIN des Prozesses nach rechts) und eines egrepBefehls mit einem "einfachen Anführungszeichen" (um zu verhindern, dass die Shell die Zeichen "|" interpretiert). Regulärer Ausdruck zum Filtern von STDIN . Siehe man bash, man sudo, man iwlist, man egrep, und man re_formatfür weitere Einzelheiten.

Machen Sie IMMER alles (wie oben), BEVOR Sie eine Befehlszeichenfolge von jemand anderem ausführen. Selbsterziehung ist viel sicherer als blindes Vertrauen.

Waltinator
quelle
2
Könnten Sie bitte eine Erklärung zu diesem Befehl beifügen?
NN
2
Könnten Sie stattdessen bitte die Erklärung in Ihre Frage aufnehmen, damit andere sie leichter finden und davon profitieren können. Ich habe um eine Erklärung gebeten, um Ihre Antwort so vollständig wie möglich zu machen.
NN
Optional können Sie hinzufügen, dass die Suche in Manpages mit sehr einfach ist /. Viele neue Linux-Benutzer haben Angst vor der Größe von Manpages und der Unfähigkeit, schnell die richtigen Informationen zu finden.
user93692
Dieser Befehl bedarf keiner Erklärung. Die Frage bezieht sich nicht auf Pipes oder Manpages. Es müssen einige Vorkenntnisse vorausgesetzt werden, andernfalls müssen die meisten Antworten auf dieser Site mit Anweisungen zum Öffnen eines Terminals beginnen.
Keith
7

Verwenden iw

Ich habe nicht nm-toolinstalliert, also benutze ich iw.

Dieser Befehl sortiert die Zugriffspunkte nach der Signalstärke, die am stärksten ist:

sudo iw dev wlan0 scan | egrep "signal:|SSID:" | sed -e "s/\tsignal: //" -e "s/\tSSID: //" | awk '{ORS = (NR % 2 == 0)? "\n" : " "; print}' | sort

Jeder Befehl erklärte:

iw dev wlan0 scan: Nach Access Points suchen, die über die Schnittstelle erreichbar sind wlan0

egrep "signal:|SSID:": Ruft die Leitungen mit Signalstärke und den SSIDs vom iwAusgang ab. Die Ausgabe sieht jetzt so aus:

        Signal: -77,00 dBm 
        SSID: nameOfAccessPoint1
        Signal: -71,00 dBm
        SSID: nameOfAccessPoint2

sed -e "s/\tsignal: //" -e "s/\tSSID: //": Reduziere egrepdie Ausgabe auf:

-77,00 dBm 
nameOfAccessPoint1
-71,00 dBm
nameOfAccessPoint2

awk '{ORS = (NR % 2 == 0)? "\n" : " "; print}': Bringen Sie die Signalstärke und die SSID in dieselbe Leitung. Genauer gesagt, wenn die Zeilennummer ( NR) gerade ist, dh wenn wir in einer Zeile sind, die einen Zugangspunkt zeigt, sollte das Trennzeichen ( ORS) für den Ausgabesatz ein Zeilenumbruch sein. Andernfalls befinden wir uns auf der Leitung, die die Signalstärke enthält, und schließen uns der Leitung an, indem wir ORSein einfaches Leerzeichen einfügen.

Wenn wir sortdiese Ausgabe machen, erhalten wir eine Liste mit Signalstärken und Zugangspunkten, wobei der Zugangspunkt mit dem stärksten Signal oben angezeigt wird:

-71.00 dBm nameOfAccessPoint2
-77.00 dBm nameOfAccessPoint1

Achtung: Einige Access Points können erweiterte Funktionen haben: Erweiterte Funktionen: * SSID-Liste

Wenn Sie also "SSID:" anstelle von "SSID" verwenden, können Sie diese zusätzliche Ausgabe vermeiden, bei der der Befehl andernfalls fehlschlagen würde.

Matthias Braun
quelle
1
Kochend grepbis sedzu awk, die Sie nicht nur die Liebe Linux! Sehr schöne umfassende Antwort. Ich weiß, dass ich keinen kostenlosen Kommentar schreiben soll, aber das verdient wirklich einen, Sie haben sogar Zwischenergebnisse hinzugefügt.
user93692
5
nm-tool | grep "Freq.*Strength" | sed -ne "s|\(.*Strength \([0-9]\+\).*\)|\2}\1|p" | sort -n -r
  1. Verwenden Sie die Ausgabe von nm-tool, um eine Liste der Wireless Access Points abzurufen
  2. Filtern, um nur Zugangspunkte zu erhalten
  3. Dient sedzum Anhängen des Signalpegels vor jeder Zeile
  4. Ausgabe als Zahlen in umgekehrter Reihenfolge sortieren (größte zuerst)

nm-tool ist Teil des "Network-Manager" -Pakets, das offensichtlich in einem typischen Ubuntu-System installiert ist.

Peter und der Wolf
quelle
Vielen Dank! Dieser Befehl bietet eine übersichtliche und vollständige Zusammenfassung aller in Reichweite befindlichen APs. Der Befehl iwlist scheint sich basierend auf der aktuellen WLAN-Aktivität dynamisch von Ausführung zu Ausführung zu ändern. Es scheint auch zu scheitern, wenn zu viele WLAN-Zugriffspunkte gleichzeitig gemeldet werden.
Phord
0

Sie können auch nmcli verwenden. Ich habe es vor ein paar Monaten selbst gefunden und es ist das einfachste, das ich bisher verwendet habe.

nmcli device wifi

Weitere Informationen finden Sie in der Manpage.

Cory C
quelle
-2
iwinfo wlan0 scan

wlan0 ist deine drahtlose Schnittstelle

das Ergebnis wie unten aufgeführt ...

Cell 06 - Address: F0:B4:29:50:76:0C
          ESSID: "Xiaomi_760B"
          Mode: Master  Channel: 1
          Signal: -38 dBm  Quality: 70/70
          Encryption: mixed WPA/WPA2 PSK (TKIP, CCMP) 
....

Der Befehl gibt Verschlüsselungsinformationen zurück

system: openwrt 15.05

user714921
quelle