Браузерное расширение: тур
Расширение — это URnetwork внутри браузера, а веб-приложение ur.io — его панель управления: один продукт, две половины. Эта страница — глубокое погружение: прокси-механика в каждом браузере, органы управления с заводскими умолчаниями, что kill switch (аварийный стоп) обещает и чего не обещает, и что проверять, когда что-то ломается. О сети за всем этим — кто такие провайдеры и что видит каждая сторона — читайте обзор. Ссылки магазинов, вход и первое подключение — в начале работы в браузере.
Рамка, которую надо держать всегда: это браузерный прокси, а не VPN. Прокси — посредник, который ходит на сайты за браузер, поэтому сайты видят его адрес вместо вашего. Расширение настраивает собственные прокси-параметры браузера, поэтому управляет ровно тем, что отправляет этот браузер, — не больше. Покрыто: каждая вкладка и каждое окно этого браузера, инкогнито тоже — на Chromium всегда, на Firefox после того, как вы разрешите работу в приватных окнах. Не покрыто: другие браузеры, ваша почтовая программа, системные обновления, всё остальное — как незащищённое, так и неполоманное. Ставьте его в каждый браузер отдельно; покрытие всего устройства — работа приложений URnetwork (Android, iOS, macOS, Windows, Linux): тот же аккаунт, тот же kill switch, слоем ниже.

