Как сканировать точки беспроводного доступа?

В Ubuntu 11.04 я использовал InSSIDer для сканирования доступных точек доступа и сортировки их по уровню сигнала.

К сожалению, программа, похоже, не работает в Ubuntu 11.10, и

iwlist wlan0 scan

не возвращает ничего значимого.

Какие есть варианты сканирования доступной точки беспроводного доступа, возможно, с графическим интерфейсом?

15
задан 28 October 2017 в 20:16

6 ответов

sudo iwlist wlan0 scanning | egrep 'Cell |Encryption|Quality|Last beacon|ESSID' должно помочь.

Это комбинация sudo (запуск от имени пользователя root, выполнение привилегированных операций), iwlist wlan0 scanning (создание вывода в STDOUT), символа канала "|" (подключение STDOUT команды (й) слева к STDIN процесса справа) и команда egrep с «одинарными кавычками» (чтобы оболочка не могла интерпретировать символы «|») Регулярное выражение фильтровать STDIN. Подробности см. В man bash, man sudo, man iwlist, man egrep и man re_format.

ВСЕГДА делайте с человеком все что угодно (как указано выше) ПРЕЖДЕ ЧЕМ вы выполняете командную строку от кого-то другого. Самообразование намного безопаснее, чем слепое доверие.

0
ответ дан 28 October 2017 в 20:16

Используя iw

Я не имею nm-tool установленный, таким образом, я использую iw.

Эта команда точки доступа видов мощностью сигнала, самой сильной сначала:

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

Каждая команда объяснила:

iw dev wlan0 scan: Сканирование для точек доступа, достижимых через интерфейс wlan0

egrep "signal:|SSID:": Получите строки с мощностью сигнала и SSIDs от iwвывод. Вывод похож на это теперь:

        signal: -77.00 dBm 
        SSID: nameOfAccessPoint1
        signal: -71.00 dBm
        SSID: nameOfAccessPoint2

sed -e "s/\tsignal: //" -e "s/\tSSID: //": Уменьшить egrepвывод к этому:

-77.00 dBm 
nameOfAccessPoint1
-71.00 dBm
nameOfAccessPoint2

awk '{ORS = (NR % 2 == 0)? "\n" : " "; print}': Принесите мощность сигнала и SSID на той же строке. Строго говоря, когда номер строки (NR) даже, т.е. мы находимся на строке, показывающей точку доступа, выходной разделитель записей (ORS) должен быть разрыв строки. Иначе мы находимся на строке, содержащей мощность сигнала, таким образом, мы присоединяемся к строке путем создания ORS простое пространство.

Если мы sort этот вывод, мы заканчиваем со списком мощностей сигнала и точек доступа, показывая точку доступа с самым сильным сигналом на вершине:

-71.00 dBm nameOfAccessPoint2
-77.00 dBm nameOfAccessPoint1

Остерегайтесь: Некоторые точки доступа могут иметь расширенную возможность: Расширенные возможности: * Список SSID

Так, захват "SSID": вместо "SSID" помогает предотвращению этого дополнительного ouput, который сделал бы сбой команды иначе.

7
ответ дан 28 October 2017 в 20:16
iwinfo wlan0 scan

wlan0 - это беспроводной интерфейс

результат, подобный приведенному ниже списку ...

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) 
....

команда вернет информацию о шифровании

system: openwrt 15.05

0
ответ дан 28 October 2017 в 20:16
nm-tool | grep "Freq.*Strength" | sed -ne "s|\(.*Strength \([0-9]\+\).*\)|\2}\1|p" | sort -n -r
  1. Используйте выход nm-tool для получения списка точек беспроводного доступа
  2. Фильтр для получения только точек доступа
  3. Используйте sed для добавления уровня сигнала перед каждой строки
  4. сортировка вывода в виде чисел в обратном порядке (сначала по возрастанию)

nm-tool является частью пакета «network-manager», который, очевидно, установлен в типичной системе Ubuntu .

0
ответ дан 28 October 2017 в 20:16

Можно также использовать nmcli, я нашел его сам несколькими месяцами назад, и это - самое легкое, которое я использовал до сих пор.

nmcli device wifi

Для другой информации проверьте страницу справочника.

0
ответ дан 23 November 2019 в 02:43

Если вы можете установить программное обеспечение на свой компьютер, я бы порекомендовал wavemon.

Чтобы установить его, выполните:

sudo apt-get update 
sudo apt-get install wavemon

Чтобы запустить его

sudo wavemon 

, а затем нажмите F3 для перехода к экрану SCAN. Вы должны увидеть что-то похожее на это: WAVEMON scan window

2
ответ дан 24 March 2020 в 15:14

Другие вопросы по тегам:

Похожие вопросы: