Link 0.2.0 beta — Windows 10/11 x64

УСТАНОВКА
1. Запустите Link-0.2.0-Windows-x64-Setup.exe и подтвердите права администратора.
2. Перед первым запуском отключите другие VPN. Не запускайте два VPN одновременно.
3. В Link откройте «Настройки → Добавить подключение» и вставьте свою HTTPS-ссылку.
   Можно также импортировать JSON Happ, списки ссылок, AmneziaWG/WireGuard .conf или клиентский vpn://.
   Скопированные пробелы и невидимые символы по краям ссылки удаляются автоматически.
4. Выберите профиль на главной странице и нажмите круглую кнопку питания.
5. При активном VPN выбор другого профиля автоматически переподключит туннель.
6. Перед выходом можно нажать кнопку отключения. Закрытие окна также отключает VPN.

Portable: распакуйте ВСЮ папку Link, не извлекайте один Link.exe. Запустите Link.exe.
.NET уже включён. Интернет для установки .NET не требуется. ARM64 и Windows 7 не поддерживаются.

ОБНОВЛЕНИЯ
Link проверяет подписанный список обновлений на https://link.imnis.ru/updates.json при
запуске и каждые 6 часов, пока приложение открыто. Сайт видит IP запроса; идентификаторы
устройства, ключи и подписки не передаются. Ручная проверка находится в настройках.
Новая версия загружается в фоне в закрытую папку %PROGRAMDATA%\LinkVPN\Updates.
Перед запуском проверяются подпись ECDSA P-256/SHA-256 списка, размер и SHA-256 файла.
Перенаправления и загрузки с других доменов запрещены. Непроверенный файл не запускается.
Наибольший принятый номер сборки запоминается: старое описание не понизит обновление.
Кнопка «Установить и перезапустить» спрашивает подтверждение, отключает VPN, заменяет
приложение в той же папке и запускает Link заново. Профили и настройки сохраняются.
Windows может запросить права администратора. При ошибке загрузки текущая версия работает
дальше. Подпись списка обновлений не заменяет Authenticode-подпись приложения Windows.

СТАТУС СБОРКИ
Beta Windows. Выполнены кросс-сборка x64 и автоматические тесты парсера/компилятора.
Полный запуск интерфейса, новой службы AmneziaWG, Wintun, установки, переключения и
восстановления сети на реальной Windows требует проверки. Результаты — в BUILD-REPORT.txt.
Установщик и приложение не имеют Authenticode-подписи: Windows может показать SmartScreen.
Проверяйте источник пакета и SHA-256. Не отключайте антивирус или системную защиту.
Если корпоративные политики запрещают неподписанные приложения — передайте пакет администратору.

ПОДДЕРЖКА
VLESS: Reality, TLS, TCP/raw, WebSocket, xHTTP/splitHTTP и gRPC.
VMess, Trojan, Shadowsocks без plugins. WireGuard — один peer, без команд Pre/PostUp.
AmneziaWG 1/2 — отдельное нативное ядро; клиентский .conf или готовый профиль в vpn://.
Параметры Jc/Jmin/Jmax, S1–S4, H1–H4 и I1–I5 сохраняются. Нужен один peer.
Управляющие ключи с SSH-доступом, API/Premium-ссылки Amnezia и команды Pre/PostUp/Down
не выполняются. Для них запросите у администратора экспорт клиентского .conf.
Link Lab v2/v3, Hysteria2, TUIC и OpenVPN в этой сборке отсутствуют.
Не все произвольные Xray-конфигурации совместимы: внешние файлы и нестандартные цепочки
отклоняются. Правила маршрутизации из подписки не применяются: весь публичный трафик через
выбранный профиль. Для каскадной подписки RU/DE маршрутизация выполняется сервером.
AmneziaWG использует маршруты AllowedIPs и IP-адреса DNS из .conf; при неполном маршруте
приложение показывает «Туннель AmneziaWG запущен». Для полного IPv4-туннеля дополнительно
проверяется доступ в интернет. Обычный WireGuard через Xray использует DNS Cloudflare.

