Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Utgard Client

Инструмент выборочной сетевой маршрутизации для Windows. Направляет трафик выбранных приложений и адресов через заданный шлюз, остальное оставляет на прямом маршруте. Работает на Windows 10 и 11.


Быстрый старт

Готовые сборки — в разделе Releases. Скачайте архив, распакуйте в папку с путём, не содержащим русских символов.

  1. Запустите start-proxy.bat от имени администратора (нужно для создания сетевого интерфейса).
  2. При первом запуске ядро подтянется автоматически. Если сеть недоступна — положите sing-box.exe и libcronet.dll в sing-box\ вручную (используется версия ядра 1.13.14).
  3. [4] Профили[N] → вставьте строку подключения от владельца шлюза.
  4. [1] — старт. [3] — список адресов для маршрутизации (по одному в строке, поддомены учитываются автоматически).

[7] Проверить состояние объясняет причину, если что-то не поднялось.


Свои конфиги: маршрутизация по приложениям

Список адресов работает по хостам. Для приложений, которые ходят на плавающий набор хостов, удобнее маршрутизировать по процессу — весь трафик программы, независимо от адресов. Такие правила — отдельные файлы в sing-box\configs\, включаются в [5] Изменение конфигурации.

Имя процесса берётся в Диспетчере задач → вкладка Подробности (не «Процессы») → столбец «Имя».

По имени процесса — проще, переживает обновления программы:

{
  "route": {
    "rules": [
      {
        "process_name": ["Discord.exe", "Update.exe"],
        "action": "route",
        "outbound": "utgard"
      }
    ]
  }
}

По полному пути — когда имя неоднозначное (Update.exe, game.exe). Путь: правой кнопкой по процессу → Открыть расположение файла:

{
  "route": {
    "rules": [
      {
        "process_path": [
          "C:\\Users\\ВашПользователь\\AppData\\Local\\Discord\\app-1.0.9200\\Discord.exe"
        ],
        "action": "route",
        "outbound": "utgard"
      }
    ]
  }
}

Детали:

  • Каждый \ в пути удваивается: C:\\Users\\.... Одиночный слэш ломает JSON.
  • Путь привязан к версии — папка app-1.0.9200 меняется при обновлении, и правило по пути придётся править. По имени процесса — надёжнее.
  • "outbound": "utgard" — через шлюз, "outbound": "direct" — мимо.
  • Имя в меню берётся из названия файла: discord.json → «Discord», star-citizen.json → «Star Citizen». Дефис и подчёркивание становятся пробелами, каждое слово с заглавной.
  • Файл именуется по назначению и кладётся в sing-box\configs\ — после этого появляется в [5].

Готовый образец: sing-box\configs\example-discord.json — оба способа с пояснениями. Файлы example-* служат только образцами: в меню не показываются и не применяются. Скопируйте под своим именем без префикса и оставьте нужный блок.

Для игр учитывайте, что процессов обычно несколько (лаунчер, клиент, защита) — в правило вносится весь комплект.


Совместимость с фильтрацией трафика

Если параллельно работает система модификации трафика на стороне клиента, она может вмешиваться в соединение со шлюзом. Пункт [6] показывает адрес шлюза и куда внести его в исключения.


Полезное

  • Окно можно закрыть — маршрутизация продолжит работать. Остановить: [2] в меню, [Q] — выход с остановкой.
  • В автозапуск ничего не прописывается; после перезагрузки требуется запускать заново вручную.
  • Не открывается ресурс — проверьте, есть ли он в [3]; сайты часто тянут содержимое с соседних доменов.

Приватность

Не передавайте рабочую папку целиком: config.json, config.last-good.json и logs\ содержат учётные данные и историю. Для передачи соберите чистую копию из репозитория.


Лицензия

Utgard Client — под лицензией MIT (файл LICENSE).

Использует внешний компонент, скачиваемый при первом запуске с github.com/SagerNet/sing-box, под лицензией GPLv3. Код компонента не включается и не модифицируется. Лицензия GPLv3 распространяется только на него.

Предоставляется «как есть», без гарантий. Ответственность за законность применения — на пользователе.

About

A lightweight CLI utility for running and configuring sing-box.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages