Skip to content

Latest commit

 

History

History
196 lines (152 loc) · 17.3 KB

File metadata and controls

196 lines (152 loc) · 17.3 KB

v2rayN

English | Русский | 中文

GUI-клиент для Windows, Linux и macOS. Поддерживает Xray, sing-box и другие ядра

CodeFactor Release Downloads Telegram

Windows Linux macOS GPG Signed


Об этом форке

v2rayN-RU — форк v2rayN с дополнительными возможностями:

  • Поддержка HWID клиента — при обновлении подписок клиент отправляет Happ-совместимые HWID-заголовки (x-hwid, x-device-os, x-ver-os, x-device-locale), совместимые с Remnawave Panel v2.9.0+. Это позволяет использовать подписки, требующие авторизации по аппаратному идентификатору устройства.
  • Полная поддержка конфигураций .json — импорт и запуск произвольных пользовательских .json-конфигураций ядра как есть.

Загрузка

Скачать последнюю версию можно здесь:

https://github.com/h1w/v2rayN-RU/releases

Tip

v2rayN — версия для ПК. Мобильную версию смотрите в v2rayNG

https://github.com/2dust/v2rayNG

Для локальной переносимой Windows x64 сборки установите .NET 10 SDK и выполните powershell -NoProfile -ExecutionPolicy Bypass -File .\build-windows.ps1 из корня репозитория. Скрипт публикует приложение и AmazTool, копирует ядра из локальной папки bin в publish\win-x64. Ядра Xray и sing-box должны уже находиться в bin. Пользовательские настройки не копируются и не удаляются.


Документация

Руководства по использованию и настройке смотрите в Wiki.

https://github.com/2dust/v2rayN/wiki

В Rule Settings галочка в первом столбце и переключатель в редакторе правила отражают одно состояние: редактор открывается с текущим значением галочки, а подтверждённое изменение переключателя обновляет список. Отмена редактирования не меняет состояние правила. Для сохранения изменений нажмите кнопку сохранения в окне Rule Settings. При обновлении JSON-подписки сохранённый порядок JSON-правил относительно локальных и их состояние включения переносятся на соответствующий обновлённый профиль. Состояние сохраняется и при временно выключенной настройке редактирования JSON-правил.

При включённых TUN и Legacy TUN Protect для управляемого Custom Xray вспомогательный sing-box создаётся автоматически, даже если Socks port пуст. Он принимает TUN и подключения к локальному mixed-порту приложения, а основной Xray получает отдельный внутренний SOCKS-порт на loopback. Этот порт выбирается при запуске и не сохраняется в подписку: сброс поля при обновлении подписки не отключает Legacy TUN. Общая маршрутизация по назначениям остаётся в основном ядре. Для локальных правил процессов sing-box определяет только имя/путь процесса и передаёт соединение на соответствующий внутренний вход Xray. Xray применяет исходный порядок JSON- и локальных правил, включая условия домена, IP, порта и протокола; раннее доменное правило не теряет приоритет перед поздним правилом процесса. Совпадающие наборы процессных правил используют один вход, а неизвестные процессы — обычный вход без процессных правил. Эти входы учитываются в общей статистике один раз; дополнительный профиль учитывается по точному выбранному выходу основного Xray. Без sing-box-помощника запуск общей Custom-маршрутизации с процессными правилами отклоняется, а не передаёт Xray неподдерживаемый предикат process. Для остальных неуправляемых Custom-конфигураций сохраняется прежняя ручная настройка порта.

Для управляемых Custom-конфигураций в TUN транспортные адреса поддерживаемых outbound-серверов защищаются точными парами «адрес + порт»: вспомогательный sing-box направляет их напрямую даже при недоступном определении процесса. Явные цепочки dialerProxy, proxySettings и detour учитываются; весь порт или весь IP целиком не исключается. Другие приложения, обращающиеся к той же точной паре, также используют прямой выход. Для доменов используется обратное сопоставление DNS-ответов, наблюдаемых sing-box: старый внешний DNS-кеш и сторонний зашифрованный DNS не гарантируют такое сопоставление. Для динамических SRV/TXT-адресов и неподдерживаемых схем остаётся защита по процессу.

При работе основного Xray со вспомогательным sing-box вкладка Proxies показывает outbound'ы и балансировщики из итогового запущенного JSON: теги, протоколы, адреса, принадлежность балансировщикам и явно заданные цепочки. Для точного совпадения адреса и порта с соединением sing-box показываются число соединений, суммарные байты сейчас открытых соединений и скорость между опросами. Это транспортные показатели, а не накопленная статистика пользовательских запросов. Общие для нескольких outbound'ов адреса помечаются неоднозначными, их трафик не приписывается каждому прокси повторно. Домены сопоставляются с доменом из метаданных; отдельный DNS-поиск и догадки по SNI не выполняются. Неподдерживаемые схемы остаются в списке без выдуманных показателей.