БЕЗОПАСНОСТЬ И ХРАНЕНИЕ
Профили и ссылки хранятся в %LOCALAPPDATA%\LinkVPN\profiles.dat, шифрование Windows DPAPI
для текущего пользователя. При обновлении и удалении приложения хранилище сохраняется.
Временные конфигурации существуют только в закрытой папке сессии и удаляются при завершении.
Другие приложения с правами администратора могут получить к ним доступ.
Для службы AmneziaWG исполняемые файлы и временный .conf копируются в закрытую для обычных
пользователей папку %PROGRAMDATA%\LinkVPN\Sessions; LocalSystem не запускает код из Downloads.
При аварийном завершении Xray/sing-box прекращаются через Windows Job Object. Служба
AmneziaWG наблюдает за процессом Link и останавливается при его завершении; при остановке
удаляются её маршруты/DNS/интерфейс и запись службы. Остаточные закрытые папки сессий
могут оставаться на диске. Удаляйте session-* только когда Link закрыт.
Это НЕ постоянный kill switch: после отключения VPN интернет работает напрямую.
DNS Cloudflare (DoH) и проверка cp.cloudflare.com/generate_204 идут через выбранный VPN.
Оператор выбранного сервера и поставщик DNS обрабатывают сетевые запросы по своим условиям.
Нет аналитики/рекламы/автоматической отправки журналов. HTTPS-подписки обновляются раз в час
при открытом приложении. Пароли и ключи не сохраняются в текстовых диагностических логах.
TCP-тест проверяет порт, а не реальное качество VPN; при включённом VPN он идёт через VPN.

ПЕРВЫЙ ТЕСТ НА WINDOWS
Проверьте подключение к одному профилю, доступ к сайту, внешний IP, DNS и IPv6;
затем переключите профиль, отключите VPN, проверьте обычный интернет и закройте Link.
При сбое убедитесь, что Link, xray.exe и sing-box.exe завершились. Перезагрузка Windows
восстановит сеть, если драйвер/маршруты не освободились. Сообщите версию Windows и текст
ошибки, но не присылайте публично ссылку подписки, private key или полный JSON.
Поддержка: admin@imnis.ru

КОМПОНЕНТЫ
AmneziaWG Windows e90531d15802cb976773f3b63443bc281f738ca3 + amneziawg-go/v3 v3.1.20260814 — MIT.
https://github.com/amnezia-vpn/amneziawg-windows
Изменения интеграции Link: восстановлены штатные upstream DNS и привязка UDP к физическому
интерфейсу из tunnel/, отключена запись кольцевого журнала. Патч tools/prepare-awg.py;
полные изменённые исходники — sources/amneziawg-windows-e90531d-link.tar.gz.
Xray-core v26.7.28 — MPL-2.0, https://github.com/XTLS/Xray-core/tree/v26.7.28
sing-box v1.14.2 — GPL-3.0, https://github.com/SagerNet/sing-box/tree/v1.14.2
Wintun 0.14.1 — условия распространения в licenses/Wintun-LICENSE.txt, https://www.wintun.net/
Xray и sing-box не модифицированы и запускаются отдельными процессами. AmneziaWG DLL
работает в отдельном процессе службы Windows. Лицензии — в licenses/.
Исходники Xray/sing-box с файлами модулей и инструкциями сборки — в sources/.
.NET runtime включён; уведомления — в licenses/dotnet-LICENSE.txt и dotnet-ThirdPartyNotices.txt.

СБОРКА ИЗ ИСХОДНИКОВ (macOS + Docker + NSIS)
python3 tools/icon.py   (исходная иконка из соседнего ImnisVPN; готовая app.ico включена)
bash tools/fetch.sh
bash tools/build-awg.sh
docker run --rm -v "$PWD:/src" -w /src mcr.microsoft.com/dotnet/sdk:10.0 dotnet run --project Link.Tests -- test-output
docker run --rm -v "$PWD:/src" -w /src mcr.microsoft.com/dotnet/sdk:10.0 dotnet publish Link.Windows -c Release -r win-x64 --self-contained true -o dist/Link
python3 tools/package.py
makensis installer.nsi
Готовые пакеты: dist/releases/. Исходники Link публикуются в репозитории, не на сайте загрузок.

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