---
title: "Wi-Fi, Bluetooth и DNS | Документация Kilobat"
url: "https://kilobat.app/ru/docs/wifi-dns"
description: "Страницы входа в Wi-Fi, хрипящий звук Bluetooth и самый быстрый DNS для каждой сети."
---

# Wi-Fi, Bluetooth и DNS

Страницы входа в Wi-Fi, хрипящий звук Bluetooth и самый быстрый DNS для каждой сети.

## Звук по Bluetooth: почему AirPods трещат

Пока играют AirPods или другие наушники или колонки Bluetooth, Kilobat каждые пять секунд проверяет, что на стороне Mac может вызывать треск или обрывы звука. Bluetooth прыгает по всему диапазону 2.4 GHz и делит радиомодуль с Wi-Fi, поэтому Kilobat смотрит: работает ли Wi-Fi вашего Mac на 2.4 GHz; не перегружен ли этот канал соседскими сетями (по сканированию Wi-Fi за последние полчаса; пока вы слушаете, Kilobat никогда не сканирует, ведь сканирование само может вызвать пропуски звука); занят ли канал AirDrop (AWDL) и держат ли его занятым AirDrop, Универсальное управление или Sidecar; идёт ли по Wi-Fi 2.5 MB/s или больше и какое приложение самое активное; не слабее ли −72 dBm сигнал Bluetooth наушников; подключено ли ещё четыре или больше устройств Bluetooth. Звуковой выход macOS он читает через Core Audio, для чего не нужно разрешение, и замечает, когда включён ещё и микрофон гарнитуры: тогда macOS переходит в режим гарнитуры с более низким качеством, который прерывается быстрее. Для сигнала и других устройств нужно разрешение на Bluetooth — его запрашивают, только когда вы нажимаете «Проверить Bluetooth».

Когда что-то мешает, «Состояние» показывает строку с тем, что изменить, начиная с самого действенного: подключиться к сети 5 GHz вашего роутера (с кнопкой, если macOS помнит такую сеть в зоне досягаемости, даже если у неё то же имя, что и у сети 2.4 GHz), переключить роутер на самый свободный из каналов 1, 6 и 11, приостановить AirDrop (кнопкой; macOS запросит пароль, а AirDrop включится снова, когда звук стихнет на пять минут, или через час), приостановить большую загрузку, подойти ближе или достать Mac из сумки. Во время звонка Kilobat также предлагает микрофон самого Mac — так наушники сохраняют высокое качество. Kilobat не слышит сам звук: macOS не сообщает другим приложениям, когда звук по Bluetooth прерывается, поэтому советы основаны на условиях, о чём Kilobat прямо и говорит. Нажмите *Звук трещит* в этой строке или на панели «Поблизости» вкладки «Состояние», чтобы сообщить Kilobat; он запомнит, что мешало в тот момент, а если ничего не мешало, подскажет, что вероятнее дело в расстоянии или в связи самих наушников. Одно уведомление за сеанс прослушивания, только когда две причины или больше совпадают в течение 20 секунд, и не чаще чем раз в четыре часа; выключить его можно в «Настройки › Мониторинг». Всё это бесплатно. С Pro звонок, который вы слушали через наушники Bluetooth, пока Wi-Fi работал на 2.4 GHz или AirDrop сканировал, получает строку в своём табеле. В терминале `kilobat bluetooth audio` выполняет ту же проверку (если приложение запущено, она добавляет сигнал и самое активное приложение), а агенты читают её через `get_bluetooth_audio`.

## Согласованные параметры соединения Wi-Fi

Раздел «Состояние» › «Локальное соединение» показывает рядом со скоростью соединения параметры, согласованные Mac и роутером: канал, диапазон и ширину канала, стандарт Wi-Fi (Wi-Fi 4, 5, 6, 6E или 7 с названием 802.11), защиту, например WPA2 Personal или WPA3 Personal, и мощность передачи Mac. Старый стандарт или канал шириной 20 МГц на 5 ГГц ограничивает скорость соединения независимо от силы сигнала.

