Универсальное ядро

Ядро sing-box

Sing-box — универсальное сетевое ядро, которое говорит почти на всех актуальных протоколах сразу и работает одинаково на всех платформах. Именно поэтому оно стало общим знаменателем для клиентов разных разработчиков.

Обновлено

Ядро sing-box

Профиль по четырём осям

Скорость88
Незаметность92
Стабильность90
Простота настройки48

Оценки сравнительные, в пределах этой таблицы: 100 — лучший показатель среди рассмотренных протоколов, а не абсолютная величина.

Когда выбиратьSing-box подходит, когда на разных устройствах нужен один и тот же набор правил и протоколов без переписывания настроек под каждую систему.

Ключевые характеристики

Что этоУниверсальное сетевое ядро, не отдельный протокол
Год появления2022
ЯзыкGo, единая кодовая база под все платформы
ПротоколыVLESS, VMess, Trojan, Shadowsocks, WireGuard, Hysteria2, TUIC
ПлатформыWindows, macOS, Linux, Android, iOS, роутеры на OpenWrt
МаршрутизацияНаборы правил в бинарном формате, обновляются по сети
КонфигурацияJSON, версии формата помечены явно

Сильные стороны

  • Самое широкое покрытие протоколов: от WireGuard до Hysteria2 в одной программе.
  • Единый формат конфигурации на всех платформах, включая iOS и роутеры.
  • Наборы правил обновляются по сети без переустановки и без правки конфигурации вручную.
  • Версионирование формата: ядро явно сообщает, какую версию файла ожидает.
  • Стал общим знаменателем — профиль от одного клиента обычно подходит другому.

Ограничения

  • Конфигурация ещё многословнее, чем у Xray: разделы маршрутизации и резолвера легко перерастают описание соединений.
  • Универсальность даёт вес: сборка занимает 25–40 МБ против единиц мегабайт у узкоспециализированных решений.
  • Некоторые протоколы реализованы позже и полнее в родных ядрах — отставание в отдельных возможностях бывает.
  • Формат конфигурации менялся между крупными версиями, и старые профили требуют миграции.
Схема работы протокола sing-box
Как проходит соединение: от клиента до целевого сервиса
Устройство

Что отличает sing-box

Один формат на всех платформах

Конфигурация, написанная для настольной системы, работает на телефоне без правок. Это редкость: у большинства ядер платформенные сборки расходятся в деталях.

Наборы правил

Списки доменов и подсетей хранятся в компактном бинарном виде и подгружаются по сети. Файл на сто тысяч доменов занимает около 1,5 МБ и проверяется за миллисекунды.

Почти все транспорты сразу

Одно ядро умеет и VLESS с Reality, и WireGuard, и Hysteria2. Переключение между ними — вопрос выбора исходящего канала, а не установки другой программы.

Клиент и сервер в одном файле

Тот же исполняемый файл работает обеими сторонами. Для небольшой инфраструктуры это заметно упрощает сопровождение и обновления.

Универсальное ядро и что это значит на практике

Обычная ситуация до появления sing-box выглядела так: на сервере работает одно ядро, на телефоне — приложение с другим, на роутере — третье, и у каждого свой формат настроек. Перенести конфигурацию означало переписать её заново, сверяясь с документацией.

Sing-box собрал реализации почти всех актуальных транспортов в одну программу с единым форматом. Один и тот же JSON запускается на сервере, на телефоне и на роутере — различия сводятся к способу захвата трафика, который платформы предоставляют по-разному.

Отсюда и распространение. Разработчикам клиентов проще встроить готовое ядро, чем поддерживать десяток реализаций; пользователям проще, что профиль из одного приложения открывается в другом. Сетевой эффект оказался сильнее технических различий между ядрами.

Наборы правил: маршрутизация без ручных списков