Настройки одним взглядом
Расширение намеренно держит поверхность маленькой. Два контрола, оба в попапе:
| Настройка | По умолчанию | Эффект | Главная цена |
|---|---|---|---|
| Kill switch | Вкл | блокирует трафик браузера при обрыве прокси, вместо отката на ваше прямое подключение | вкладки падают с ошибкой во время сбоя |
| Переопределение геолокации (Geolocation override) | Выкл | геолокационный API браузера сообщает город вашего выхода вместо вашей реальной позиции | сайтам, которым нужна ваша настоящая локация, требуется его выключить; для актуальности нужна открытая вкладка ur.io |
Оговорки к таблице:
- Двух переключателей из приложений здесь нет по замыслу. Постквантового шифрования (Post Quantum Encryption) нет, потому что у расширения нет сеанса клиент↔провайдер, который можно запечатать; полное исключение — в разделе «Сбор данных» ниже. И нет переключателя Строгая анонимизация (Strong Anonymization), потому что прямой режим принудительно выключен на размещённом прокси-устройстве, на котором работает расширение: ни одному провайдеру никогда не может достаться ваш реальный адрес.
- Kill switch переживает перезапуски браузера, поэтому сбой держит вас заблокированным, а не раскрытым, пока вы не отключитесь или путь не восстановится.
Как это работает
Расширение — Manifest V3 в каждом браузере, но прокси-сантехника различается, потому что различаются API браузеров:
- Chrome и Edge (и семейство Chromium вообще) используют API прокси-настроек. Расширение устанавливает сгенерированный PAC-скрипт — крошечный файл правил, с которым браузер сверяется, решая, куда идёт каждый запрос, — отправляющий трафик браузера на выделенные вам прокси-эндпоинты URnetwork. Установка его забирает конфигурацию прокси браузера — поэтому же два прокси-расширения не могут сосуществовать (см. устранение неполадок). Настройки ОС он не трогает никогда и отменяется чисто: отключение возвращает прямое соединение, удаление снимает захват.
- У Firefox нет эквивалентной передачи настроек, поэтому он использует
proxy.onRequest: с расширением сверяются на каждый запрос, и оно отвечает целым списком выделенных прокси, поэтому один недостижимый прокси не бросает запрос на мели.directдобавляется в конец списка, только если вы выключили kill switch; со взведённым список кончается последним прокси, и полный сбой отказывает.
Версии для Safari нет, потому что в Safari нет этих API. На устройствах Apple всё, включая Safari, покрывает приложение.
Браузинг выходит через небольшое окно провайдеров сразу: устройств участников, чьи владельцы согласились и участвуют в протоколе UR. «Ваш IP выхода» — множественное число, а закрепление по сайтам держит каждый сайт на одном выходе, поэтому ваш банк видит один устойчивый адрес.
URnetwork SDK едет внутри пакета расширения как WebAssembly. Выделение прокси, список локаций и вызовы API — всё выполняется локально. Ничего исполняемого не подтягивается на лету; что отревьюил магазин, то и работает.
Веб-приложение — панель управления расширением; они один продукт. Войдите один раз на ur.io — и страница с расширением говорят по документированному мосту: короткий протокол глаголов (SETUP, CONNECT, DISCONNECT, SET_LOCATION, kill switch, синхронизация геолокации) поверх window.postMessage — единственного канала, который работает одинаково в Chrome, Edge, Brave и Firefox. SETUP передаёт вошедшую сессию прямо в руки — поэтому настройка из приложения никогда не спрашивает у вас код авторизации. Разделение труда настоящее: расширение чеканит прокси-сессию и устанавливает браузерный прокси, а приложение держит живое устройство. Смена локации в приложении перенаправляет его без переподключения браузера, и каждая поверхность показывает, что вы сделали в другой.
Мост намеренно узкий. Он работает только на страницах ur.io и app.ur.network; никакой другой сайт не может говорить с расширением. Один другой скрипт загружается на каждой странице — переопределение геолокации, — и он остаётся инертным, с нетронутыми нативными функциями, пока вы его не включите (ниже).
Для входа нужен аккаунт, поскольку использование учитывается по аккаунтам: код на почту или телефон, один из SSO-вариантов ur.io, подпись кошелька или код авторизации, сгенерированный на устройстве, где вы уже вошли. Пути без почты здесь — кошелёк и код авторизации; Мгновенный аккаунт (Instant Account) без почты в одно касание создаётся в приложениях для телефона и десктопа, и расширение подхватывает этот аккаунт, как любой другой. Бесплатный тариф — дневной лимит данных; Pro — большой месячный ($5/месяц или $40/год; текущие цифры на ur.io/products).
Семантика kill switch
Что он делает: если прокси-соединение обрывается при включённом kill switch, расширение блокирует трафик браузера, а не даёт браузеру тихо откатиться на ваше прямое подключение и раскрыть ваш реальный адрес посреди сеанса.
- Он включён по умолчанию — единственная поверхность URnetwork, которая поставляется взведённой.
- Принуждение — собственное прокси-правило браузера: взведённое, оно не имеет лазейки «иначе иди напрямую», поэтому запросы отказывают, а не откатываются. Оно переживает перезапуски браузера. Вы возвращаетесь заблокированным, а не раскрытым.
- Если он сработал, останавливается только этот браузер (вкладки падают с ошибкой; попап показывает почему). Остальной компьютер через него и не ходил.
- Выключить его — значит отказывать в открытую: оборванное соединение возвращает вас к прямому браузингу, видимо в попапе, но беззвучно во вкладках. Приемлемо только там, где утечка — неудобство, а не вред.
- Предел охвата: он блокирует трафик браузера — всё, чем расширение может управлять; это не системный файрвол. Локальные адреса (localhost, принтеры) намеренно идут мимо, а WebRTC (голос/видео в браузере) может открывать соединения, игнорирующие прокси-настройки, — дыра каждого прокси-расширения; браузеры умеют его ограничивать.
Переопределение геолокации
Два сигнала: ваш IP-адрес теперь говорит «Амстердам», но геолокационный API браузера, отвечающий по сигналам ОС вроде ближайших Wi-Fi, всё ещё сообщает, где ваше тело. Сайты, сравнивающие эти два сигнала, видят противоречие. Переопределение чинит второй сигнал, чтобы обе истории сходились:
- Выключено по умолчанию. Ничего не меняется, пока вы не включите его в попапе.
- Включённое, оно отвечает на
document_startво всех фреймах, поэтому геолокационный API выдаёт локацию вашего выхода раньше, чем любой скрипт страницы успевает спросить, включая iframes, пытающиеся его обогнать. Координаты — город вашего самого старого подключённого провайдера, и до расширения они доходят по мосту приложения: расширение не держит собственного устройства, поэтому актуальность позиции поддерживает открытая вкладка ur.io. - Выключенное, оно не говорит вообще ничего: страница сохраняет родную геолокацию, и ни одному сайту не вручается свежий сигнал, что у вас стоит расширение. Выключайте его, когда хотите, чтобы сайты видели вашу реальную локацию (карты, доставка).
Проверки здоровья и деградированное состояние
Пока вы подключены, расширение раз в пять минут забирает лёгкий эндпоинт (my-ip-info в API URnetwork) через прокси — пренебрежимо мало даже на фоне бесплатного лимита. Это доказывает, что путь работает из конца в конец, а не просто что настройки применились:
- Два подряд сбоя: статус становится деградировано. Вы всё ещё сконфигурированы, но течение трафика не подтверждено. Попап показывает индикатор нестабильности.
- Три подряд сбоя: автоматическое переподключение, с нарастающей паузой (2 с с удвоением до 30 с, пять попыток) и перевыделением прокси по необходимости.
- Успех в любой момент возвращает статус в «подключено». Льготный период после подключения не даёт статусу дребезжать, пока первое соединение устаканивается.
Деградировано — не утечка. Вы всё ещё нацелены на прокси, а со взведённым kill switch мёртвый путь блокирует, а не раскрывает. Это не ошибка, которую надо чинить; это расширение предупреждает вас рано — обычно о капризной сети между вами и прокси.
Сбор данных: никакого
- Листинг для Firefox объявляет это в манифесте, машиночитаемо:
data_collection_permissions— none. Это заявление, принуждаемое магазином, а не обещание на странице о приватности. - Расширение говорит только с API URnetwork ради выделения ваших прокси — те же вызовы, что делает любой клиент. Ни аналитики, ни телеметрии, ни сбора истории посещений нигде.
- Разрешения на хосты различаются по браузерам, и не случайно. В Chrome расширение запрашивает доступ только к API-хостам URnetwork (
api.bringyour.com,api-v4.bringyour.com); прокси-API на PAC не нуждается в том, чтобы видеть ваши запросы. В Firefox расширению нужен:proxy.onRequestсверяется с расширением по каждому запросу, который может маршрутизировать, и Firefox требует для этого доступа к хостам. Более широкое разрешение там — цена прокси-API Firefox, а не захват данных. - Никакая третья сторона расширение не оценивала. Android-приложение URnetwork прошло оценку Leviathan Security Group MASA AL2 в мае 2025 года — фиксированный чек-лист безопасности Google для мобильных приложений, — а независимая фирма в апреле того же года провела тест на проникновение веб-приложения и API; ни то ни другое не покрывает расширение, и ни один независимый аудит не покрывает протокол и серверный код оператора. Что эта страница предлагает взамен — фальсифицируемо: эти разрешения читаются в вашей собственной установленной копии, ничего не подтягивается на лету, и исходники публичны. Заявления, которые можно проверить, а не сертификат.
Что держит сервис: ваш аккаунт и поштучный реестр счётчиков байтов по устройствам (это лимиты и учёт провайдеров), никогда — назначения или URL; адрес клиента, хранимый как односторонний хеш с ключом от вашего блока IP, а не сам адрес; и приблизительный город из географического запроса. Провайдеры выводят трафик, не узнавая ваш реальный адрес, и видят только метаданные уровня интернет-провайдера (имена сайтов, никогда не страницы и не пароли — те остаются запечатанными HTTPS); сайты видят только выход.
Но будьте точны насчёт середины. У сети три режима, и браузер всегда занимает только один из них:
| Режим | Видит оператор | Видит провайдер | Доступно здесь |
|---|---|---|---|
| Ретранслируемый стандартный | ваш аккаунт и исходное подключение, на каких провайдерах вы сидите, и назначения и байты пакетов внутри | назначения, которые он выводит, и идентификатор устройства/контракта, не ваш реальный IP | да: единственный режим браузера |
| Ретранслируемый запечатанный | то же, но вместо назначений — шифртекст с его таймингом и объёмом | как выше | нет: сеанс приложений с шифрованием до провайдера, включённый там по умолчанию, не имеет браузерного эквивалента |
| Прямой | меньше участия в ретрансляции | ваш реальный IP и назначения, которые он выводит | нет: принудительно выключен на размещённом прокси-устройстве, на котором работает расширение |
Первая строка — позиция браузера, и контраст с приложениями резкий, а не мягкий: они по умолчанию запечатывают сеанс клиент↔провайдер, а у браузера там нечего запечатывать. И не может быть: браузер говорит на собственном прокси-протоколе и не может выполнять движок сети, поэтому ваше клиентское устройство работает удалённо внутри оператора, который переводит между двумя протоколами, — запечатывание, начатое с такого устройства, началось бы у оператора, той самой стороны, которую запечатывание существует ослеплять. Реализация обменяла запечатывание на саму возможность добраться до браузера. Гарантия здесь — про хранение, а не про шифрование. Любой браузерный прокси вручает каждое назначение эндпоинту, который набирает, поэтому оператор обрабатывает ваши в пути; за этим стоит прокси-путь данных, который не пишет ни одного лога, — что закреплено регрессионным тестом в открытом коде, — и реестр, в котором некуда положить назначение. Переключатель Строгая анонимизация из приложений так же отсутствует и так же не нужен: с принудительно выключенным прямым режимом ни одному провайдеру никогда не может достаться ваш реальный адрес.
Что сама сеть может и не может видеть, когда ваш трафик уже течёт, — читайте обзор. Модель угроз идёт дальше и называет отсутствующее запечатывание браузерного пути одним из собственных отказов.
Устранение неполадок
«Не удалось выделить ни одного прокси-подключения. Проверьте аккаунт» (Failed to provision any proxy connections)
Расширение запросило у API прокси-учётные данные, и ни одни не были выданы. Почти всегда — состояние аккаунта:
- Убедитесь, что можете войти на ur.io, и проверьте тариф. Обычная причина — исчерпанный дневной бесплатный лимит (он обновляется ежедневно).
- Проверьте, не выбран ли лимит одновременных клиентов вашего тарифа другими устройствами; отключите одно.
- Выйдите из расширения и войдите снова, чтобы обновить учётные данные.
«Соединение потеряно. Переподключитесь» (Connection lost. Please reconnect.)
Проверки здоровья сбоили раз за разом, и автоматическое переподключение исчерпало попытки. Вероятно, изменилась ваша нижележащая сеть (сменили сеть, ноутбук уснул, враждебный Wi-Fi). Переподключитесь из попапа; если повторяется в одной сети, эта сеть может блокировать прокси-порты.
Другое расширение дерётся за прокси
Управлять прокси-настройками браузера может только одно расширение за раз (в Chrome выигрывает установленное последним). Запустите другое VPN- или прокси-расширение — и они перекидывают настройку туда-сюда, и оба выглядят сломанными. Попап говорит об этом, когда теряет контроль, а chrome://settings называет текущего держателя; отключите другое. В Firefox проверьте другие установленные дополнения с разрешением на прокси.
Порталы авторизации (captive portals)
Wi-Fi отеля и аэропорта требует входа через страницу-портал до того, как заработает интернет, а с поднятым прокси (особенно взведённым) портал не может загрузиться. Застрять намертво нельзя: отключение локально и не требует сети. Отключите расширение, завершите вход на портале, затем подключитесь снова. Присуще каждому прокси и VPN, а не баг расширения.
Чтение статуса
Индикатор состояния в попапе — самая быстрая диагностика:
- Простой (Idle): вы вошли, но не подключены. Браузинг прямой.
- Подключение (Connecting) (спиннер): выделение прокси и применение настроек.
- Подключено (Connected): сконфигурировано и недавно проверено.
- Деградировано (Degraded) (значок нестабильности): сконфигурировано, но проверки здоровья сбоят; ждите переподключения, если продолжится.
- Переподключение (Reconnecting): идёт автоматическое восстановление; не мешайте.
- Ошибка (Error): одно из сообщений выше, с починкой, описанной здесь.
Куда дальше
- Начало работы в браузере: ссылки магазинов, вход и первое подключение, включая заметку о приватных окнах.
- Как работает URnetwork: сеть за попапом и откуда берутся провайдеры.
- FAQ: тарифы, лимиты и вопросы аккаунта.