macOS-приложение в подробностях
URnetwork на Mac собирается из того же проекта Xcode, что и приложение для iPhone и iPad: одна кодовая база, один движок, две формы окна. Вы пользуетесь им как VPN (подключаетесь — и ваш трафик появляется откуда-то ещё), но выходит он через реальные домашние подключения, которые раздают другие участники, а не через дата-центры. Этот тур полностью покрывает Mac-овские части и проходит общие функции с достаточной для работы глубиной; там, где поведение идентично iOS, исчерпывающая версия — в туре по iOS. Установка и первое подключение — в начале работы на macOS; что меняют выходы, которые держат участники, — в обзоре.
Как устроено приложение
Два процесса, как у каждой серьёзной VPN на платформах Apple:
- Приложение (бандл
network.ur) — окно и значок в строке меню. - Туннельное расширение (
network.ur.extension) — сетевое расширениеNEPacketTunnelProvider, которое macOS запускает и опекает. Ваш трафик движется через этот процесс, а значит ваша защита никогда не зависит от того, открыто ли окно.
Приложение говорит с туннелем по локальному RPC устройства (приватному каналу управления между двумя процессами), поэтому может присоединиться к туннелю, который уже работает. Закройте и переоткройте приложение посреди сеанса — или уроните его, — и оно усыновит живой туннель, а не перезапустит. Поэтому же macOS при первом подключении просит одобрить конфигурацию VPN: расширение — компонент под управлением системы, и ОС требует согласия.
Приложению нужна macOS 13.5 или новее, и всё открыто на github.com/urnetwork, поэтому заявления вроде «путь данных не логирует ничего» можно проверить по коду, а не принимать на веру. Ни один независимый аудит не покрывает протокол и серверный код оператора — слой, где живут заявления о приватности. Две сторонние оценки 2025 года покрывают другие поверхности: тест на проникновение веб-приложения и API и оценка Leviathan Security Group MASA AL2 Android-приложения, которая пройдена. Ни одна не покрывает Mac-приложение. Модель угроз фиксирует обе и их рамки.
Окно: боковая панель с четырьмя разделами
Главное окно — сплит-вью. В боковой панели те же четыре раздела, что и вкладки на iOS (Подключение (Connect), Аккаунт (Account), Таблица лидеров (Leaderboard), Поддержка (Support)); выбранный раздел заполняет остальное окно.
Подключение
Большой глобус — это кнопка подключения. Строка статуса под ним гласит Подключено к N провайдерам (Connected to N providers), и клик по ней открывает Локации провайдеров (Provider Locations): вращаемый глобус над списком провайдеров, которые действительно несут вас прямо сейчас. Ожидайте нескольких сразу, обычно от трёх до восьми. Ваш клиент ведёт два набора бок о бок (набор качества для HTTPS, набор скорости для всего остального) и закрепляет каждый сайт за одним провайдером, поэтому картина множественная по замыслу, при этом любой отдельный сайт по-прежнему видит один стабильный адрес. Медленные или пропавшие провайдеры заменяются автоматически; уход одного в офлайн посреди потока стоит самое большее короткой заминки, пока этот сайт переезжает на другого из вашего набора, а если тянется весь сеанс — переподключитесь и вытяните свежий набор. Обзор объясняет путь каждого соединения, почему он останавливается на четырёх звеньях и что каждая сторона на нём может и не может видеть.
Под глобусом сидит шторка деталей: выбранная локация, Опции подключения (Connect options) — режим соединения, Фиксированный IP (Fixed IP), Строгая анонимизация (Strong Anonymization), Постквантовое шифрование (Post Quantum Encryption), — карточки статистики Удалённый / Заблокировано / Локальный (Remote / Blocked / Local), открывающие клиентские контракты, правила разделения и панель DNS, и переключатель Блокировать рекламу и трекеры (Block ads and trackers). Режима раздачи здесь нет. Он живёт в Аккаунт → Настройки.
| Настройка | По умолчанию | Эффект | Главная цена |
|---|---|---|---|
| Режим соединения (Connection mode) | Авто | Авто ведёт оба набора провайдеров и направляет каждый пакет в подходящий | Веб (Web) или Стриминг (Streaming) привязывают к одному набору |
| Фиксированный IP | Выкл | Сужает окно до одного провайдера, поэтому каждый сайт видит один устойчивый адрес | Отдаёт множественный выход |
| Строгая анонимизация | Вкл | Запрещает прямой путь клиент↔провайдер, поэтому провайдер никогда не видит ваш реальный IP | Медленнее прямого пути |
| Постквантовое шифрование | Вкл | Запечатывает сеанс сквозным шифрованием до провайдера, поэтому оператор несёт шифртекст | Пропускает провайдеров, с которыми не удаётся запечатать |
| Блокировать рекламу и трекеры | Выкл | Отфильтровывает рекламу и трекеры из всего, что несёт туннель | Фильтрация на весь туннель, не по приложениям |
- Выключить Строгую анонимизацию — это прямой режим: быстрее, и этот провайдер тогда видит ваш реальный адрес.
- Запечатывание не допускает отката. Пока Постквантовое шифрование включено, клиент не отправляет и не принимает данные приложений в открытом виде: провайдер, с которым не удаётся установить запечатанный сеанс, пропускается, а не используется незапечатанным. Цена здесь — доступность, а не конфиденциальность: вы теряете этого провайдера, а не своё шифрование. Каждая текущая сборка провайдера поддерживает отвечающую сторону, так что это редкость. Выключите настройку — и трафик снова сможет пойти по стандартному пути. Ни одно приложение пока не показывает по подключению вердикта «запечатано или нет».
Провайдер — реальное подключение другого участника; платформа — оператор посередине, который подбирает их вам. Провайдер видит, куда идёт трафик, который он несёт, — тот же вид, что сегодня имеет на вас интернет-провайдер, — но не то, что внутри, потому что почти каждый сайт сам запечатывает своё содержимое HTTPS. По умолчанию он никогда не узнаёт ваш реальный IP — тот остаётся у платформы. Платформа, в свою очередь, держит почти ничего: ваш адрес хранится как односторонний хеш с ключом (перемешанный одним секретным ключом, необратимый) от окружающего блока адресов, а не сам адрес, а реестр передач записывает счётчики байтов между идентификаторами клиентов — никогда не сайты, которые вы посещаете. Географический запрос всё же кладёт приблизительный город на каждое подключение, поэтому огрублённое «где» известно; «что» — никогда. С обоими включёнными умолчаниями провайдер никогда не узнаёт, кто вы, а оператор не может прочитать, что вы отправляете, — поэтому ни одна сторона не держит одновременно вашу личность и вашу активность.
| Режим | Видит оператор | Видит провайдер | По умолчанию и доступность |
|---|---|---|---|
| Ретранслируемый запечатанный | ваш аккаунт и исходное подключение, на каких провайдерах вы сидите, и шифртекст с его таймингом и объёмом | назначения, которые он выводит, и идентификатор устройства/контракта, не ваш реальный IP | заводское умолчание: Постквантовое шифрование, включено в шторке подключения |
| Ретранслируемый стандартный | ваш аккаунт и исходное подключение, на каких провайдерах вы сидите, и назначения и байты пакетов внутри | назначения, которые он выводит, и идентификатор устройства/контракта, не ваш реальный IP | только при выключенном Постквантовом шифровании |
| Прямой | меньше участия в ретрансляции | ваш реальный IP и назначения, которые он выводит | по явному выбору: выключите Строгую анонимизацию |
Ограничение: ничто не проверяет, что предложенные вам провайдеры независимы друг от друга и от оператора, а оператор может сам запускать провайдеров. Модель угроз прорабатывает эти строки против именованных противников, включая враждебного оператора, и прямо говорит, где каждая из них отказывает.
Кликните карточку локации — и откроется список провайдеров. На Mac он выезжает панелью рядом с видом подключения, а не листом, и кнопка панели инструментов Показать список провайдеров (Show Provider List) тоже его переключает. Пролистывание перечисляет страны, каждую с живым счётчиком провайдеров онлайн; наберите название места в Поиске провайдеров (Search providers) — и в результатах появится раздел Города (Cities). Прицел на город — то, что ищут, а не то, до чего прокручивают. Каждая локация — устройство участника, физически находящееся там: платформа геолоцирует наблюдаемое подключение, а адрес, похожий на дата-центр или VPN, понижается, а не принимается на веру. «Лучший доступный» (Best available) оптимизирует скорость рядом с вами; конкретная локация делает так, что вы появляетесь там.
Аккаунт
Здесь живут идентичность и тариф:
- Тариф. Бесплатный — настоящий дневной лимит данных; UR Pro — большой месячный, $5/месяц или $40/год. Текущие цифры на ur.io/products.
- Ваша активность раздачи. Где настраивается раздача, с построчным учётом того, что перенесла ваша. Настройки ссылаются на это как «Использует протокол UR» (Uses the UR Protocol); ur.xyz документирует, как работают вознаграждения за участие.
- Коды баланса (Balance codes). Одноразовые пополнения данных: подарочная карта на данные, без прикреплённой подписки.
- Заблокированные локации (Blocked locations). Страны, через которые вы никогда не хотите выходить.
- Идентичности провайдеров (Provider identities). Провайдеры, с которыми ваш клиент сейчас держит проверенный запечатанный сеанс.
- Панель постквантовой идентичности. Разобрана ниже.
- Настройки. Где живут режим раздачи, kill switch (аварийный стоп), заблокированные локации, запуск при входе, ваша сид-фраза и способы входа, а также удаление аккаунта.
Переключатели Настроек одним взглядом:
| Настройка | По умолчанию | Эффект | Главная цена |
|---|---|---|---|
| Режим раздачи (Provide mode) | Никогда | Делится свободной полосой вашего Mac публично или только с вашими собственными устройствами | Каждый перенесённый байт считается в лимит данных интернет-провайдера |
| Kill switch | Выкл | Отказывает локальному откату, поэтому трафик останавливается, а не утекает, когда ни один провайдер недоступен | Нет трафика, когда провайдеры отказали |
| Запускать URnetwork при старте системы (Launch URnetwork on system startup) | Выкл | Запускает приложение при входе через собственный сервис объектов входа macOS | Запись в Системные настройки → Объекты входа |
Старт без почты здесь — полноправный путь. Создать мгновенный аккаунт (Create Instant Account) на экране входа делает настоящую, постоянную сеть в один клик, охраняемую сид-фразой, которую платформа генерирует и показывает один раз, сразу после создания. Сохраните её: это единственная дорога назад, оператор держит только её хешированные формы, и с сохранённой фразой аккаунт переживает этот Mac. Дальше в Аккаунте к той же сети можно добавить любой другой способ входа (Apple, Google, почту или телефон, Solana, Bittensor), сохранив баланс и историю. Почта или телефон — ваш вход и путь восстановления, не больше, а пути сид-фразы и кошелька, с оплатой в USDC в блокчейне, позволяют аккаунту не нести ни почты, ни имени, ни карты вовсе. Код авторизации (auth code), сгенерированный на любом уже вошедшем устройстве, — самый быстрый способ привести ваш Mac в существующий аккаунт.
Таблица лидеров
Лучшие провайдеры по перенесённым данным — и никогда ничего о чьих-либо посещениях. Раздавайте со своего Mac — и можете появиться здесь, публично под именем сети или приватно, безымянно. Не раздаёте — вас здесь просто нет.
Поддержка
Тарифы, помощь, отзывы и ссылки на сообщество, с возможностью приложить логи клиента к отчёту: обычный путь, когда что-то ломается. Вне приложения feedback.ur.io работает из любого браузера; находки по безопасности идут на [email protected] под политикой раскрытия на ur.io/vdp.
Значок в строке меню
URnetwork живёт и в строке меню, и это самый быстрый способ пользоваться приложением изо дня в день:
- Статус с одного взгляда. Подключено и Раздача, каждое с галочкой или крестом.
- Подключить / Отключить (Connect / Disconnect). Один клик, окно не нужно.
- Показать (Show). Вернуть главное окно.
- Завершить URnetwork (Quit URnetwork). Отключает и выходит.
Закройте окно — и приложение продолжит работать в строке меню; туннель продолжает работать в любом случае, потому что это отдельный процесс под управлением системы. ⌘Q — тоже намеренно не выход: он прячет окно и убирает приложение из Dock в строку меню. Настоящий выход — Завершить URnetwork здесь, и он забирает туннель с собой.
Общее с iOS: глубокие функции
Эти работают идентично iOS-приложению; тур по iOS покрывает каждую во всех деталях.
Собственный DNS
Полная панель DNS под Подключением. DNS — телефонная книга интернета (он превращает имя вроде netflix.com в адрес, к которому подключается ваш Mac) и классическое место слежки и блокировок со стороны локальных и региональных файрволов. Панель можно не трогать: умолчание — зашифрованный DNS over HTTPS, резолвящийся через туннель, — уже самая безопасная настройка. Оттуда можно переключать любые сочетания DoH (удалённый/локальный) и незашифрованного DNS (удалённого/локального), самим править списки резолверов и пользоваться локальным резервным DNS (local DNS fallback), который пускает локальный резолвер наперегонки, пока туннель стартует, чтобы запросы не замирали во время рукопожатия (выключен — DNS резолвится только через туннель). Экран предлагает рекомендуемые настройки по странам, потому что некоторые национальные сети мешают запросам настолько, что ломают самую строгую конфигурацию, — применение в одно касание и возврат к безопасным умолчаниям в одно касание, плюс предлагаемые серверы, отмеченные цветом вашей подключённой страны.
Правила разделения
Ведите конкретный трафик мимо туннеля или закрепляйте его на месте, на уровне доменов и IP. Коснитесь живого трафика, чтобы вести его локально, — лекарство, когда офисный интранет, принтер или NAS пропадает за туннелем. Или удержите сайт на одном провайдере ради стабильного адреса — это успокаивает чувствительные к адресу сайты вроде банков; этот провайдер тогда видит ваши визиты на этот один сайт, по-прежнему без вашей личности и содержимого. Правила ловят весь связанный сетевой кластер, поэтому трафик CDN и поддоменов движется вместе. Как и на iOS, раздельного туннелирования по приложениям здесь нет. Оно есть на Android и Windows, но платформы Apple не дают VPN-приложениям поддерживаемого крючка по приложениям, поэтому правила на Mac — сетевого уровня.
Режим раздачи
Раздача свободной полосы вашего Mac (десктоп на хорошем канале — ровно то устройство, которое нужно сети) настраивается в Аккаунт → Настройки → Подключения, где Режим раздачи — выбор из четырёх, а не переключатель:
| Режим | Что несёт |
|---|---|
| Никогда | Ничего. Умолчание: вы чисто пользователь |
| Авто | Публичный трафик, пока вы подключены; только ваши собственные устройства, когда нет |
| Всегда | Публичный трафик, подключены вы или нет |
| Сеть | Всегда только ваши собственные устройства |
Публичный трафик учитывается по подписанным контрактам (криптографическим соглашениям, которые считают байты между идентичностями клиентов, — так использование сводится без записи назначений), а провайдеры участвуют в протоколе UR; ur.xyz документирует, как работают вознаграждения за это участие.
Безопасность сконструирована на вашей собственной машине. Открытый инспекционный слой движка connect работает на вашем Mac на выходе и блокирует файлообмен (класса BitTorrent) и трафик атакующих шаблонов до того, как он покинет ваше подключение. Что даёт совпадение: пакет отбрасывается, а сигнатура файлообмена дополнительно поднимает оператору флаг злоупотребления, несущий только идентификатор отправившего устройства и логический признак (ни назначения, ни домена, ни содержимого), обработчика для которого оператор сегодня не поставляет. Отбрасывания атакующих шаблонов и непрозрачных туннелей не поднимают ничего вовсе. Тот же фильтр — причина, по которой URnetwork намеренно не инструмент для торрентов. Ограничение: никакая конструкция с общим выходом не делает риск ровно нулевым — поэтому аудиторию выбираете вы, а каждый байт, который вы несёте, считается в лимит данных интернет-провайдера, так что на тарифе с учётом раздавайте выборочно или не раздавайте вовсе.
Панель постквантовой идентичности
Сама настройка — Постквантовое шифрование, переключатель в шторке подключения под Опциями подключения, и поставляется он включённым: запечатано — состояние, в котором стартует свежая установка, а не выбор, который надо сделать. Аккаунт затем показывает постквантовую сеансовую идентичность вашего клиента с листом «Поделиться» для сравнения по другому каналу — та же идея, что сравнение кодов безопасности в мессенджере: зачитанный по другому каналу отпечаток доказывает, что запечатанный сеанс кончается там, где вы думаете. Что покрывает настройка: ваш клиент запечатывает трафик напрямую до провайдера сеансом TLS 1.3, согласованным с X25519MLKEM768 (гибрид классики и ML-KEM), поэтому оператор посередине несёт байты, которые не может прочитать, а сделанные сегодня записи спроектированы оставаться запечатанными даже против будущего квантового компьютера (угроза «собрать сейчас, расшифровать потом»). Откат здесь не допускается: пока настройка включена, клиент не отправляет и не принимает данные приложений в открытом виде, поэтому провайдер, с которым не удаётся установить запечатанный сеанс, пропускается, а не используется незапечатанным: вы теряете этого провайдера, а не своё шифрование. Каждая текущая сборка провайдера поддерживает отвечающую сторону, так что это редкость; выключите настройку — и трафик снова сможет пойти по стандартному пути платформы. Ни одно приложение пока не показывает по подключению вердикта «запечатано или нет». Подписи идентичности остаются Ed25519, и «постквантовое» означает обмен ключами этого сеанса, не шире.
Устранение неполадок
Одобрение конфигурации VPN
Первое подключение вызывает системный диалог с просьбой разрешить конфигурацию VPN. Если её отклонили, туннель не сможет стартовать никогда. Одобрите при следующей попытке или загляните в Системные настройки → VPN (System Settings → VPN; видно и в разделе Сеть), где конфигурация URnetwork должна быть в списке и включена.
Несколько профилей VPN и как приложение ими управляет
Переустановки и обновления могут оставить у macOS больше одного профиля VPN URnetwork. Приложение этого ждёт: при подключении оно перечисляет все профили, а когда запуск одного падает, сбрасывает этот профиль и повторяет, затем переходит к следующему. Если туннель уже работает, оно усыновляет его по RPC устройства, а не перезапускает. Сломанные профили сбрасываются или удаляются с потолком на удаления, и каждая операция с профилем ограничена дедлайном, чтобы заклинивший системный демон не подвесил приложение. Всё автоматически; описано здесь, чтобы записи в Системных настройках имели смысл.
«Не удалось загрузить профили VPN» (ошибка 12)
Если подключение падает с ошибкой «Не удалось загрузить профили VPN» (Failed to load VPN profiles, код ошибки 12), системное хранилище настроек VPN отказывается перечислять профили — состояние, которое приложение не может починить изнутри. Чините руками:
- Откройте Системные настройки и найдите конфигурации VPN (Системные настройки → VPN или эквивалент Основные → VPN и управление устройством в вашей версии macOS).
- Удалите конфигурацию (или конфигурации) URnetwork.
- Переподключитесь из приложения и одобрите свежую конфигурацию.
Удаление конфигурации стирает сантехнику, а не данные: ваш аккаунт, настройки и правила разделения не тронуты, и следующее подключение пересоздаёт её (снова показав одноразовый диалог одобрения).
Запуск при входе в систему
Запускать URnetwork при старте системы — переключатель в Аккаунт → Настройки, в разделе Система. Он регистрирует приложение в собственном сервисе объектов входа macOS, поэтому работает на каждой поддерживаемой версии, а запись появляется в Системные настройки → Основные → Объекты входа (System Settings → General → Login Items), где её можно убрать и руками. Выключение переключателя снимает регистрацию.
Как здесь работает kill switch
Так же, как на iOS: приложение поставляет переключатель Kill switch в Аккаунт → Настройки → Подключения — тот же SDK-контрол, что у каждого приложения URnetwork. Он стартует выключенным, поэтому включить его — осознанный акт. Со включённым клиент отказывается откатываться на ваш локальный маршрут, поэтому трафик останавливается, а не утекает. Чего Mac не добавляет — принуждения на уровне ОС. Приложение не выставляет includeAllNetworks, поэтому если туннельный процесс неожиданно умирает, macOS восстанавливает обычную сеть, а не падает в закрытое состояние: ваши приложения продолжают работать по нижележащей сети с вашим реальным IP — скорее всего, вы заметите не больше, чем мигание. Галочка/крест в строке меню — сигнальная растяжка с одного взгляда. Приложение опекает туннель и агрессивно восстанавливает профили, но пока не просит ОС жёстко блокировать трафик, когда туннель лежит. Если вам нужно гарантированное закрытие при сбое, принуждайте его вне Mac (правило роутера или файрвола, пропускающее только туннельный трафик) или делайте критичную для браузера работу через браузерное расширение URnetwork, чей kill switch включён по умолчанию и покрывает только трафик браузера.
Чтение логов туннеля
Туннельное расширение пишет в единый системный журнал: Console.app, не файлы.
- Откройте Console.app и выберите свой Mac.
- В меню «Действие» включите Включить информационные сообщения (Include Info Messages) и Включить отладочные сообщения (Include Debug Messages). Полезные строки — на этих уровнях.
- Отфильтруйте по подсистеме
network.ur.extensionили ищите «URnetwork», затем воспроизведите подключение.
Поведение во сне
Туннель сконфигурирован с выключенным disconnectOnSleep: закрытая крышка не рвёт сеанс, поэтому вы продолжаете с того же места, а не пережимаете рукопожатие при каждом пробуждении. Спящий Mac не двигает трафика. Он не браузит и не раздаёт; настройка лишь избавляет вас от повторного рукопожатия.
Куда дальше
- Начало работы на macOS — короткий путь.
- Тур по iOS — те же функции в исчерпывающей форме, плюс команды Siri.
- Обзор — как сеть работает из конца в конец, и FAQ — быстрые ответы.