Что такое Xray-core и кто его разрабатывает
Объясняем роль Xray-core в VPN-приложениях, историю Project X и участие RPRX. Как связаны ядро, VLESS и оператор сервиса и что даёт открытый код.
Редакция 2Wisp
6 мин чтения
- Опубликовано

В этой статье
В описании приложения для подключения иногда встречается фраза «работает на Xray-core». При этом на экране написано совсем другое название, подписку вы покупаете у отдельного сервиса, а профиль использует VLESS. Это не три названия одного продукта: перед вами разные части системы.
Xray-core — программное ядро, которое выполняет сетевую работу. Оно может находиться внутри приложения или работать на сервере. Чтобы понять, кто за ним стоит и насколько ему можно доверять, полезно сначала отделить ядро от интерфейса, протокола и оператора подключения.
Что означает слово core
Core переводится как «ядро». В данном случае это программа, которая принимает соединения, применяет настройки и направляет данные дальше. Привычные кнопки, список локаций и уведомления может показывать другое приложение, использующее это ядро.
Похожее разделение есть у браузеров: пользователь выбирает приложение с определённым интерфейсом, а обработкой страниц занимается встроенный движок. Знание названия движка помогает понять устройство программы, но не описывает всё, что делает её разработчик.
Xray-core может работать на стороне пользователя и на стороне сервера. Эти экземпляры не обязаны иметь одинаковые задачи: один передаёт соединение посреднику, другой принимает его и связывается с нужным ресурсом. Для совместной работы нужны согласованные параметры.
Само ядро не предоставляет вам оплаченный доступ к сети серверов. Это программный инструмент, вокруг которого другие люди создают приложения и сервисы.
Как связаны Xray-core, VLESS и VPN-сервис
Удобно разложить знакомый сценарий подключения по ролям.
| Часть системы | За что отвечает |
|---|---|
| Приложение | Показывает интерфейс, импортирует профиль, управляет подключением |
| Xray-core | Выполняет поддерживаемые сетевые механизмы и настройки |
| VLESS или другой протокол | Определяет правила обмена между сторонами |
| Сервер | Принимает соединение и передаёт трафик дальше |
| Оператор сервиса | Предоставляет доступ, обслуживает инфраструктуру и помогает пользователю |
Из этой таблицы следует полезная вещь: наличие Xray-core не говорит, кто управляет конкретным сервером. А поддержка VLESS в приложении не обязательно означает, что оно использует именно Xray-core: протокол могут реализовывать и другие программы.
Когда что-то перестаёт работать, также важно искать проблему на подходящем уровне. Ошибка входа в аккаунт сервиса, неверный профиль и сбой сетевого ядра требуют разных действий.
Откуда появился проект
Xray-core вырос из v2ray-core: разработчики создали отдельную ветвь и стали развивать её самостоятельно. Такую историю в открытом программном обеспечении называют форком. Это обычный способ продолжать работу с другими техническими приоритетами.
Официальная хроника Project X отмечает старт проекта 23 ноября 2020 года и первую версию Xray 25 ноября. Эти даты можно проверить в истории проекта.
Общее происхождение не означает полной взаимозаменяемости сегодня. Разработчики прямо предупреждают, что Xray-core долго развивается самостоятельно и не должен рассматриваться как полностью совместимая замена v2ray-core. Поэтому инструкцию для одного ядра нельзя автоматически считать подходящей для другого. Это уточнение есть на официальном сайте Project X.
Для обычного пользователя история важна прежде всего как объяснение похожих терминов и настроек. Похожесть названий не является основанием устанавливать случайное приложение вместо рекомендованного совместимого клиента.
Кто за ним стоит
Xray-core развивается в рамках Project X. Его публичный репозиторий находится в GitHub-организации XTLS. Там доступны исходный код, обсуждения, изменения и сборки. Проект публикуется под открытой лицензией Mozilla Public License 2.0, что указано в официальном репозитории.
Среди заметных публичных разработчиков — RPRX: этот аккаунт публикует выпуски Xray-core и участвует в разработке сетевых механизмов. Его роль можно увидеть по истории релизов, а не по пересказам сторонних сайтов.
Работа не сводится к одному человеку. В проект вносят код, исправления, тесты и документацию другие участники сообщества. Публичные аккаунты показывают историю участия, но не дают оснований придумывать реальные имена, работодателей или скрытую организацию за псевдонимами.
Если вы покупаете подписку у сервиса, вашим поставщиком остаётся этот сервис. Разработчики Xray-core не становятся автоматически стороной вашей покупки и не отвечают за сервер только потому, что на нём используется их программа.
Что ядро делает с трафиком
Одна из важных возможностей Xray — маршрутизация: выбор дальнейшего пути по заданным правилам. Например, разные назначения могут обрабатываться по-разному, если такую схему настроил разработчик приложения или администратор. Правила и их условия описаны в документации маршрутизации.
Ещё одна часть — работа с DNS, то есть получение адресов по доменным именам. Встроенные возможности позволяют настроить этот процесс, но наличие функции само по себе не гарантирует отсутствие утечек в конкретном приложении. Важно, как оно связывает DNS, системный трафик и маршруты. Возможности ядра перечислены в руководстве DNS.
Представьте профиль с правилом отправлять одни обращения через сервер, а другие напрямую. Если оно действует, разные сайты могут видеть разные адреса выхода. Это не обязательно ошибка ядра: сначала нужно понять, какое поведение задано конфигурацией.
Пользователю не требуется читать весь набор правил. Но полезно знать, что «ядро поддерживает функцию» и «функция правильно включена у меня» — разные утверждения.
Открытый код означает безопасность?
Открытый код позволяет изучать устройство программы, обсуждать изменения и предлагать исправления. Это создаёт возможности для проверки, которых меньше у полностью закрытой реализации.
Однако доступность исходников не доказывает отсутствие ошибок. Также она не подтверждает, что скачанное вами приложение точно собрано из нужного кода, безопасно настроено и не добавляет собственный сбор данных.
У доверия здесь несколько частей: происхождение ядра, работа разработчика приложения, настройки соединения и поведение оператора сервера. Проверять нужно ту часть, о которой сделано обещание. Утверждение о качестве открытого ядра не подтверждает политику конфиденциальности коммерческого сервиса.
Показателен вопрос журналов. В Xray предусмотрены настройки журналирования; они описаны в документации логов. Следовательно, фраза «используем Xray» сама по себе не означает «ничего не записываем». Конкретную политику определяют оператор и конфигурация.
Зачем пользователю знать версию ядра
Новые функции могут требовать обновлений на обеих сторонах соединения. Приложение с устаревшим встроенным ядром иногда не понимает профиль, который использует новые параметры.
При этом номер версии приложения и номер ядра — разные числа. Если поддержка просит их назвать, ищите раздел «О программе» или сведения о подключении. Это помогает отличить проблему совместимости от недоступности сервера.
Обычно обновлять встроенное ядро безопаснее штатным способом, предусмотренным приложением. Случайная замена файла по инструкции для другой программы может нарушить работу даже при использовании официальной сборки.
У релизов также бывают пометки о предварительном статусе. Самая свежая сборка не обязательно лучший выбор для рабочего подключения: важны рекомендации приложения и совместимость с сервисом.
Что проверить перед использованием
Убедитесь, что приложение получено из источника, на который ссылается его разработчик или ваш сервис. Профиль берите у оператора, которому доверяете, и не публикуйте данные доступа. Проверьте обычные задачи после подключения и выясните, есть ли исключения из маршрута.
Название Xray-core полезно как ответ на вопрос «какой механизм работает внутри?». Для выбора сервиса нужны и другие ответы: кто предоставляет серверы, как обрабатываются данные и куда обращаться при проблемах. Понимание этих ролей позволяет пользоваться сложной технологией без ложных ожиданий и без необходимости настраивать её с нуля.
Самостоятельно запускать сетевое ядро и обслуживать сервер необязательно: для повседневного использования VPN можно подключить устройство к 2Wisp.