Во вкладке Connections к маршруту добавляются совпавшие теги Xray; фильтр ищет по назначению, имени прокси, имени и полному пути процесса без учёта регистра. Закрытие соединений работает через sing-box. Это не устанавливает связь между отдельным запросом к сайту и выбором outbound внутри Xray. При смене/остановке ядра сведения сбрасываются. Для основного sing-box/mihomo сохраняются прежние нативные вкладки. Управление режимом, выбором прокси и проверкой задержки вспомогательного SOCKS в режиме Xray скрыто.

В Proxies доступны поиск по имени/адресу/балансировщику и фильтр соединений; столбцы балансировщиков, отправленных/принятых байтов и обеих скоростей сохранены. Служебные выходы вынесены в сворачиваемую секцию, цепочки и пояснения — в сведения выбранной строки. В Connections доступны категории «Все», «Пользовательские», «К прокси» и короткие маршруты вместо внутренних правил; исходное правило, тип и сеть доступны в подробностях. Нераспознанные соединения остаются в «Все». Клик по имени процесса копирует полный путь и показывает уведомление только после успешной записи в буфер обмена. При неизвестном пути отображается прочерк, копирование недоступно. Обновление сохраняет существующие строки и выделение, не пересоздавая таблицу целиком.

В основном списке после задержки и тестовой скорости расположены ↓ Получено, ↑ Отправлено, ↓ Сейчас, ↑ Сейчас. Накопленные значения сохраняются в базе профилей; текущие скорости показываются одновременно для основного и дополнительных профилей правил. При остановке или недоступных счётчиках ячейки скоростей пустые; известный нулевой трафик показывается как 0 B/s. Учёт работает независимо от открытых вкладок, свёрнутого окна и старых переключателей отображения статистики. Эти переключатели управляют только дополнительными суточными столбцами и строкой состояния; накопление и четыре основных столбца работают постоянно. Во вкладке Proxies скорости Xray обновляются примерно раз в секунду при включённом автообновлении, независимо от интервала обновления нативного списка. Запросы выполняются последовательно, без очереди параллельных обновлений.

Для Xray считываются суммарные счётчики пользовательских входов основного ядра: вспомогательный sing-box и внутренний повторный вход маршрутизации не суммируются. Это трафик профиля, включая прямые выходы через основное ядро, а не счётчик оплаченного трафика провайдера. Для основного sing-box/mihomo используются накопительные счётчики Clash API. У sing-box с внутренней петлёй общей маршрутизации точный учёт недоступен: сохраняются прежние итоги и пустые ячейки скоростей вместо двойного подсчёта. Исторические значения старой версии сохраняются без пересчёта.

Дополнительные профили Xray учитываются по точным тегам сгенерированных выходов, с привязкой к исходному профилю и подписке, включая SOCKS-переход к Custom-ядру. Несколько правил одного профиля не создают повторного учёта. Их итоги уже входят в общий итог основного профиля: складывать основную строку с дополнительными нельзя. Когда правила процессов выполняет вспомогательный sing-box перед основным Xray, выбранный дополнительный выход передаётся через отдельный локальный SOCKS-вход основного ядра. Этот вход ведёт сразу к выбранному выходу или балансировщику, без повторного применения обычных правил Xray. Определение процесса остаётся в sing-box; счётчики Xray учитывают и основной поток, и разбивку дополнительных профилей. Доменные и процессные правила одной цели используют общую границу учёта. Для основного sing-box отдельные Custom-ядра учитываются при наличии собственных счётчиков; для встроенных дополнительных выходов Clash API не даёт точных накопительных счётчиков, поэтому их скорости остаются пустыми, а прошлые итоги сохраняются.

Повторяющиеся сообщения connection download closed: close tcp …: endpoint not connected в обычном журнале сворачиваются в информационный счётчик не чаще раза в 30 секунд. Исходные строки сохраняются в диагностическом журнале guiLogs. Непустой фильтр сообщений (например, endpoint not connected) показывает новые исходные строки; уже свёрнутые строки в окно не возвращаются. При отключённом диагностическом логировании сворачивание отключается, чтобы не терять сообщения. Ошибки подключения, TLS, тайм-ауты и другие ошибки не скрываются.


Поддерживаемые платформы

Платформа x64 x86 arm64 riscv64 loong64
Windows ✅ ✅ ✅ - -
Linux ✅ - ✅ ✅ ✅
macOS ✅ - ✅ - -

Проверка подписи GPG

Файлы релизов подписаны с помощью GPG для проверки подлинности и целостности — это помогает предотвратить подмену со стороны зеркал, интернет-провайдера или CDN.

Отпечаток ключа

ECF0 C3FB E838 19F6 6D5D
0989 C946 B144 9B53 7603

Сообщество

Telegram-группа:

https://t.me/v2rayN

Telegram-канал:

https://t.me/github_2dust