Защита отображается красным с пояснением в открытой сети (нет пароля и шифрования самого Wi-Fi; сайты и приложения с HTTPS остаются зашифрованными), а также при WEP или первоначальном WPA, которые устарели и замедляют Wi-Fi. Enhanced Open шифрует соединение без пароля. Ближайшие сети в Radar показывают самую сильную предлагаемую защиту каждой сети. В Терминале `kilobat wifi status` выводит те же сведения, а `--json` добавляет `widthMHz`, `standard`, `phyMode`, `security`, `securityLevel` (сильная, хорошая, слабая или открытая), `securityNote`, `transmitPowerDBm` и `countryCode`, когда CoreWLAN предоставляет эти данные (MCP: `get_wifi`). `kilobat scan --json` и `scan_wifi` добавляют `security` и `securityLevel` каждой сети.

## Страницы входа в Wi-Fi

Wi-Fi в отелях, кафе, аэропортах и коворкингах часто задерживает все подключения, пока вы не войдёте на его собственной странице, и через час или сутки снова завершает сеанс. Kilobat ищет эту страницу так же, как macOS и Android: простым http-запросом к `captive.apple.com`, который отвечает «Success», а если не вышло — к `connectivitycheck.gstatic.com/generate_204` от Google. Перенаправление или любая другая страница означает, что мешает страница входа, и Kilobat запоминает её адрес — пришёл ли он как перенаправление, meta refresh или скрипт. Проверка идёт, когда вы подключаетесь к сети, когда не проходит проверка интернета и пока открыта страница входа, а в остальное время — раз в 5–15 минут, никогда в плотном цикле. Ничего никуда не отправляется, кроме этих двух адресов.

Он различает три случая: интернета нет вообще, сеть просит войти и сеть завершила сеанс (вы были в ней авторизованы, и вернулась та же страница входа). Во всплывающем окне строки меню для этого есть одна строка: «Этот Wi-Fi просит войти» с кнопкой **Открыть страницу входа** или «Страница входа в Wi-Fi завершила сеанс» с кнопкой **Войти снова**. Если вы дали месту название на карточке «Это место», строка использует его, например «Wi-Fi в „The Long Table“ завершил сеанс». В заголовке по-прежнему «Нужен вход», а в меню Wi-Fi — «Сеанс завершён · войдите снова». Kilobat никогда сам не открывает браузер и не трогает окно входа, которое macOS показывает при подключении к сети. Он нужен на случай, если это окно не появилось, и на потом.

Пока мешает страница входа, «Состояние» называет только эту причину — «Страница входа в Wi-Fi завершила сеанс» с кнопкой «Войти снова» или «Нужен вход в сеть» с кнопкой «Открыть страницу входа» — и перестаёт винить DNS, потерю пингов или провайдера. Журнал событий записывает вход в Wi-Fi, а не сбой, поэтому он не считается сбоем в отчёте для провайдера и не вызывает оповещение «Подключение недоступно». Зависший звонок тогда сообщает, что завис после того, как страница входа в Wi-Fi завершила ваш сеанс. Тест на рывки до интернета говорит, что подключение удерживает страница входа, а не что никто не ответил. «Почему нет подключения?» и `kilobat why` сообщают, что мешает страница входа в Wi-Fi, а не об ошибках DNS или TLS.

Kilobat также узнаёт, сколько длится вход в каждой сети. Он отмечает, когда начинается вход, когда проверка переходит от страницы входа к Success и когда страница входа возвращается. Обычная длительность — медиана сеансов, которые он видел от начала до конца без перерыва, минимум двух. Хватит и одного сеанса, если сама страница входа называет ровно одну длительность, например «1 hour of free Wi-Fi» (только страницы на английском). Сеанс, прерванный сном, уходом из сети или переподключением, не считается, а каждый сеанс заканчивается на последней прошедшей проверке, так что оценка скорее занижена. История хранится для каждой сети вместе с названием из «Это место» в `~/Library/Application Support/Kilobat/captive-portals.json` на этом Mac и никуда не отправляется.

С Kilobat Pro строка затем выглядит как «Вход выполнен · осталось около 40 мин», а примерно за пять минут до того, как вход обычно истекает, уведомление сообщает «Сеть Café Wi-Fi завершит сеанс через 5 мин» (или «Wi-Fi в „The Long Table“ завершит сеанс через 5 мин» для места с названием) с кнопкой «Открыть страницу входа». Если сеанс всё равно завершится раньше, «Сеть Café Wi-Fi завершила сеанс» сообщит, что с интернетом всё в порядке, и предложит «Войти снова». Вы получаете одно предупреждение на вход и не больше одного такого уведомления за 20 минут, и ни одного при подключении к сети, когда macOS показывает своё окно. Отключить их можно в «Настройки › Мониторинг › Предупреждать, когда истекает вход в Wi-Fi».

