
Список соседних сетей помогает выбрать кандидата на канал, но не измеряет всю загрузку эфира. Для администратора важны ширина канала, уровень сигнала, retries и скорость до локального сервера. Ниже — порядок работы в macOS с Wireless Diagnostics и дополнительным iperf3, без старой приватной утилиты airport.

1. Зафиксируйте точку измерения и цель
Что значит «оптимальный канал» для администратора
Канал выбирают под измеримую задачу: видеосвязь в переговорной, стабильный терминал на складе, передача больших файлов или плотный офис. Самое малое число соседних SSID не гарантирует лучший результат. Один активно передающий сосед может занять больше airtime, чем десять почти молчащих. Видимые имена сетей не показывают все источники помех и нагрузку скрытых клиентов.
Подготовьте управляемый Mac, доступ к AP, проводной сервер iperf3 и одну точку измерения с фиксированным положением клиента. Нужны время, версия macOS, модель Mac/AP, диапазон, BSSID, channel/width, RSSI, нагрузка и результаты передачи. Сначала измеряют текущую сеть, потом меняют один параметр. Проверка «до» на пустой площадке и «после» в обед не позволяет честно сравнить канал.
Опишите симптом: низкая скорость передачи файла, плохая видеосвязь, обрывы при перемещении или недоступность сети. Выбор другого канала помогает лишь части этих проблем. Медленный провайдер, 100-мегабитный uplink AP и перегруженный сервер не исправляются переносом радио с одного канала на другой.
Для повторяемости оставьте Mac в одной точке, подключите питание, приостановите фоновые загрузки и выберите один тестовый сервер. Запишите модель Mac, версию macOS, AP, диапазон, канал и ширину. Если работают mesh или несколько AP, отметьте, к какой BSSID подключён клиент: одинаковая SSID не означает одну точку.
sw_vers
networksetup -listallhardwareports
system_profiler SPAirPortDataType
Команды читают сведения системы; Wi-Fi-интерфейс не всегда называется en0. На новых macOS часть данных может быть скрыта политикой приватности. Не принимайте редактирование SSID/BSSID в выводе за отсутствие Wi-Fi. Для диагностики используйте штатный интерфейс и необходимые разрешения, не отключайте SIP ради информации о канале.
2. Откройте Wireless Diagnostics
Удерживая Option, откройте значок Wi-Fi в строке меню и выберите Open Wireless Diagnostics. Инструкция Apple описывает запуск и итоговый архив диагностики. Приложение не меняет настройки сети само по себе.
Для исследования эфира откройте доступное окно Scan через меню Window приложения. Названия окон могут зависеть от macOS; используйте текущий интерфейс. Запустите повторное сканирование в нужной точке, запишите Channel, Width, RSSI и Noise, если эти поля представлены. Рекомендация Best Channel — результат наблюдения приложения в данный момент, а не бессрочная настройка здания.
Архив WirelessDiagnostics в /var/tmp полезен для инженера, но может содержать имена сетей, адреса устройств и другие сведения. Перед внешней передачей согласуйте состав. Для статьи не нужны реальные идентификаторы инфраструктуры.
Пошаговый сбор снимка эфира
Откройте Wireless Diagnostics через Option → Wi-Fi, оставьте мастер без автоматического завершения и найдите Window → Scan в доступной версии приложения. Запустите Scan Now, отберите текущий SSID, запишите BSSID выбранного диапазона и соседей. Затем откройте окно Performance, если оно доступно, и наблюдайте изменения во время реальной передачи. Сделайте снимок в месте проблемы, не только рядом с AP.
Если SSID одинаковый у нескольких AP, Mac может перейти на соседний BSSID и сделать сравнение недействительным. Для пилота используйте отдельный SSID на одной точке либо подтвердите BSSID до каждого теста. Не отключайте соседние production AP ради чистого эксперимента: это меняет покрытие и реальную ситуацию.
Сканирование — краткий снимок. Повторите его в нескольких точках и во время нагрузки; сохраните таблицу наблюдений. Архив диагностики содержит сведения об окружающих сетях и клиентах, поэтому хранится закрыто. Отсутствие BSSID в выводе CLI на новой macOS может быть ограничением privacy, а не неисправностью адаптера.
3. Интерпретируйте RSSI, Noise и SNR
RSSI обычно отображается в dBm: -55 сильнее -75. SNR — разность сигнала и шума в dB. Например, RSSI -65 dBm при noise -95 dBm даёт ориентировочно 30 dB SNR. Это учебный расчёт, а не гарантированный порог качества каждого драйвера.
Уровень сигнала оценивается в точке клиента. Обратный путь зависит от передатчика Mac и приёма AP. Увеличение мощности AP может сделать её видимой, но не улучшить передачу слабого клиента назад. Более сильный RSSI при больших retries может давать худшую скорость, чем умеренный сигнал в чистом эфире.
Не сравнивайте Noise разных платформ как идеально одинаковое измерение. Определение и доступность показателя зависят от драйвера. Рекомендации Apple по Wi-Fi-маршрутизаторам полезны для согласования диапазонов, ширины, безопасности и общих параметров.
Почему хороший RSSI не равен хорошей передаче
Сигнал -55 dBm сильнее -75 dBm на 20 dB, то есть по мощности разница примерно в 100 раз. Однако полезная скорость зависит от SNR, модуляции, числа spatial streams, ширины, retries и занятости эфира. Два клиента с одинаковым RSSI могут иметь разную способность передачи: разное число антенн, драйвер и power saving.
SNR примерно 30 dB в учебном примере не является гарантией выбранного MCS. Отслеживайте изменение во времени: если RSSI стабилен, а latency периодически растёт, исследуйте contention и retransmissions. Если одновременно падает сигнал при перемещении, вероятнее покрытие/roaming. Счётчики retries на AP не сравнивают как абсолютные числа за разные интервалы uptime.
Не увеличивайте мощность всех AP на максимум. У клиента передатчик слабее; он может слышать AP и не обеспечивать обратный путь. Избыточное перекрытие увеличивает contention и затрудняет roaming. Изменение мощности — отдельный эксперимент, не часть одновременной смены канала/ширины.
4. Выберите ширину и кандидат на канал
На 2.4 GHz обычно начинают с 20 MHz. Широкие каналы занимают больше эфира и чаще пересекаются с соседями. План 1/6/11 характерен для распространённого размещения каналов, но окончательный выбор учитывает страну, допустимые каналы и реальную ширину всех соседних сетей.
На 5 GHz сравните 40 и 80 MHz под вашей нагрузкой. Более широкий канал повышает возможную PHY rate, но уменьшает число независимых каналов. В плотном офисе 40 MHz может дать более устойчивое обслуживание многих клиентов. При DFS переходах выясните событие радара в AP; доступность DFS зависит от оборудования и регуляторных условий.
6 GHz требует поддерживаемого AP, клиента и разрешённого режима в стране эксплуатации. Не меняйте регион на чужой ради дополнительных каналов. Сканирование Mac не показывает всю активность не-Wi-Fi-источников помех и не заменяет спектральный анализатор при сложном инциденте.
Ширина канала и повторное использование частот
20/40/80 MHz — занимаемая полоса, а не обещанная скорость приложения. Широкий канал объединяет несколько участков спектра и уменьшает число независимых каналов для соседних AP. В плотном офисе узкий канал может обеспечить большую суммарную ёмкость площадки, хотя одиночный speedtest станет ниже. Сравнивайте задачу площадки и отдельного клиента отдельно.
На 2,4 GHz стартовый 20 MHz уменьшает перекрытие. План 1/6/11 рассматривают с учётом страны и фактических сетей; соседний 40-MHz AP занимает больше, чем указывает один номер primary channel. На 5 GHz отметьте primary и ширину, а также DFS-события. Наличие периодического ухода AP с канала при radar detection не исправляют выбором чужого региона.
6 GHz не означает автоматическое исчезновение проблем: клиент должен поддерживать диапазон и соответствующую безопасность, а доступность зависит от региона. При mixed legacy-клиентах сначала подтвердите поддержку моделей. Рекомендация Apple Auto channel полезна для бытового сценария; управляемая офисная площадка требует проверки фактического плана контроллера и распределения AP.
5. Постройте проводной baseline
Локальный сервер iperf3 подключается кабелем к сети AP. Он должен находиться за тем же ожидаемым uplink и иметь запас CPU и скорости порта. В примере разрешённый тестовый сервер — 10.77.10.30; доступ на TCP 5201 ограничен измеряющими клиентами.
iperf3 -s -B 10.77.10.30
На Mac нужен установленный iperf3. Если в компании уже применяется управляемый Homebrew, пакет устанавливают через brew install iperf3; новый менеджер пакетов ради разового теста необязателен. Проверьте версию обеих сторон командой iperf3 --version и используйте документацию ESnet.
Сначала выполните тот же тест с Mac через проводное подключение, убедившись, что маршрут не остался на Wi-Fi. Полученный результат ограничивает весь путь: если по кабелю выходит около 90 Mbit/s, ищите Fast Ethernet или иной bottleneck прежде, чем оптимизировать канал для гигабитной передачи.
Установите измерительный сервер и клиент
На отдельной Debian/Ubuntu машине, подключённой кабелем к тому же пути:
sudo apt-get update
sudo apt-get install iperf3
ip -br address
iperf3 --version
iperf3 -s -B 10.77.10.30
Не публикуйте этот сервер в Интернет. Для теста нужен доступ TCP 5201 только от измеряющих клиентов; UDP-испытания дополнительно используют UDP. Foreground сервер закрывают Ctrl+C после работы. Если при установке предлагается daemon, для разового теста можно отказаться и запускать вручную. Адрес -B должен действительно принадлежать серверу.
На Mac с уже управляемым Homebrew выполните brew install iperf3, затем iperf3 --version; альтернативно используйте утверждённый организацией пакет. Перед проводным baseline выключите Wi-Fi штатным интерфейсом и проверьте маршрут:
networksetup -listallhardwareports
route -n get 10.77.10.30
ping -c 10 10.77.10.30
iperf3 -c 10.77.10.30 -t 30
В route get смотрите interface, а не только gateway. На Mac en0 может быть Wi-Fi; реальное соответствие показывает networksetup. Если baseline ограничен 100-Mbit/s портом, перестановка каналов не даст гигабитный поток. Также проверьте negotiated speed порта AP, uplink и CPU сервера.
6. Измерьте передачу в обоих направлениях
Верните Mac на Wi-Fi и проверьте BSSID/канал. Первый тест отправляет данные от клиента к серверу, второй с -R — от сервера к клиенту. Не заменяйте их одним speedtest до внешнего сайта.
iperf3 -c 10.77.10.30 -t 30 -i 1
iperf3 -c 10.77.10.30 -t 30 -i 1 -R
iperf3 -c 10.77.10.30 -t 30 -J > wifi-before-upload.json
iperf3 -c 10.77.10.30 -t 30 -R -J > wifi-before-download.json
Повторите каждый тест три раза, не параллельно. Зафиксируйте типичные значения, разброс и аномальные провалы по секундам. Несколько TCP-потоков могут скрыть ограничение одного соединения; если применяете -P, используйте одинаковое число потоков до и после изменения.
Для приложения с UDP отдельно проверяют допустимую скорость, loss и jitter. UDP-тест с чрезмерной заданной скоростью сам создаёт потери; он не должен работать бесконтрольно в общей сети. Первый этап диагностики достаточно провести умеренными TCP-тестами в согласованном окне.
Интерпретируйте iperf3 и сохраните сопоставимые данные
В итоговом выводе sender/receiver могут немного различаться; для доставки полезен receiver. Bits/sec — полезный TCP-поток, Retr — TCP retransmissions на отправителе, не Wi-Fi retry counter. Провал одного секундного интервала ещё не описывает среднее, но может объяснить зависание real-time приложения.
Добавьте отдельное наблюдение задержки без одновременной полной загрузки:
ping -c 30 10.77.10.30
iperf3 -c 10.77.10.30 -t 30 -P 1
iperf3 -c 10.77.10.30 -t 30 -P 4
-P 4 создаёт четыре потока и может обходить ограничения одного TCP-потока; это другой тест, не основание заменить им исходный baseline. Сначала сравните -P 1 до/после, затем -P 4 отдельно. Не запускайте все команды одновременно, иначе измерение само создаёт конкуренцию.
Для контролируемой оценки packet loss используйте небольшой UDP-поток:
iperf3 -c 10.77.10.30 -u -b 10M -t 30
iperf3 -c 10.77.10.30 -u -b 10M -t 30 -R
10 Mbit/s — учебная ограниченная нагрузка, не максимальный throughput. Смотрите receiver lost/total и jitter. Высокая loss при слишком большой заданной скорости может быть результатом вашего теста; увеличивайте offered load постепенно. UDP и TCP отвечают на разные вопросы. Параметры поддерживаемой версии проверяют по iperf3 --help.
7. Измените один параметр AP
Клиент Mac не назначает рабочий канал инфраструктурной точки. Изменение выполняют в контроллере или на управляемом AP. Сохраните исходные channel/width/power и проверьте, не назначит ли автоматический планировщик другой канал после ваших действий.
Выберите один кандидат, оставьте остальные параметры неизменными и согласуйте возможный разрыв клиентских соединений. После применения дождитесь стабилизации, проверьте фактический канал на AP и Mac и повторите измерения. Если AP ушла на DFS-канал, учтите возможное ожидание проверки канала и переходы по событиям радара.
Не перестраивайте все AP одновременно. В многоточечной сети соседние ячейки планируются совместно: улучшение одной комнаты может увеличить co-channel contention в соседней. Отдельно проверяйте 2.4 и 5 GHz; изменение общего SSID не доказывает, на каком диапазоне выполнен тест.
Внесите одно изменение с сохранением возврата
В контроллере откройте конкретную AP, настройки radio нужного диапазона, сохраните текущие channel/width/power и режим Auto. Измените только канал или только width. У разных производителей путь меню различается, поэтому фиксируйте модель/версию, а не ищите универсальную кнопку. Применение radio-параметра может разорвать клиентов: предусмотрите окно и дождитесь повторного подключения.
После применения снова посмотрите фактические BSSID/канал на Mac и в AP. Если контроллер вернул автоматическое назначение, эксперимент с ручным каналом не состоялся. Не сравнивайте одно измерение на 2,4 GHz с другим на 5 GHz без указания смены диапазона. Сохранение SSID одинаковым не гарантирует одинаковое радио.
8. Сравните скорость, стабильность и roaming
Повторите те же команды с файлами wifi-after-upload.json и wifi-after-download.json. Сравните скорость, разброс, retries на AP и ошибки uplink. Если throughput не вырос, но исчезли регулярные провалы видеосвязи, изменение может быть полезным — критерий определяет приложение.
После стационарного теста выполните отдельный проход по маршруту сотрудника. Запишите время перехода BSSID и качество целевого приложения. Нельзя оценивать roaming, только перемещая Mac с открытым списком соседних сетей. Клиентские решения и возможности 802.11k/v/r проверяют вместе с конфигурацией AP и поддержкой устройства.
При сильном RSSI и плохой скорости изучите MCS/NSS, retries, airtime, работу других клиентов и проводной порт AP. PHY rate — скорость радиолинка на определённых параметрах, а не скорость копирования файла: служебный трафик, ожидание и half-duplex уменьшают полезный результат.
Сравните три повтора и качество целевого приложения
Используйте три последовательных результата upload и три download при одинаковых duration/streams. Сравнивайте медиану, минимальный результат и разброс, а не только лучший запуск. Например, изменение с 240/230/40 на 190/185/188 Mbit/s снижает пиковый показатель, но убирает резкий провал; для конференции это может быть важнее максимума.
Сетевой тест дополняет реальный звонок/терминал: latency и jitter во время обычной работы часто значимее bandwidth. Для roaming выполните маршрут с фиксированным приложением и отметьте моменты смены BSSID. Дополнительно сверяйте события controller, authentication/RADIUS и packet loss. Включение 802.11r для всех SSID без проверки старых клиентов может ухудшить совместимость.
Если оба направления плохи только у одного Mac, сравните другой клиент в той же точке. Если Wi-Fi и кабель одинаково медленны, вернитесь к uplink/server. Если throughput нормальный, а сайты медленны, отдельно исследуйте DNS/WAN/прокси. Радиоплан не лечит каждый сетевой отказ.
9. Не используйте старые команды как постоянный инструмент
Путь к приватной утилите airport из старых OS X-инструкций нельзя считать поддерживаемым интерфейсом современных macOS. Он может отсутствовать или выдавать предупреждение; инструкция для администратора должна опираться на штатный Wireless Diagnostics и актуальную справку доступных команд.
networkQuality, если доступна в установленной macOS, оценивает качество подключения к внешним сервисам и responsiveness. Это полезный дополнительный тест, но не замена локальному iperf: в результат входит WAN. Проверяйте man networkQuality для вашей версии, а не копируйте параметры из другой ОС.
Если данные сканирования скрыты, проверьте разрешения Location Services для используемого приложения и текущие ограничения управления устройством. Root не является универсальным обходом privacy-policy. Работа с корпоративным Mac должна оставлять штатную защиту включённой.
Используйте CLI как дополнительное измерение
sw_vers
system_profiler SPAirPortDataType
networksetup -listallhardwareports
command -v networkQuality
man networkQuality
Вывод system_profiler может быть ограничен macOS/privacy; он не обязан содержать все прежние airport-поля. networkQuality, если доступна, работает с внешними сервисами и оценивает responsiveness всей цепочки. Его результаты не сравнивают напрямую с локальным iperf3 как одним и тем же тестом.
Частные пути airport из старых OS X инструкций менялись и удалялись. Не строить обязательную инструкцию на приватном бинарнике важнее, чем сохранить старую эффектную команду. Доступ к Scan и Performance через штатное приложение остаётся понятным воспроизводимым маршрутом при поддержке вашей версии системы.
10. Приёмка и возврат
Сохраните место измерения, AP/BSSID, канал, ширину, три результата в каждом направлении и наблюдения приложения. Критерий завершения — повторяемое улучшение в нужной точке без ухудшения соседних зон, а не выбор «самого пустого» канала на одном скриншоте.
Если результат хуже, верните исходные channel/width/power, дождитесь применения и повторите контроль. После возвращения автоматического управления проверьте фактически выбранные параметры: система может пересчитать план. Итоговая запись должна позволять другому администратору воспроизвести тест и понять, какое именно изменение дало эффект.
Приёмочный протокол и возвращение настройки
Сохраните: место и время, версии клиента/AP, BSSID, channel/width/power, проводной baseline, три TCP-результата в каждом направлении, UDP-потери/latency и результат приложения. Файлы JSON дают возможность позднее сопоставить метрики; публичный отчёт очищают от инфраструктурных идентификаторов.
При ухудшении верните ровно исходные значения и режим управления, дождитесь provision, снова подтвердите реальный канал и повторите контроль. Закройте iperf3 и временное firewall-исключение. Изменение принято, если результат устойчив в проблемной точке и не ухудшил соседние зоны/roaming; для большого офиса это проверка нескольких точек, а не один скриншот Best Channel.