Раньше списки доменов вставлялись прямо в конфигурацию. Файл на десять тысяч записей разрастался до мегабайтов текста, разбирался долго и обновлялся только руками. Sing-box заменил это наборами правил — скомпилированными бинарными файлами с доменами, подсетями и кодами стран.

Набор подключается ссылкой и обновляется по расписанию, скажем раз в сутки. Список на сто тысяч доменов занимает около 1,5 МБ, разбирается при старте за десятки миллисекунд, а проверка одного домена по нему выполняется за микросекунды.

Практический сценарий: набор российских сервисов идёт прямым маршрутом, набор рекламных доменов отбрасывается, всё остальное направляется через сервер. Списки поддерживает сообщество, и конфигурация при этом остаётся на несколько строк.

Покрытие платформ

Настольные системы получают обычный исполняемый файл без зависимостей — Go собирает всё статически. На Linux ядро запускается службой, на Windows и macOS работает внутри приложений с графическим интерфейсом.

На Android ядро упаковано в приложение и использует системный механизм VpnService. На iOS оно работает через Network Extension, и здесь у платформы жёсткий предел памяти для расширения — около 50 МБ. Ядро уложено в этот бюджет, но при сотнях правил маршрутизации запас становится тонким.

Для роутеров есть сборки под OpenWrt. Требования умеренные: устройство со 256 МБ памяти держит 300–500 Мбит/с. На совсем слабом железе разумнее взять WireGuard в ядре системы — универсальность там не окупается.

Цена универсальности

Первое, чем приходится платить, — размер. Сборка со всеми протоколами занимает 25–40 МБ, тогда как реализация одного транспорта укладывается в единицы мегабайт. Для настольной системы это неважно, для роутера с ограниченной флеш-памятью — иногда критично.

Второе — глубина реализации. Родное ядро протокола почти всегда получает новые возможности раньше: авторы Reality развивают её в Xray, авторы Hysteria — в своём проекте. Sing-box подтягивает изменения с задержкой в несколько недель, и отдельные тонкие настройки в нём бывают недоступны.

Третье — сложность конфигурации. Универсальность означает, что нельзя опираться на разумные значения по умолчанию: у каждого транспорта они свои. Рабочий файл на 200 строк здесь обычное дело, и почти всегда его генерирует клиент, а не человек.

Вопросы

Частые вопросы

Sing-box — это протокол?
Нет, это ядро: программа, которая реализует множество чужих протоколов. Правильная формулировка — «подключение по VLESS через sing-box», а не «подключение по sing-box».
Чем sing-box отличается от Xray?
Xray сосредоточен вокруг семейства VLESS и Reality и раньше получает новые возможности этого направления. Sing-box шире по охвату: он умеет ещё и WireGuard, Hysteria2, TUIC, и одинаково работает на всех платформах. Разница в скорости обычно в пределах 3–5%.
Что такое наборы правил?
Скомпилированные списки доменов и подсетей во внешних файлах. Они подключаются ссылкой и обновляются по расписанию, поэтому маршрутизацию не приходится править вручную. Набор на сто тысяч доменов весит около 1,5 МБ.
Работает ли sing-box на iPhone?
Да, через приложения с расширением Network Extension. Ограничение платформы — примерно 50 МБ памяти на расширение. Ядро в него укладывается, но при очень больших наборах правил лучше сократить их число.
Можно ли перенести конфигурацию с телефона на сервер?
Да, формат одинаковый. Меняются только разделы захвата трафика: на клиенте это виртуальный интерфейс, на сервере — прослушивание порта. Остальная часть файла, включая правила маршрутизации, переносится без правок.
Все протоколы в одном клиенте

sing-box включён во все платные тарифы

Транспорт выбирается в настройках клиента одним пунктом, доплаты за него нет. Если sing-box в вашей сети перестал подниматься, соседний протокол обычно работает — переключение занимает секунды и не требует переустановки.

Подписка оформляется в Telegram-канале сервиса · Безлимитный трафик · Поддержка круглосуточно