AirDrop пропал при включённом VPN? Проверьте локальную маршрутизацию
VPN, несущий интернет-трафик, всё равно может сломать обнаружение через AWDL или скрыть локальные подсети. Проверьте форму маршрутов и политику клиента, прежде чем трогать фильтры.
AirDrop работает, затем подключается VPN, и второй Mac или iPhone исчезает из листа общего доступа. В журнале VPN нет ничего об обнаружении, потому что сбой обычно связан с локальной доступностью, а не с криптографией. Страница поддержки Apple признаёт, что конфигурация VPN, ограничивающая локальную сеть, может мешать Continuity и AirDrop; это полезная подсказка, а не диагноз. Начните с дешёвых проверок, затем прочитайте таблицу маршрутов, а переключатель локального доступа считайте решением о приватности, а не значением по умолчанию, которое переключают.
Что ломается ещё до участия туннеля
Обоим устройствам нужны включённые Wi-Fi или Bluetooth, AirDrop должен принимать от контактов или от всех в пределах своего окна приёма, а обе учётные записи должны быть обнаружимы друг для друга. Поставить получателя на всех на десять минут — законный эксперимент: если другое устройство там появится, проблема была в настройках, а туннель ни при чём. Проверяйте с известным получателем, а не судите по тому, что предлагает лист общего доступа.
Браузер, загружающий страницы, доказывает работу интернет-пути, а не работу локального обнаружения. Оставьте оба устройства и место, где вы стоите, без изменений, затем включите и выключите VPN и отметьте, исчезает ли другое устройство только пока туннель поднят. Если обнаружение умирает вместе с туннелем и возвращается без него, переменной является туннель, и остальная часть списка применима. Если не работает в обоих состояниях, предварительные условия нужно пройти ещё раз, прежде чем менять какую-либо сетевую политику.
Лист общего доступа пустеет, когда смещается маршрут по умолчанию
Клиент полного туннеля обычно устанавливает маршрут по умолчанию через туннель плюс два полумаршрута, которые перехватывают большинство назначений. Локальная подсеть выживает при такой схеме только если у неё есть более конкретный маршрут; иначе она исчезает в туннеле. Сам AirDrop идёт через одноранговый интерфейс AWDL, поэтому клиент, который фильтрует или агрессивно маршрутизирует локальные интерфейсы, может мешать, пока интернет-путь остаётся идеальным. Четыре команды охватывают интерфейс, маршруты, активное соединение и фильтр пакетов.
ifconfig awdl0 | grep -E "status|inet"
netstat -rn | grep -E '^default|^0/1|^128.0/1|awdl'
scutil --nc list
sudo pfctl -s rules | head -40Сначала прочитайте строку по умолчанию: если она указывает на интерфейс utun и ни один более конкретный маршрут не покрывает вашу подсеть, локальный трафик уходит в туннель, и осведомлённость исчезает вместе с ним. Пара 0/1 и 128.0/1 — распространённая форма полного туннеля, потому что эти маршруты побеждают настоящий маршрут по умолчанию, не заменяя его. Строка awdl0 с активным статусом и адресом исключает, что одноранговый интерфейс выключен. Если все три выглядят нормально, ограничение идёт от политики клиента или фильтра на хосте, а не из таблицы маршрутов.
Одна форма заслуживает упоминания, потому что она ловит людей в гостевых сетях, и это не полумаршруты. DHCP устанавливает только что полученный адрес как маршрут на канале, и эта запись конкретнее любой из половин, поэтому гостевая подсеть проходит через туннель так же, как домашняя. Убирает её политика, а не маршрутизация: настройка, блокирующая локальную сеть и устанавливающая правило отказа, фильтр на хосте, отбрасывающий подсеть, или разрешение macOS на локальную сеть для клиента. Поэтому нормальная на вид таблица с мёртвым листом общего доступа — подпись следующего раздела, а не формы маршрутов.
Управляемый Mac может не предлагать переключатель локального доступа
Многие клиенты показывают настройку, разрешающую доступ к локальной сети, пока туннель поднят, но эту настройку применяют и клиент, и профиль управления, поэтому на управляемом Mac она может быть заблокирована, скрыта или переопределена. Правило брандмауэра на хосте или агент безопасности может блокировать одноранговый трафик независимо от того, что предлагает клиент VPN. Ищите переключатель, прежде чем решить, что он ничего не делает. Этот переключатель живёт в собственных настройках клиента, а не в сетевых настройках macOS, и поэтому клиентом, в панели которого его нет, обычно управляет профиль управления.
Удаление управления или отключение каждого фильтра, чтобы появился один получатель, меняет контролируемую конфигурацию на неизвестную. Включайте опцию локального доступа только когда она соответствует политике, под которой вы работаете, и оставляйте её выключенной в гостевой сети, где локального обнаружения никогда не хотели.
Докажите файлом, а не значком
После изменения маршрутизации или политики отправьте настоящий файл предполагаемому получателю и подтвердите, что передача завершается. Имя, появившееся в листе, — это обнаружение, и возвращение обнаружения не то же самое, что завершённая передача.
Если устройство всё ещё не появляется, сравните вторую пару устройств в той же сети, чтобы отделить проблему хоста от проблемы всей сети. Такое сравнение быстрее, чем переключать опции VPN по одной, и даёт факт для заявки. Запишите интерфейс по умолчанию, форму маршрутов и состояние переключателя локального доступа, пока сбой воспроизводится. Иначе следующий человек повторит все четыре проверки с начала.