Sing-box туннели
Sing-box туннели в awg-manager создаются по share-ссылкам прокси-протоколов (vless://, hysteria2:// и другие — полный список см. в подсказке окна Один сервер) и живут отдельно от AmneziaWG-туннелей. Карточки sing-box-туннелей доступны на главной странице на втором табе — параллельно с AWG, а не вместо него.
Когда нужен sing-box
Sing-box нужен, когда провайдер выдаёт ссылку формата, который не поддерживает AmneziaWG. Импорт принимает по одной ссылке на строке, каждая ссылка превращается в отдельный туннель.
Актуальный список поддерживаемых схем (vless://, hysteria2:// и другие) приведён в подсказке окна Один сервер — она же служит источником правды, если в будущих версиях awg-manager список изменится. Среди возможностей: маскировка под TLS (Reality), разные транспорты (TCP / WebSocket / gRPC / HTTP/2), UDP/QUIC-туннели.
Несколько ссылок в один заход — каждая на своей строке. Пустые строки и строки, начинающиеся с #, пропускаются. Ссылки vmess:// парсер распознаёт, но осознанно не импортирует.
Где находится в UI
На главной странице (/) сверху появляется чип-таб Sing-box туннели — рядом с AWG и Sing-box подписки. Бэйдж рядом с названием показывает количество созданных sing-box-туннелей. Таб виден начиная с уровня использования Расширенный (advanced) — на Базовом он скрыт вместе со всем разделом Sing-box (см. Настройки).
Если sing-box ещё не установлен, на табе показывается баннер с кнопкой Установить (поверх банера видны фазы скачивания и установки). Подробности про установку — на странице Sing-box.

Импорт ссылок
На пустом табе показаны три плитки выбора способа:
- Один сервер — мастер на один share-link или несколько ссылок с индивидуальными Proxy в UI роутера.
- Группа серверов — несколько ссылок одной группой с общим Proxy NDMS: ручной выбор или автовыбор по скорости.
- Подписка по URL — внешняя подписка провайдера (см. Sing-box подписки).
Для быстрого импорта одного или нескольких отдельных серверов есть отдельная страница Новый Sing-box туннель (/singbox/new): большое поле для вставки ссылок, статусная строка сверху (sing-box · vX.Y.Z · работает · pid N) и кнопка импортировать ссылки. После успешного импорта показывается итог “Импортировано: N” и (если были ошибки) список ошибок с номерами строк, после чего страница уводит обратно на главную с открытым табом Sing-box.

Карточка туннеля
Карточка sing-box-туннеля плотнее AmneziaWG-карточки и показывает:
- Tag туннеля (заголовок) — берётся из фрагмента ссылки (
#Germany) или генерируется автоматически. - Имя Proxy-интерфейса NDMS и kernel-интерфейс (например,
t2s0). - Бейджи протокола и транспорта —
VLESS/Hysteria2/NaiveProxy, дополнительноRealityилиTLS, плюс тип транспорта (TCP/WS/GRPC/H2). - Сервер и порт — скрыты под “глазом”, раскрываются по клику.
- SNI (для VLESS/Hysteria2) или Логин (для NaiveProxy).
- Delay (5 мин) — sparkline по последним проверкам задержки, индикатор-светодиод (
ok/slow/fail/stopped) и кнопка ручного обновления. Пороги: до 200 мс — зелёный, 200–500 мс — жёлтый, два таймаута подряд — красный. - Трафик — RX/TX с накопительными счётчиками и mini-графиком.
Кнопки внизу карточки: Тест скорости (доступна, только если есть kernel-интерфейс), Изменить и Удалить.

Редактирование
Кнопка Изменить ведёт на страницу /singbox/<tag>. В отличие от AmneziaWG, здесь нет вкладок — это плоская форма с секциями, специфичными для протокола:
- Основные параметры —
Сервер,Порт(для всех протоколов). - VLESS —
UUID,Flow; секция TLS —SNI,Fingerprint(chrome/firefox/safari/edge); если включён Reality —Public KeyиShort ID. Параметры транспорта (gRPC service name,WebSocket path/Host header/Early Data) показываются как поля, относящиеся к импортированной ссылке. - Hysteria2 —
Пароль; секция TLS —SNIи чекбоксInsecure(пропустить проверку сертификата). - NaiveProxy —
ПользовательиПароль.
Кнопка Сохранить обновляет outbound в config.d/10-tunnels.json и уводит обратно на главную. WS-транспорт показывается read-only — параметры импортируются из ссылки и не редактируются вручную.

Тест скорости
Кнопка Тест скорости на карточке открывает модалку, которая запускает iperf3 через kernel-интерфейс туннеля. Доступна только когда у туннеля есть kernel-интерфейс (например, t2s0).
В модалке выбирается публичный iperf3-сервер из списка (его подгружает backend), затем кнопкой Запустить последовательно идут три фазы: Пинг → Загрузка → Отдача. Каждая активная фаза занимает 10 секунд, прогресс отображается секунда за секундой, текущая скорость — на стрелочном спидометре. По окончании теста сохраняются итоговые цифры DOWNLOAD / UPLOAD в Mbps. Тест можно отменить кнопкой Отмена — процесс iperf3 на backend убивается через context cancel.

Удаление
Кнопка Удалить на карточке → подтверждение. При удалении из конфигурации sing-box убирается inbound, outbound и route-rule с этим tag’ом, а из NDMS — связанный Proxy-интерфейс. Если это был последний туннель — процесс sing-box останавливается, файл config.d/10-tunnels.json стирается.