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

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

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

iwlist wlan0 scan

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

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

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 для получения более подробной информации.

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

С помощью 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:": Получить линии с уровнем сигнала и идентификаторами SSID из iwэто выход. Теперь результат выглядит следующим образом:

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

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

-77,00 дБм nameOfAccessPoint1-71,00 дБм nameofaccesspoint2

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

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

-71.00 dBm nameOfAccessPoint2-77.00 dBm nameOfAccessPoint1

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

Итак, grepping "SSID:" вместо "SSID" помогает избежать этого дополнительного вывода, который в противном случае привел бы к сбою команды.

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.

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

nmcli device wifi

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

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

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

sudo apt-get update sudo apt-get install wavemon

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

sudo wavemon 

а затем нажмите клавишу F3, чтобы открыть экран СКАНИРОВАНИЯ. Вы должны увидеть что-то похожее на это:WAVEMON scan window

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

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

система : openwrt 15.05

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

Выпуск Ubuntu? Оборудование? Окружающая среда? “что-нибудь значимое”? Должен ли я установить 11.04 и Insider, чтобы узнать, какое поведение вы ищете? Что на самом деле означает “кажется сломанным”? Пожалуйста, помогите нам помочь вам, включив информацию в ваши вопросы. “Варианты”? Попробуйте Network Manager. Вы должны найти его значок в верхнем ряду.

Если вы прочтете его более внимательно, все уже есть. Я использую ubuntu 11.10, и inssider вообще не запускается. Я использую intel wifi. Я хочу перечислить все доступные сети, отсортированные по силе.