В Mac OS X легко использовать графический интерфейс AirPort для отображения списка всех сетей WLAN (SSID) и выбора одной из них. Но как я могу перечислить все точки доступа (базовые станции) в одной сети и вручную выбрать одну из них на основе ее MAC-адреса?
Причиной, по которой я спрашиваю, является слишком распространенная ситуация, когда одна из точек доступа в сети перестала работать и, например, перестала давать IP-адреса или пакеты маршрутизации.
В Linux я мог бы использовать инструменты командной строки, такие как iwlist, чтобы вывести список точек доступа, и iwconfig, чтобы выбрать одну из них. Как я могу сделать что-то похожее на Mac OS X? Я использую новый MacBook Pro и Mac OS X 10.6.4.
macos
mac
wireless-networking
Юкка Суомела
источник
источник
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -s
даст вам результаты сканирования.sudo networksetup -setairportnetwork en1 "SSID" "Password"
присоединяется, но не позволяет выбрать точку доступа на основе MAC-адреса.Ответы:
Mac OS X не предоставляет способ внесения в белый или черный список точек доступа по BSSID или иным образом.
Даже если кто-то найдет / обратный инжиниринг какого-нибудь частного API, который позволит теневому инструменту указывать BSSID во время соединения, это все равно не сильно поможет; поскольку в ОС нет черного или белого списков, ваш клиент мог бы сразу же перейти к неисправной точке доступа, если уровень сигнала хорошей точки доступа недостаточен, а уровень сигнала неисправной точки доступа достаточно лучше.
Как отметил @Chealion,
airport -s
перечисляет все видимые точки доступа отдельно, а не сворачивает их по SSID.Я обычно делаю это, чтобы поместить символическую ссылку на
airport
команду в каталоге в моем$PATH
:... так что после этого я могу просто выдать
airport -s
.Если вы обнаружили стороннюю карту 802.11, возможно USB-ключ, которая использует собственный драйвер Mac OS X, который не использует какую-либо клиентскую инфраструктуру Apple AirPort (семейство IO80211 IOKit, частную платформу Apple80211 и «AirPort») GUI), тогда, возможно, этот продукт мог бы содержать функцию белого или черного списка BSSID, но его поддержка просто отсутствует во встроенной инфраструктуре Mac OS X 802.11.
источник