Unbihex 0.2.4 — VPN на Android работает в фоне, TUN не зависает. Ядро 0.1.4.
Скачать
| Файл | Для чего |
|---|---|
Unbihex-0.2.4-windows-setup.exe
| Windows 10/11 x64, установщик (ставит WebView2, если его нет) |
Unbihex-0.2.4-windows-portable.zip
| Windows 10/11 x64 без установки: распакуйте и запустите Unbihex.exe (wintun.dll должен лежать рядом)
|
Unbihex-0.2.4-android-arm64.apk
| Android 7+ на arm64 (почти все современные телефоны) |
unbihex-cli-0.2.4-linux-x86_64.tar.gz
| консольный клиент без меню для Linux x86_64 и NAS на Intel/AMD |
unbihex-cli-0.2.4-linux-aarch64.tar.gz
| консольный клиент без меню для Linux ARM64 (Raspberry Pi 4/5, ARM-серверы и NAS) |
unbihex-cli-0.2.4-linux-armv7.tar.gz
| консольный клиент без меню для 32-битных ARM (роутеры, старые Raspberry Pi) |
unbihex-cli-tui-0.2.4-linux-x86_64.tar.gz, …-aarch64, …-armv7
| тот же консольный клиент с меню на весь экран |
SHA256SUMS.txt
| контрольные суммы файлов |
Бинарники для Linux статические (musl): работают на любом дистрибутиве. Тестовый сервер test_server 0.0.1 —
в релизе 0.2.3.
Что нового
Android: VPN не отключается, если смахнуть приложение. Раньше вместе с окном завершалось всё приложение, а с
ним и VPN. Теперь, пока VPN включён, он продолжает работать, а при открытии приложение показывает его состояние.
Android: уведомление «VPN включён» с именем сервера и кнопкой «Отключить». Пока уведомление есть, система не
закрывает VPN в фоне. Его можно выключить: «Настройки → Прочее → Уведомление «VPN включён»» (по умолчанию включено),
но тогда Android на некоторых телефонах может закрыть VPN в фоне. На Android 13+ при первом подключении
приложение спросит разрешение на уведомления.
Android: туннель запускается в сетях, где закрыты 1.1.1.1 и 8.8.8.8 (issue #14, ошибка
«dns: 8.8.8.8:53: timed out»). Адреса серверов теперь узнаются через DNS телефона, а 1.1.1.1 и 8.8.8.8 —
запасной вариант.
TUN не зависает при множестве параллельных загрузок. При десятках одновременных скачиваний через TUN
соединения могли зависнуть навсегда (так было и в 0.2.3). Исправлено в userspace-стеке: потерянные пакеты
переотправляются по таймеру, пакеты не теряются при перегрузке, одно соединение не копирует лишнего. На стенде
64 параллельных скачивания проходят (в 0.2.3 зависали), скорость одного соединения — на уровне 0.2.3.
TUN на быстрых каналах: окно TCP больше 64 КБ (масштабирование окна), очередь данных от приложений ограничена
(при выгрузке быстрее канала память больше не растёт без предела).
DNS быстрее при недоступном сервере: серверы опрашиваются параллельно, потерянный запрос отправляется повторно,
первым спрашивается сервер, который ответил последним. Раньше один молчащий сервер стоил 2–5 секунд на каждый запрос.
Linux: буфер сокетов 4 МиБ ставится, только если система его допускает (net.core.rmem_max); иначе ядро Linux
подбирает размер само.
APK обновлён 31.10: после того как приложение смахивали с включённым VPN, при повторном открытии был пустой
экран. Исправлено (коммит 4c4ca84), версия та же — 0.2.4, ставится поверх.
Обновление
Android. 0.2.4 ставится поверх 0.2.0–0.2.3: ключ подписи тот же. С 0.1.0 сначала удалите старую версию.
Отпечаток сертификата (SHA-256):
58:E2:5A:AB:AA:49:F4:49:A8:93:1F:9C:65:2D:92:79:39:A5:8D:94:9C:3B:C5:2A:36:D9:2F:4C:EF:DA:EC:7B
Windows. Windows SmartScreen может предупредить о неизвестном издателе: программа пока не подписана сертификатом. Нажмите «Подробнее» → «Выполнить в любом случае».
Проверка файлов
Windows (PowerShell): Get-FileHash .\Unbihex-0.2.4-windows-setup.exe -Algorithm SHA256
Сравните с SHA256SUMS.txt.
Известные ограничения
- Сборки для iOS и macOS и графическое приложение для Linux пока не выкладываются.
- Бинарники для Linux собраны кросс-компиляцией.
- Не поддерживаются VMess, Trojan, Hysteria2, TUIC, WireGuard, Shadowsocks 2022 — такие серверы показываются серыми.
- Имя сайта в QUIC (HTTP/3) пока не определяется; браузеры в таком случае переходят на обычный HTTPS.
Автор: Crystalmasta — https://github.com/crystalmasta. Лицензия MPL-2.0.