sing-box простыми словами: универсальное ядро прокси

· Антон Беляев

sing-box — это универсальная платформа для прокси и VPN, написанная на Go. Один бинарник умеет работать и сервером, и клиентом, и поддерживает почти все актуальные протоколы: VLESS, VMess, Shadowsocks, Trojan, Hysteria/Hysteria2, TUIC, WireGuard, ShadowTLS, плюс встроенные DNS-резолверы и сложную маршрутизацию.

Зачем оно нужно: вместо того чтобы держать на телефоне отдельный клиент под WireGuard, отдельный под VLESS и третий под Hysteria, вы ставите один универсальный — sing-box или построенный на нём GUI (Hiddify, NekoBox, sing-box for Apple). Все ваши подписки и конфиги работают в одном месте.

Ниже разберём, что это за «ядро», какие протоколы оно покрывает и чем оно отличается от родственного Xray-core.

Коротко

  • sing-box — кроссплатформенное ядро для прокси и VPN на Go, один бинарник.
  • Поддерживает VLESS, VMess, Shadowsocks, Trojan, Hysteria/Hysteria2, TUIC, WireGuard, ShadowTLS.
  • Работает и клиентом, и сервером — можно поднять свой узел из того же файла.
  • Используется внутри Hiddify, NekoBox, sing-box for iOS/macOS.
  • Конкурент и одновременно родственник Xray-core: своя архитектура, регулярные апдейты.
  • Универсальная маршрутизация: по доменам, IP, ASN, GeoIP, через rule-set.

Что внутри sing-box

Технически sing-box — это набор модулей, склеенных в один процесс. На вход подаётся JSON-конфиг с inbounds (как принимать трафик), outbounds (куда его отдавать) и route (правила маршрутизации). Дальше ядро само разруливает, какой пакет в какой туннель отправить.

Какие протоколы поддерживает

Из коробки идут все массовые современные протоколы: VLESS (включая REALITY и XTLS-Vision), VMess, Trojan, Shadowsocks с AEAD и Shadowsocks-2022, Hysteria первой и второй версии, TUIC v5, WireGuard, ShadowTLS v1/v2/v3. Полный список и состояние поддержки — в репозитории sagernet/sing-box.

Один бинарник — клиент и сервер

В отличие от классической схемы «клиент тут, сервер там», в sing-box роль определяется конфигом. Один и тот же бинарник можно запустить на VPS как сервер, а на ноутбуке как клиент. Это удобно: одна документация, одна логика, нет «версионного зоопарка».

Маршрутизация и DNS

sing-box умеет фильтровать трафик до того, как он попадёт в туннель: можно отправить российские сайты напрямую, западные через REALITY, торренты через WireGuard. Встроенный DNS поддерживает fakeip, DoH/DoT, разные резолверы для разных правил.

Зачем «нативный» GUI

Сам бинарник sing-box запускается из консоли. Для обычного пользователя удобнее обёртки: Hiddify, NekoBox, sing-box for Apple. Все они под капотом запускают то же ядро, но добавляют импорт подписок, кнопки переключения, виджет статуса.

Что может сломаться при работе с sing-box

СимптомВозможная причинаЧто проверить
Клиент пишет «config parse error»Опечатка в JSON, отсутствует обязательное полеПроверить конфиг линтером, посмотреть changelog по версии
Подключение есть, но сайты не открываютсяDNS уходит мимо туннеляВключить fakeip, проверить блок dns в конфиге
Часть сайтов идёт напрямуюСработали routing rules с geoip ruПроверить порядок правил в route → rules
Через сутки клиент молча отвалилсяПротух VMess/VLESS токен или ключПеревыпустить ключ, обновить подписку
На iOS клиент работает, на Android нетРазная версия ядра внутри обёртокСверить версию sing-box в About
Слишком высокий пингЯдро тут ни при чём — далёкий серверСменить VPS на ближе к РФ географически

Как проверить прямо сейчас

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

Freedom Checker собирает данные о доступности популярных протоколов по операторам и регионам. Если вы видите массовые проверки «у всех vless+reality не отвечает у одного оператора» — дело не в вашем клиенте.

Проверить доступность через Freedom Checker

Сбой или блокировка?

Сбой sing-box обычно проявляется одинаково на всех протоколах сразу: клиент не стартует, краш на запуске, общая ошибка конфига. Это история про обновление приложения или битый JSON.

Блокировка ведёт себя точечно: один протокол не работает, другой — да; один сервер не отвечает, другой — отвечает. В sing-box удобно проверить это за минуту: добавить альтернативный outbound и переключить активный конфиг. Если альтернатива идёт, дело не в ядре, а в фильтрации конкретного потока.

На что обратить внимание

  • Следите за версией: новые DPI-эвристики часто появляются раньше, чем апдейт ядра.
  • Держите 2 outbound разных протоколов, чтобы быстро переключаться при отвалах.
  • Включайте TUN-режим (system proxy) только если уверены — иначе трафик идёт мимо.
  • Логи sing-box в режиме debug дают понятный отчёт о handshake.
  • Подписки лучше брать с обновляемых URL, не одноразовые статические файлы.
  • При смене ядра на новую мажорную версию читайте migration guide — формат JSON меняется.
  • На сервере sing-box удобен тем, что один процесс может слушать VLESS+REALITY и Hysteria2 одновременно.

Вывод

sing-box — это «универсальный пульт» для современных прокси и VPN. Он не делает того, чего не умеют Xray или WireGuard по отдельности, но объединяет это в один клиент и одну логику маршрутизации. Для пользователя, у которого 3–4 разных конфига от разных сервисов, это огромное упрощение жизни.

Если вы только начинаете разбираться, проще взять GUI на ядре sing-box (Hiddify или sing-box for Apple) и пользоваться им как обычным VPN-клиентом — без редактирования JSON.

Проверить сейчас