Ранее я описал способ запуска VLESS + Reality на Intel iMac с macOS Catalina 10.15.8: «Как запустить VLESS + Reality на старом Intel iMac с macOS Catalina 10.15.8».
Решение через V2RayXS и Xray-core оказалось рабочим, но требовало много ручных действий: получить подписку, разобрать VLESS-ссылки, сформировать JSON-конфигурации, импортировать узлы и настроить системный proxy.
Схема выглядела примерно так:
subscription ↓vless:// ↓разбор параметров ↓JSON ↓V2RayXS ↓Xray ↓macOS system proxy
Для разовой настройки этого достаточно. Для постоянного использования — не очень удобно.
Следующим шагом стала автоматизация этой цепочки.
Так появился AUTO Xray.
Теперь пользовательский сценарий выглядит так:
subscription URL ↓Update subscription ↓выбор региона или сервера ↓Enable
Задача AUTO Xray
AUTO Xray не задумывался как универсальный VPN-клиент. Цель была значительно уже: сделать удобный клиент VLESS + Reality для старых Intel Mac, оставшихся на macOS Catalina.
Целевая конфигурация:
Intel x86_64macOS Catalina 10.15.xVLESS + RealitymacOS system proxy
Вся остальная техническая часть должна оставаться внутри приложения.
Что получилось: AUTO Xray
AUTO Xray — небольшое приложение для строки меню macOS.
Состояние видно по иконке в строке меню: яркий голубь — ON, полупрозрачный — OFF.
Нажатие на иконку открывает основное меню приложения. Отдельного окна настроек для повседневной работы не требуется.
При обновлении подписки AUTO Xray самостоятельно разбирает полученные узлы и распределяет их по группам:
-
RF
-
EU
-
World
После этого можно выбрать группу для автоматического выбора подходящего сервера либо указать конкретный узел вручную.
Что происходит под капотом
За работу с VLESS + Reality отвечает Xray-core. AUTO Xray управляет его конфигурацией, запуском и интеграцией с сетевыми настройками macOS.
При включении соединения приложение формирует конфигурацию для выбранного узла и запускает Xray-core с двумя локальными входами:
HTTP/HTTPS → 127.0.0.1:9001SOCKS5 → 127.0.0.1:2081
После запуска Xray AUTO Xray через штатный networksetup настраивает HTTP, HTTPS и SOCKS proxy для сетевых сервисов macOS.
В упрощённом виде маршрут трафика выглядит так:
Приложение ↓macOS system proxy ↓127.0.0.1 ↓Xray-core ↓VLESS + Reality ↓сервер
Из этой архитектуры следует важное ограничение: AUTO Xray — system proxy client, а не TUN VPN.
Программы, использующие системные proxy-настройки macOS, направляют трафик через Xray. Приложения, которые игнорируют системный proxy или используют собственный сетевой стек, могут работать напрямую.
Устойчивость на Catalina
Отдельная задача — поведение приложения при сетевых сбоях.
Например, после отключения и повторного подключения Wi-Fi процесс Xray может оставаться запущенным, но рабочий маршрут через proxy уже не гарантирован.
Поэтому в AUTO Xray есть supervisor, который периодически проверяет прохождение трафика через локальный SOCKS proxy. Если несколько проверок подряд завершаются ошибкой, runtime восстанавливается автоматически.
Есть и обратная проблема: Xray уже остановлен, а macOS продолжает считать системный proxy включённым. В этом случае приложения пытаются отправлять трафик на локальный адрес, где уже никто не слушает, и интернет фактически перестаёт работать.
AUTO Xray проверяет такое состояние и отключает оставшиеся HTTP, HTTPS и SOCKS proxy, если процесс Xray больше не работает.
Кроме того, при перезапуске очищаются оставшиеся процессы Xray, которые могут удерживать локальные порты после некорректного завершения.
Установка на Catalina
Основной способ установки — через DMG из GitHub Releases.
Порядок такой:
-
Скачать
AUTO_Xray_Catalina_v2.5.20.dmg. -
Открыть образ.
-
Запустить Install AUTO Xray.app через
Control-click → Open. -
Если Catalina в первом предупреждении показывает только Cancel, закрыть его и повторить
Control-click → Open. -
Во втором предупреждении подтвердить запуск кнопкой Open.
Приложение пока не подписано сертификатом Apple Developer ID, поэтому такой сценарий запуска ожидаем.
После установки AUTO Xray запускается в состоянии OFF.
Если DMG по какой-то причине не открывается или Gatekeeper продолжает блокировать запуск, в релизе есть резервный ZIP-инсталлятор:
AUTO_Xray_Catalina_Installer_v2.5.20.zip
Он содержит установочный скрипт INSTALL_AUTO_XRAY_CATALINA.command.
Состав релиза
В AUTO Xray включён Xray-core 1.8.4 — отдельно устанавливать или загружать его не требуется.
При сборке Xray-core проверяется по SHA-256 перед включением в пакет.
Вместе с каждым релизом публикуется SHA256SUMS.txt с контрольными суммами DMG и ZIP.
Итог
Текущая стабильная версия — AUTO Xray 2.5.20.
Проект и готовые сборки опубликованы на GitHub:
GitHub: https://github.com/eigenheit/auto-xray
Releases: https://github.com/eigenheit/auto-xray/releases
Если у вас остался Intel Mac с Catalina и есть возможность проверить AUTO Xray на другой конфигурации, результаты тестирования и найденные проблемы можно оставить в Issues проекта.
ссылка на оригинал статьи https://habr.com/ru/articles/1082148/