Multi-engine Android VPN & network-scanning app — Xray, AmneziaWG, Aether (MASQUE/WG/WARP-in-WARP), VPN Gate, DNS/game-latency booster, and sanction-domain routing, built with Kotlin + Jetpack Compose. | اپلیکیشن اندروید VPN و اسکنر شبکه چندموتوره
See the code
A multi-engine VPN, network-scanning, and connectivity-boosting Android app.
Developed and maintained by mlmvpn.
MLM VPN is an Android application that combines several independent
connectivity engines behind one UI: a VPN node scanner/manager, multiple
tunnel protocols, a DNS/latency "game booster" for reducing in-game ping,
and a set of specialized circumvention engines for restrictive network
environments. It is built with Kotlin and Jetpack Compose, targeting
minSdk 24 / compileSdk 34.
⚠️ This project involves network circumvention and VPN technology. Use it in compliance with the laws of your jurisdiction. The maintainers do not encourage or condone illegal use.
MLM VPN is much broader than a single-protocol VPN client — it bundles a professional-grade multi-protocol tunnel core, a full Cloudflare infrastructure control panel, a self-hosted worker/relay ecosystem, and a three-tier emergency fallback system, all in one app.
NodesTab, ScannerTab,
utils/VpnConfig, VlessXrayInjector) — full VLESS/VMess/Trojan support
with REALITY, TLS, WebSocket and gRPC transports, subscription-link
import/export, batch latency/connectivity scanning of imported nodes, and
manual node editing (AddNodeModal).VlessXrayInjectorAmneziaWgInjectorkittoku-based SoftEther/L2TP WireGuard supportengines/gst)engines/edg)core/aether) — MASQUE / WireGuard / WARP-in-WARP
censorship circumvention; see AETHER.mdengines/vpngate, SoftEther/OpenVPN)CloudTab,
data/CloudManager) — connect one or more Cloudflare accounts (email +
Global API Key or scoped API token) directly in the app and, without
touching the Cloudflare dashboard:
*.workers.dev with account
verification/quota checksengines/sanction, "DNS ضد تحریم شخصی") —
a dedicated personal DNS engine that smart-routes sanctioned/geo-restricted
services, reachable from the app's side menu.engines/mlm, assets/gst,
*_worker.js) — Google Apps Script and Cloudflare Worker source for
running your own relay/DNS infrastructure, deployed via the Cloud panel.mitm/MitmCertManager, mitm/MitmProfile,
ui/mitm/MitmSetupCard) — reaches YouTube, Instagram, WhatsApp, Facebook,
Reddit and other Fastly-hosted sites in the browser with no server or
worker in the path at all: TLS is terminated locally against an RSA-2048
root certificate the app generates on-device (raw DER/X.509, no
BouncyCastle dependency), then re-established to the real host under a
different, unblocked SNI. The certificate is per-device and never leaves
it; setup is a guided in-app card that hands the certificate to Android's
own installer (or, on Android 11+, walks the user through Settings, since
the platform no longer accepts a certificate handed in by an app).app/src/main/assets/gst/, *_worker.js)app/src/main/java/com/mlmvpn/
├── core/ # Low-level engine wrappers (aether, warp)
└── scanner/
├── data/ # Node/subscription/cloud data managers
├── engines/ # Pluggable connectivity engines (one dir each)
├── mitm/ # On-device CA + server-less domain-fronting profile
├── ui/ # Compose screens
└── utils/ # Config generators, testers, watchdogs
app/src/main/assets/ # Bundled worker scripts, geo data, sanction lists
app/src/main/jniLibs/ # Prebuilt native libraries (arm64-v8a, armeabi-v7a)
Requirements: Android Studio (recent), JDK matching the Android Gradle
Plugin used in build.gradle, Android SDK with compileSdk 34 installed.
git clone https://github.com/mlmvpn/mlmvpn_android.git
cd mlmvpn_android
./gradlew assembleDebug
The debug APK is written to app/build/outputs/apk/debug/.
Some native binaries (
.sofiles underapp/src/main/jniLibs/) and data files (geoip.dat,geosite.dat) are large and tracked with Git LFS. Install Git LFS and rungit lfs pullafter cloning if those files show up as small pointer files.
See CHANGELOG.md for the full version history (bilingual), or the
nicer-looking changelog page.
Contributions are welcome — see CONTRIBUTING.md for
project structure, coding conventions, and how to add a new engine.
This project is licensed under GNU GPLv3, plus an additional term
(permitted under GPLv3 §7) requiring attribution — see LICENSE.
This is because the project vendors GPL-3.0 source from kittoku/mvc and
shadowsocks-android, which requires the whole combined work to be GPL. In
short:
Any use, fork, or derivative of this project — source or compiled — must clearly credit the original developer, mlmvpn (https://github.com/mlmvpn), wherever the software is presented to end users (About screen, README, store listing, etc.), in addition to the standard GPLv3 obligations (source availability, same license on derivatives, etc.).
MLM VPN یک اپلیکیشن اندرویدی است که چند موتور اتصال مستقل را زیر یک
رابط کاربری واحد گرد هم میآورد: اسکنر و مدیریتکننده نودهای VPN، چند
پروتکل تونل، سیستم «بوستر بازی» برای کاهش پینگ داخل بازی از طریق DNS و
تست تأخیر، و مجموعهای از موتورهای تخصصی دورزدن محدودیت برای شبکههای
محدودشده. این پروژه با Kotlin و Jetpack Compose نوشته شده و minSdk 24 و
compileSdk 34 را هدف قرار میدهد.
⚠️ این پروژه با فناوری VPN و دورزدن محدودیتهای شبکه سروکار دارد. لطفاً مطابق قوانین کشور خود از آن استفاده کنید. توسعهدهندگان این پروژه استفاده غیرقانونی را تشویق یا تأیید نمیکنند.
MLM VPN بسیار فراتر از یک کلاینت تکپروتکلی VPN است — یک هسته حرفهای چندپروتکلی تونل، یک پنل کامل کنترل زیرساخت کلودفلر، یک اکوسیستم ورکر/رله خوداستقرار، و یک سیستم پشتیبان اضطراری سهسطحی را در یک اپ گرد هم آورده است.
NodesTab، ScannerTab،
utils/VpnConfig، VlessXrayInjector) — پشتیبانی کامل از
VLESS/VMess/Trojan با ترنسپورتهای REALITY، TLS، WebSocket و gRPC،
وارد/صادر کردن لینک اشتراک، اسکن گروهی تأخیر/اتصال نودهای واردشده، و
ویرایش دستی نود (AddNodeModal).VlessXrayInjectorAmneziaWgInjectorkittokuengines/gst)engines/edg)core/aether) — دورزدن محدودیت با MASQUE / WireGuard /
WARP-in-WARP؛ به AETHER.md مراجعه کنیدengines/vpngate، SoftEther/OpenVPN)CloudTab، data/CloudManager) —
اتصال یک یا چند حساب کلودفلر (ایمیل + Global API Key یا توکن محدودشده)
مستقیماً داخل اپ، بدون نیاز به داشبورد کلودفلر:
*.workers.dev همراه با بررسی
تأیید حساب/سقف مصرفengines/sanction، «DNS ضد تحریم
شخصی») — یک موتور DNS شخصی اختصاصی که سرویسهای تحریمشده/محدودشده
جغرافیایی را هوشمندانه مسیریابی میکند و از منوی کناری اپ در دسترس است.engines/mlm, assets/gst,
*_worker.js) — سورس Google Apps Script و Cloudflare Worker برای اجرای
زیرساخت رله/DNS اختصاصی خودتان، که از طریق پنل ابری مستقر میشود.mitm/MitmCertManager، mitm/MitmProfile،
ui/mitm/MitmSetupCard) — یوتیوب، اینستاگرام، واتساپ، فیسبوک، ردیت و
سایر سایتهای روی Fastly را داخل مرورگر باز میکند، بدون هیچ سرور یا
ورکری در مسیر: TLS بهصورت محلی با یک گواهی ریشه RSA-2048 که خود اپ روی
گوشی میسازد (DER/X.509 خام، بدون وابستگی به BouncyCastle) باز میشود و
دوباره با یک SNI متفاوت و بلاکنشده به مقصد واقعی وصل میشود. گواهی
مخصوص هر گوشی است و هیچجا ارسال نمیشود؛ راهاندازی یک کارت هدایتشده
داخل اپ است که گواهی را به نصبکنندهی خود اندروید میسپارد (یا در
اندروید ۱۱ به بالا، چون پلتفرم دیگر گواهی دادهشده توسط اپ را قبول
نمیکند، کاربر را قدمبهقدم در تنظیمات راهنمایی میکند).app/src/main/java/com/mlmvpn/
├── core/ # لایههای پایه موتورها (aether، warp)
└── scanner/
├── data/ # مدیریت داده نود/اشتراک/کلاود
├── engines/ # موتورهای اتصال قابلافزودن (هر کدام یک پوشه)
├── mitm/ # گواهی روی گوشی + پروفایل دامینفرانتینگ بدون سرور
├── ui/ # صفحات Compose
└── utils/ # تولیدکنندههای کانفیگ، تسترها، واچداگها
app/src/main/assets/ # اسکریپتهای ورکر، داده جغرافیایی، لیست تحریم
app/src/main/jniLibs/ # کتابخانههای native از پیشکامپایلشده
پیشنیازها: Android Studio (نسخه اخیر)، JDK متناظر با Android Gradle
Plugin استفادهشده در build.gradle، Android SDK با compileSdk 34 نصبشده.
git clone https://github.com/mlmvpn/mlmvpn_android.git
cd mlmvpn_android
./gradlew assembleDebug
فایل APK دیباگ در مسیر app/build/outputs/apk/debug/ تولید میشود.
برخی فایلهای باینری native (فایلهای
.soدرapp/src/main/jniLibs/) و فایلهای داده (geoip.dat،geosite.dat) حجیم هستند و با Git LFS ردیابی میشوند. پس از clone کردن، Git LFS را نصب کرده و دستورgit lfs pullرا اجرا کنید.
برای مشاهده تاریخچه کامل نسخهها (دوزبانه) به CHANGELOG.md، یا نسخه
شیک و تصویری آن مراجعه کنید.
از مشارکت شما استقبال میشود — فایل CONTRIBUTING.md
را برای آشنایی با ساختار پروژه، استانداردهای کدنویسی، و نحوه افزودن موتور
جدید مطالعه کنید.
این پروژه تحت GNU GPLv3، بههمراه یک شرط اضافه (مجاز طبق ماده §۷ خود
GPLv3) که ذکر منبع را الزامی میکند، منتشر شده است — به فایل
LICENSE مراجعه کنید. دلیلش این است که پروژه از سورس GPL-3.0
پروژههای kittoku/mvc و shadowsocks-android استفاده میکند، که طبق
GPL کل اثر ترکیبی باید GPL باشد. بهطور خلاصه:
هرگونه استفاده، فورک یا اثر مشتقشده از این پروژه — چه بهصورت سورس و چه کامپایلشده — باید هرجا که نرمافزار به کاربر نهایی نمایش داده میشود (صفحه درباره ما، README، صفحه فروشگاه و غیره) بهطور واضح توسعهدهنده اصلی، mlmvpn (https://github.com/mlmvpn)، را ذکر کند.
52 commits
Kotlin
71.2%
JavaScript
26.4%
Java
2.3%
Multi-engine Android VPN & network-scanning app — Xray, AmneziaWG, Aether (MASQUE/WG/WARP-in-WARP), VPN Gate, DNS/game-latency booster, and sanction-domain routing, built with Kotlin + Jetpack Compose. | اپلیکیشن اندروید VPN و اسکنر شبکه چندموتوره
See the code
A multi-engine VPN, network-scanning, and connectivity-boosting Android app.
Developed and maintained by mlmvpn.
MLM VPN is an Android application that combines several independent
connectivity engines behind one UI: a VPN node scanner/manager, multiple
tunnel protocols, a DNS/latency "game booster" for reducing in-game ping,
and a set of specialized circumvention engines for restrictive network
environments. It is built with Kotlin and Jetpack Compose, targeting
minSdk 24 / compileSdk 34.
⚠️ This project involves network circumvention and VPN technology. Use it in compliance with the laws of your jurisdiction. The maintainers do not encourage or condone illegal use.
MLM VPN is much broader than a single-protocol VPN client — it bundles a professional-grade multi-protocol tunnel core, a full Cloudflare infrastructure control panel, a self-hosted worker/relay ecosystem, and a three-tier emergency fallback system, all in one app.
NodesTab, ScannerTab,
utils/VpnConfig, VlessXrayInjector) — full VLESS/VMess/Trojan support
with REALITY, TLS, WebSocket and gRPC transports, subscription-link
import/export, batch latency/connectivity scanning of imported nodes, and
manual node editing (AddNodeModal).VlessXrayInjectorAmneziaWgInjectorkittoku-based SoftEther/L2TP WireGuard supportengines/gst)engines/edg)core/aether) — MASQUE / WireGuard / WARP-in-WARP
censorship circumvention; see AETHER.mdengines/vpngate, SoftEther/OpenVPN)CloudTab,
data/CloudManager) — connect one or more Cloudflare accounts (email +
Global API Key or scoped API token) directly in the app and, without
touching the Cloudflare dashboard:
*.workers.dev with account
verification/quota checksengines/sanction, "DNS ضد تحریم شخصی") —
a dedicated personal DNS engine that smart-routes sanctioned/geo-restricted
services, reachable from the app's side menu.engines/mlm, assets/gst,
*_worker.js) — Google Apps Script and Cloudflare Worker source for
running your own relay/DNS infrastructure, deployed via the Cloud panel.mitm/MitmCertManager, mitm/MitmProfile,
ui/mitm/MitmSetupCard) — reaches YouTube, Instagram, WhatsApp, Facebook,
Reddit and other Fastly-hosted sites in the browser with no server or
worker in the path at all: TLS is terminated locally against an RSA-2048
root certificate the app generates on-device (raw DER/X.509, no
BouncyCastle dependency), then re-established to the real host under a
different, unblocked SNI. The certificate is per-device and never leaves
it; setup is a guided in-app card that hands the certificate to Android's
own installer (or, on Android 11+, walks the user through Settings, since
the platform no longer accepts a certificate handed in by an app).app/src/main/assets/gst/, *_worker.js)app/src/main/java/com/mlmvpn/
├── core/ # Low-level engine wrappers (aether, warp)
└── scanner/
├── data/ # Node/subscription/cloud data managers
├── engines/ # Pluggable connectivity engines (one dir each)
├── mitm/ # On-device CA + server-less domain-fronting profile
├── ui/ # Compose screens
└── utils/ # Config generators, testers, watchdogs
app/src/main/assets/ # Bundled worker scripts, geo data, sanction lists
app/src/main/jniLibs/ # Prebuilt native libraries (arm64-v8a, armeabi-v7a)
Requirements: Android Studio (recent), JDK matching the Android Gradle
Plugin used in build.gradle, Android SDK with compileSdk 34 installed.
git clone https://github.com/mlmvpn/mlmvpn_android.git
cd mlmvpn_android
./gradlew assembleDebug
The debug APK is written to app/build/outputs/apk/debug/.
Some native binaries (
.sofiles underapp/src/main/jniLibs/) and data files (geoip.dat,geosite.dat) are large and tracked with Git LFS. Install Git LFS and rungit lfs pullafter cloning if those files show up as small pointer files.
See CHANGELOG.md for the full version history (bilingual), or the
nicer-looking changelog page.
Contributions are welcome — see CONTRIBUTING.md for
project structure, coding conventions, and how to add a new engine.
This project is licensed under GNU GPLv3, plus an additional term
(permitted under GPLv3 §7) requiring attribution — see LICENSE.
This is because the project vendors GPL-3.0 source from kittoku/mvc and
shadowsocks-android, which requires the whole combined work to be GPL. In
short:
Any use, fork, or derivative of this project — source or compiled — must clearly credit the original developer, mlmvpn (https://github.com/mlmvpn), wherever the software is presented to end users (About screen, README, store listing, etc.), in addition to the standard GPLv3 obligations (source availability, same license on derivatives, etc.).
MLM VPN یک اپلیکیشن اندرویدی است که چند موتور اتصال مستقل را زیر یک
رابط کاربری واحد گرد هم میآورد: اسکنر و مدیریتکننده نودهای VPN، چند
پروتکل تونل، سیستم «بوستر بازی» برای کاهش پینگ داخل بازی از طریق DNS و
تست تأخیر، و مجموعهای از موتورهای تخصصی دورزدن محدودیت برای شبکههای
محدودشده. این پروژه با Kotlin و Jetpack Compose نوشته شده و minSdk 24 و
compileSdk 34 را هدف قرار میدهد.
⚠️ این پروژه با فناوری VPN و دورزدن محدودیتهای شبکه سروکار دارد. لطفاً مطابق قوانین کشور خود از آن استفاده کنید. توسعهدهندگان این پروژه استفاده غیرقانونی را تشویق یا تأیید نمیکنند.
MLM VPN بسیار فراتر از یک کلاینت تکپروتکلی VPN است — یک هسته حرفهای چندپروتکلی تونل، یک پنل کامل کنترل زیرساخت کلودفلر، یک اکوسیستم ورکر/رله خوداستقرار، و یک سیستم پشتیبان اضطراری سهسطحی را در یک اپ گرد هم آورده است.
NodesTab، ScannerTab،
utils/VpnConfig، VlessXrayInjector) — پشتیبانی کامل از
VLESS/VMess/Trojan با ترنسپورتهای REALITY، TLS، WebSocket و gRPC،
وارد/صادر کردن لینک اشتراک، اسکن گروهی تأخیر/اتصال نودهای واردشده، و
ویرایش دستی نود (AddNodeModal).VlessXrayInjectorAmneziaWgInjectorkittokuengines/gst)engines/edg)core/aether) — دورزدن محدودیت با MASQUE / WireGuard /
WARP-in-WARP؛ به AETHER.md مراجعه کنیدengines/vpngate، SoftEther/OpenVPN)CloudTab، data/CloudManager) —
اتصال یک یا چند حساب کلودفلر (ایمیل + Global API Key یا توکن محدودشده)
مستقیماً داخل اپ، بدون نیاز به داشبورد کلودفلر:
*.workers.dev همراه با بررسی
تأیید حساب/سقف مصرفengines/sanction، «DNS ضد تحریم
شخصی») — یک موتور DNS شخصی اختصاصی که سرویسهای تحریمشده/محدودشده
جغرافیایی را هوشمندانه مسیریابی میکند و از منوی کناری اپ در دسترس است.engines/mlm, assets/gst,
*_worker.js) — سورس Google Apps Script و Cloudflare Worker برای اجرای
زیرساخت رله/DNS اختصاصی خودتان، که از طریق پنل ابری مستقر میشود.mitm/MitmCertManager، mitm/MitmProfile،
ui/mitm/MitmSetupCard) — یوتیوب، اینستاگرام، واتساپ، فیسبوک، ردیت و
سایر سایتهای روی Fastly را داخل مرورگر باز میکند، بدون هیچ سرور یا
ورکری در مسیر: TLS بهصورت محلی با یک گواهی ریشه RSA-2048 که خود اپ روی
گوشی میسازد (DER/X.509 خام، بدون وابستگی به BouncyCastle) باز میشود و
دوباره با یک SNI متفاوت و بلاکنشده به مقصد واقعی وصل میشود. گواهی
مخصوص هر گوشی است و هیچجا ارسال نمیشود؛ راهاندازی یک کارت هدایتشده
داخل اپ است که گواهی را به نصبکنندهی خود اندروید میسپارد (یا در
اندروید ۱۱ به بالا، چون پلتفرم دیگر گواهی دادهشده توسط اپ را قبول
نمیکند، کاربر را قدمبهقدم در تنظیمات راهنمایی میکند).app/src/main/java/com/mlmvpn/
├── core/ # لایههای پایه موتورها (aether، warp)
└── scanner/
├── data/ # مدیریت داده نود/اشتراک/کلاود
├── engines/ # موتورهای اتصال قابلافزودن (هر کدام یک پوشه)
├── mitm/ # گواهی روی گوشی + پروفایل دامینفرانتینگ بدون سرور
├── ui/ # صفحات Compose
└── utils/ # تولیدکنندههای کانفیگ، تسترها، واچداگها
app/src/main/assets/ # اسکریپتهای ورکر، داده جغرافیایی، لیست تحریم
app/src/main/jniLibs/ # کتابخانههای native از پیشکامپایلشده
پیشنیازها: Android Studio (نسخه اخیر)، JDK متناظر با Android Gradle
Plugin استفادهشده در build.gradle، Android SDK با compileSdk 34 نصبشده.
git clone https://github.com/mlmvpn/mlmvpn_android.git
cd mlmvpn_android
./gradlew assembleDebug
فایل APK دیباگ در مسیر app/build/outputs/apk/debug/ تولید میشود.
برخی فایلهای باینری native (فایلهای
.soدرapp/src/main/jniLibs/) و فایلهای داده (geoip.dat،geosite.dat) حجیم هستند و با Git LFS ردیابی میشوند. پس از clone کردن، Git LFS را نصب کرده و دستورgit lfs pullرا اجرا کنید.
برای مشاهده تاریخچه کامل نسخهها (دوزبانه) به CHANGELOG.md، یا نسخه
شیک و تصویری آن مراجعه کنید.
از مشارکت شما استقبال میشود — فایل CONTRIBUTING.md
را برای آشنایی با ساختار پروژه، استانداردهای کدنویسی، و نحوه افزودن موتور
جدید مطالعه کنید.
این پروژه تحت GNU GPLv3، بههمراه یک شرط اضافه (مجاز طبق ماده §۷ خود
GPLv3) که ذکر منبع را الزامی میکند، منتشر شده است — به فایل
LICENSE مراجعه کنید. دلیلش این است که پروژه از سورس GPL-3.0
پروژههای kittoku/mvc و shadowsocks-android استفاده میکند، که طبق
GPL کل اثر ترکیبی باید GPL باشد. بهطور خلاصه:
هرگونه استفاده، فورک یا اثر مشتقشده از این پروژه — چه بهصورت سورس و چه کامپایلشده — باید هرجا که نرمافزار به کاربر نهایی نمایش داده میشود (صفحه درباره ما، README، صفحه فروشگاه و غیره) بهطور واضح توسعهدهنده اصلی، mlmvpn (https://github.com/mlmvpn)، را ذکر کند.
52 commits
Kotlin
71.2%
JavaScript
26.4%
Java
2.3%