Обнаружение страницы входа, строка, «Открыть страницу входа» и причина завершения сеанса в «Состоянии» бесплатны; полный список находок в «Состоянии» остаётся частью Pro. Длительность входа записывается для всех, а оставшееся время и предупреждения входят в Kilobat Pro. В терминале `kilobat portal` проверяет прямо сейчас и выводит состояние (open, portal или offline), адрес страницы входа со скрытыми значениями параметров запроса, статус этой сети, её обычную длительность входа и историю по каждой сети: название, название из «Это место», хост страницы входа, увиденные сеансы, их обычную длительность и когда сеть видели последний раз. `kilobat portal open` открывает страницу входа в браузере. Агенты читают тот же JSON через `get_captive_portal`. Если страница входа так и не появляется, см. [страницу входа в Wi-Fi отеля](https://kilobat.app/hotel-wifi-login-mac).

## Можно ли здесь транслировать или печатать?

Через несколько секунд после подключения к сети и при нажатии **Проверить снова** в разделе «Состояние» Kilobat в течение трёх секунд ищет через Bonjour устройства для трансляции или печати: Chromecast и телевизоры со встроенным Chromecast (`_googlecast._tcp`), Apple TV, телевизоры и колонки AirPlay (`_airplay._tcp`, `_raop._tcp`) и принтеры (`_ipp._tcp`, `_ipps._tcp`, `_printer._tcp`), исключая собственный приёмник AirPlay этого Mac. Когда устройство отвечает, панель «Трансляция и печать» и меню Wi-Fi сообщают: «Трансляция и печать должны работать: найдены телевизор в гостиной, HP LaserJet».

Если никто не ответил, Kilobat проверяет, отвечают ли другие устройства вообще: отправляет по одному пустому пакету на каждый частный адрес в /24 вокруг Mac, проверяет кэш соседей, отправляет по одному ping не более чем шести соседям и проверяет записи Continuity. Если адреса отвечают аппаратным адресом роутера (proxy ARP), он сообщает, что сеть может изолировать устройства. Proxy ARP также поддерживает обычную маршрутизацию, поэтому это возможная причина, а не доказательство блокировки трансляции или печати. Отсутствие ответов, большая подсеть или страница входа сами по себе не устанавливают изоляцию. В остальных случаях он сообщает «Устройства для трансляции не найдены», указывая ответившие устройства и оставшуюся неопределённость. В Wi-Fi отеля или кафе вывод также появляется рядом со строкой входа. `--quick` заново ищет устройства через Bonjour и считывает кэш без опроса соседей или ping. Проверки Bonjour и соседей остаются в локальной сети; если приложение не может ответить, отдельный CLI также выполняет обычные проверки доступности интернета и страницы входа, чтобы распознать Wi-Fi настройки устройства. При первом использовании macOS запрашивает доступ к локальной сети.

Когда Mac подключается к собственной сети Wi-Fi устройства без выхода в интернет, например Wi-Fi Direct принтера (`DIRECT-xx-HP …`, `HP-Setup…`, `…_BRxxxx` Brother, `…series` Canon), сети камеры Sony или Canon, GoPro (`GP` и восемь цифр), Insta360 или Ricoh Theta (`….OSC`), DJI Tello или Spark либо сети настройки Shelly, Tasmota, Kasa, Tapo или WiZ, Kilobat сообщает: «Вы подключены к собственной сети Wi-Fi принтера; интернет в ней не предусмотрен». Заголовок всплывающего окна — «Wi-Fi устройства», предупреждение о недоступности соединения не появляется, в журнале событий записывается «Wi-Fi устройства» вместо сбоя, а **Вернуться к** подключает прежнюю сеть Wi-Fi с сохранённым macOS паролем. Названия взяты из руководств производителей; сеть с совпадающим именем и доступом в интернет считается обычной сетью Wi-Fi.

Когда Mac использует AirPlay (звук выводится на приёмник AirPlay или отправитель AirPlay macOS передаёт поток по локальной сети) либо браузер Chromium передаёт достаточно локального трафика для предположения о трансляции, раздел «Состояние» показывает возможные причины прерываний на стороне Mac: подключение на 2,4 ГГц, слабый сигнал (−70 дБм или слабее), поиск AirDrop (кроме случая, когда сам AirPlay использует соединение AirDrop), а также другое приложение, передающее 2,5 МБ/с или отправляющее 1,25 МБ/с. Кнопки подключают запомненную сеть 5 ГГц, приостанавливают AirDrop до окончания трансляции или на час и, с Kilobat Pro, приостанавливают приложения синхронизации и загрузки так же, как режим звонка. Kilobat не видит пропущенные кадры или сигнал самого телевизора и сообщает об этом. В Терминале: `kilobat local check [--quick] [--json]`; для агентов — инструмент MCP `check_local_network`.

## Mac остаётся на удалённом узле mesh-сети

Mac покидает точку доступа Wi-Fi, только когда сигнал падает примерно до -75 dBm, а другая точка сильнее на 12 dB. Поэтому в mesh-системе он часто остаётся на узле нижнего этажа, не используя узел в вашей комнате — типичная причина медленного Wi-Fi наверху. Kilobat замечает это и сообщает в разделе «Состояние»: «Вы на узле гостиной с -78 dBm; узел офиса — -52 dBm». Кнопка «Подключить снова» рядом с результатом или в меню Wi-Fi переключает Mac: сначала напрямую на ближайший узел с сохранённым паролем, а при неудаче выключает и включает Wi-Fi, чтобы macOS выбрала сильнейший узел. Wi-Fi отключится на несколько секунд, поэтому во время звонка Kilobat сначала спросит. Затем он сообщит результат: «Теперь вы на узле офиса с -52 dBm».

Уведомление появляется только если сигнал слабее -65 dBm, другой узел той же сети сильнее минимум на 15 dB в поддерживаемом Mac диапазоне и обещает как минимум в полтора раза большую скорость соединения по оценке сигнала и ширины канала. Последнее условие предотвращает лишние сообщения при выборе диапазона: сильный сигнал 2.4 GHz не лучше хорошего соединения 5 GHz. Условия должны сохраняться две минуты и минимум три измерения при стабильном текущем сигнале, поэтому перемещение по дому и текущий роуминг не учитываются. Kilobat считывает радиопараметры при обычной фоновой проверке и сканирует сеть не чаще раза в две минуты, только при слабом сигнале и никогда во время звонка. Точки группируются в узлы по адресам; в «Состояние» › «Узлы Wi-Fi» им можно дать имена, которые появятся в результатах. Отчёт звонка называет удалённый узел, если там произошло зависание (Pro). При включённом уведомлении в «Настройки» › «Мониторинг» сообщение приходит через пять минут, не чаще раза в шесть часов. После трёх случаев за две недели Kilobat предлагает проверить настройки steering или роуминга mesh-системы либо уменьшить перекрытие узлов.

macOS показывает адреса точек доступа только приложениям с доступом к геопозиции, поэтому он необходим; данные о местоположении остаются на Mac. Подключение и выключение или включение Wi-Fi не требуют пароля администратора, если он не задан в дополнительных настройках Wi-Fi. В терминале `kilobat wifi nodes` перечисляет узлы, `kilobat wifi nodes name <id> Office` задаёт имя, а `kilobat wifi reconnect` переключает Mac (CLI 0.31); агенты читают `get_wifi_nodes` и спрашивают перед вызовом `reconnect_wifi`.

## Самый быстрый DNS для каждой сети

DNS, который быстрее всех дома, часто не самый быстрый в кафе. Kilobat незаметно выясняет это для каждой сети, а с Kilobat Pro переключается на него при подключении. «Состояние › DNS» показывает результат: «Здесь быстрее всех: Quad9 (12 ms против 48 ms у DNS вашей сети)» или «DNS вашей сети здесь быстрее всех» — со всеми резолверами из последнего замера.

**Что сравнивается.** Собственный DNS вашей сети — тот, что выдаёт роутер или провайдер, — против Cloudflare (1.1.1.1), Quad9 (9.9.9.9) и Google (8.8.8.8), а также любого резолвера, который вы добавите по IP-адресу в «Настройки › Сеть › Резолверы для проверки». Исключите там резолвер — и Kilobat никогда не будет его замерять или выбирать. У каждого резолвера есть строка о том, что он хранит: Google, например, хранит ваш IP-адрес до 48 часов. Более быстрый резолвер не значит более приватный.

**Кто управляет сервером и где.** Для каждого DNS-сервера указаны оператор и страна, по законам которой он работает, согласно страницам самого оператора: Cloudflare · США, Quad9 · Швейцария, Google · США, а для добавленных вами адресов — AdGuard · Кипр, OpenDNS (Cisco) · США и DNS4EU · Чехия. DNS самой сети обозначается как «вашего провайдера», а неизвестный Kilobat адрес — как «неизвестный оператор»: он никогда не угадывает по адресу.

**Как работает каждый сервер.** Под последней проверкой раздел «Состояние» › DNS показывает последние 14 дней каждого сервера в этой сети, по одному квадрату на день: долю запросов, получивших ответ, с отметкой дней с ошибками или медленными ответами (свыше 200 мс). Данные получены из тех же фоновых проверок, поэтому дополнительных затрат нет.

**Как идёт замер.** До трёх раз в день для каждой сети, с интервалом не меньше четырёх часов и пока собственный трафик вашего Mac невелик, Kilobat дважды напрямую спрашивает каждый резолвер о десяти популярных сайтах: первый ответ — это то, чего ждёт сайт, который вы давно не открывали, второй — собственное время отклика резолвера. Ещё он спрашивает имя, которого не может существовать, чтобы поймать резолвер, который всё равно на него отвечает (подмена NXDOMAIN, обычно ради рекламы), и три сайта, которые раздаются через CDN, а затем замеряет TCP-подключение к адресу, который выдал каждый резолвер, против адреса от DNS вашей сети. Резолвер, который отправляет вас на заметно более далёкий узел CDN, получает штраф в три раза больше лишнего времени подключения, ведь каждое подключение платит его при рукопожатии, в TLS и на первом запросе: быстрые запросы, которые замедляют работу в браузере, не выигрывают. Один замер — это около двух десятков небольших запросов к каждому резолверу и несколько подключений, несколько килобайт. Он никогда не идёт в лимитной сети или точке доступа телефона, через VPN, за страницей входа в Wi-Fi или в режиме энергосбережения. *Проверить сейчас* запускает замер сразу.

**Когда он выбирается.** Только если резолвер был быстрее DNS вашей сети по медиане хотя бы на 20 ms, с более низким 90-м процентилем, в каждом из своих последних замеров минимум в три разных дня. До тех пор остаётся DNS вашей сети. После выбора он остаётся, пока хоть немного впереди, и уступает DNS сети, как только три дня не был впереди, или сразу, если его запросы не проходят. Вход от 20 ms, выход при 0, поэтому он никогда не прыгает туда-сюда.

**Переключение.** Включите *Использовать самый быстрый DNS в этой сети* в разделе «Состояние» › DNS или для всех сетей в «Настройки» › «Сеть». Kilobat устанавливает DNS сетевой службы через помощник, который также поддерживает работу Mac при закрытой крышке, поэтому каждый раз вводить пароль не нужно; вы один раз разрешаете помощник в объектах входа. Переключение никогда не происходит при подключённом VPN, управлении запросами со стороны профиля конфигурации или зашифрованного DNS приложения либо при ожидающей странице входа в Wi-Fi, которой нужен DNS самой сети. Заданные вами DNS-серверы никогда не изменяются. Kilobat отменяет только собственное изменение: при подключении VPN, выходе из сети, закрытии Kilobat и двух последовательных сбоях запросов, когда сама сеть отвечает (после этого сервер не используется в этой сети в течение дня). Выберите резервный сервер в разделе *При сбое использовать* в «Состояние» › DNS или «Настройки» › «Сеть» › «Резервный DNS», и неисправный сервер немедленно уступит ему место, только если тот отвечает в данный момент; если резервный сервер тоже не отвечает, восстанавливается DNS сети, чтобы Mac не остался без работающего DNS. Каждое переключение записывается в историю и показывается в меню Wi-Fi как «DNS: Cloudflare (самый быстрый здесь)» с кнопкой *Отменить*, которая возвращает DNS сети и отключает переключение для неё.

Измерение и просмотр результатов бесплатны; автоматическое переключение входит в Kilobat Pro. В Терминале `kilobat dns fastest` показывает результат для этой сети (`--all` — для всех сетей, `--json` — для скриптов), `kilobat dns auto on|off [--network <name>]` включает или выключает переключение, `kilobat dns exclude|include <resolver>` исключает сервер или добавляет ваш, а `kilobat dns fallback <resolver>|off` задаёт резервный сервер. Результат содержит оператора и местоположение каждого DNS-сервера, а также число запросов, на которые он ответил за 14 дней. Агенты читают данные через `get_fastest_dns`; `set_fastest_dns` и `set_dns_fallback` сначала запрашивают ваше согласие.
