Co-authored-by: Cursor <cursoragent@cursor.com>
16 KiB
TunnelX
فارسی | English | Русский | 简体中文
TunnelX یک نرمافزار آزاد و رایگان برای ویندوز است که توسط MaxFan ساخته شده و برای مدیریت تونل، ویپیان و Split Tunneling استفاده میشود. این برنامه میتواند ترافیک برنامههای انتخابشده، مقصدهای مشخص، یا کل سیستم را از تونل عبور دهد و همزمان مسیر عادی شبکه را برای مقصدهای محلی یا مستثنیشده حفظ کند.
کاربرد برنامه
TunnelX برای زمانی ساخته شده که کاربر نمیخواهد تمام ترافیک سیستم از ویپیان عبور کند. با این برنامه میتوان فقط برنامههایی مثل مرورگر، تلگرام، ابزارهای توسعه یا برنامههای مشخص دیگر را وارد تونل کرد و بقیه ترافیک سیستم را روی اینترنت عادی نگه داشت. همچنین در صورت نیاز، حالت Full-route برای عبور کل سیستم از تونل در دسترس است.
قابلیتها
- Split tunneling بر اساس برنامههای انتخابشده در ویندوز
- حالت Full-route برای تونل کردن کل سیستم
- پشتیبانی از پروفایلهای L2TP/IPsec ویندوز
- پشتیبانی از جریانهای V2Ray بر پایه Xray-core و sing-box
- پشتیبانی از پروفایلهای اختصاصی SOCKS5/HTTP Proxy با سرور، پورت، نام کاربری و رمز عبور جداگانه
- پشتیبانی از OpenVPN Community با فایلهای
.ovpnبرای Split tunneling برنامههای انتخابشده - پروکسی SOCKS5 محلی روی
127.0.0.1برای ابزارهایی که تنظیم پروکسی داخلی دارند - تغییر مسیر DNS، مسدودسازی IPv6، محافظ نشت، عیبیابی route و تاریخچه مصرف تونل
- مدیریت چند پروفایل، کپی/ویرایش کانفیگها، تست سرور، تشخیص IP خروجی و اعلان بروزرسانی
- رابط کاربری فارسیمحور برای ویندوز
شروع سریع
- آخرین فایل standalone را از بخش GitHub Releases دانلود کنید.
- برنامه را با دسترسی Administrator اجرا کنید؛ قابلیتهای تغییر مسیر، WinDivert و مدیریت ترافیک به سطح دسترسی بالا نیاز دارند.
- از تب اتصال، یک کانفیگ جدید بسازید یا کانفیگ موجود را انتخاب کنید.
- نوع اتصال را انتخاب کنید: L2TP/IPsec، V2Ray/Xray، SOCKS5/HTTP Proxy یا OpenVPN.
- قبل از اتصال، تست سرور را اجرا کنید و سپس برنامههایی را که باید از تونل عبور کنند در تب برنامهها فعال کنید.
- در صورت نیاز، مقصدهای لزومی یا استثنا را اضافه کنید و بعد از اتصال کارت سلامت ترافیک، DNS، IPv6 و Route را بررسی کنید.
انواع اتصال
L2TP/IPsec
برای اتصالهای L2TP/IPsec، آدرس سرور، نام کاربری، رمز عبور و Pre-Shared Key را وارد کنید. TunnelX اتصال ویندوز را ایجاد میکند و سپس مسیرها را بر اساس حالت انتخابی یا Full-route مدیریت میکند.
V2Ray / Xray
لینک یا کانفیگ V2Ray/Xray را در پروفایل وارد کنید. برنامه برای کانفیگهای معمول از sing-box استفاده میکند و برای کانفیگهایی که به قابلیتهای خاص Xray مثل xhttp نیاز دارند، Xray-core را انتخاب میکند.
SOCKS5/HTTP Proxy
اگر از پراکسی آماده استفاده میکنید، نوع پروفایل SOCKS5/HTTP Proxy را انتخاب کنید و سرور، پورت و در صورت نیاز نام کاربری و رمز عبور را وارد کنید. این حالت برای عبور برنامههای انتخابشده از یک پراکسی خارجی مناسب است و با پراکسی محلی 127.0.0.1 تفاوت دارد.
پشتیبانی از OpenVPN
TunnelX میتواند نسخه نصبشده OpenVPN Community و فایل انتخابی .ovpn کاربر را اجرا کند و سپس سیاست Split tunneling خودش را اعمال کند؛ یعنی فقط برنامهها و مقصدهای انتخابشده از تونل OpenVPN عبور میکنند.
OpenVPN همراه TunnelX توزیع نمیشود. برای این حالت باید OpenVPN Community را جداگانه نصب کنید، فایل .ovpn را در TunnelX انتخاب کنید و در صورت نیاز نام کاربری و رمز عبور OpenVPN را داخل برنامه وارد کنید. نصب بودن OpenVPN Connect بهتنهایی برای این حالت کافی نیست، چون آن برنامه مسیرها و DNS را با کلاینت خودش مدیریت میکند.
TunnelX برای سازگاری با Split tunneling، تنظیمات مسیر و DNS تحمیلی فایل .ovpn را کنترل میکند و در صورت تغییر IP تونل، gateway، interface یا مقصد ریموت هنگام reconnect، مسیردهی داخلی خودش را دوباره راهاندازی میکند.
نکتههای مسیر و دامنه
قانونهای Include و Exclude هم خود دامنه واردشده و هم زیردامنههای آن را پوشش میدهند. برای نمونه، افزودن githubusercontent.com پس از resolve شدن DNS شامل raw.githubusercontent.com هم میشود. اگر یک کلاینت HTTPS در مرحله بررسی certificate revocation خطا داد، ممکن است میزبانهای OCSP/CRL آن از مسیر انتخابی قابل دسترسی نباشند؛ در این حالت خود برنامه دانلودکننده یا دامنههای revocation مربوطه را هم در لیست لزومی قرار دهید.
- مقصدهای استثناشده حتی برای برنامههای انتخابشده مستقیم میمانند.
- مقصدهای لزومی حتی اگر برنامه مربوطه انتخاب نشده باشد از تونل عبور میکنند.
- برای برنامههای Store/MSIX، WebView2 یا برنامههای چندپردازشی، برنامه را باز نگه دارید و فهرست برنامهها را دوباره بارگذاری کنید.
- اگر Full-route روشن باشد، کل ترافیک سیستم از تونل عبور میکند و قانونهای مستقیم/استثنا همچنان برای نگه داشتن مقصدهای خاص روی مسیر عادی کاربرد دارند.
تنظیمات و دادههای محلی
پروفایلها، برنامههای انتخابشده، مقصدهای لزومی/استثنا، تاریخچه اتصال و لاگها روی دستگاه کاربر نگهداری میشوند و معمولاً در مسیر %LOCALAPPDATA%\TunnelX یا کنار برنامه قرار میگیرند. TunnelX عمداً تحلیل آماری یا telemetry برای نگهدارنده ارسال نمیکند.
لاگها ممکن است شامل نام پردازشها، نام دامنهها، آدرسهای IP، پورتها و وضعیت اتصال باشند. قبل از ارسال عمومی لاگ در GitHub Issues، اطلاعات حساس مثل آدرس سرور خصوصی، کلیدها، UUID، رمزها و endpointهای شخصی را حذف کنید.
عیبیابی سریع
- اگر اتصال برقرار نمیشود، اجرای برنامه با دسترسی Administrator، فایروال، درستی کانفیگ، پورتهای پراکسی و نصب بودن پیشنیازهای مربوط به همان نوع اتصال را بررسی کنید.
- اگر ترافیک یک برنامه از تونل عبور نمیکند، برنامه را در تب برنامهها فعال کنید، برنامه را باز نگه دارید و فهرست برنامهها را دوباره بارگذاری کنید.
- اگر فقط یک سایت یا دامنه باید از تونل عبور کند، آن را به مقصدهای لزومی اضافه کنید؛ اگر باید مستقیم بماند، آن را به استثناها اضافه کنید.
- اگر خطای DNS یا IPv6 میبینید، کارت سلامت بعد از اتصال را بررسی کنید و در صورت نیاز یکبار قطع و وصل کنید تا مسیرها و قانونهای DNS دوباره ساخته شوند.
- اگر از OpenVPN استفاده میکنید و اتصال طولانی میشود، فایل
.ovpn، نام کاربری/رمز و نصب بودن OpenVPN Community را بررسی کنید.
تصاویر برنامه
| داشبورد اتصال | تنظیم پروفایل و سرور |
|---|---|
![]() |
![]() |
| انتخاب برنامهها برای تونل | تنظیمات تونل |
|---|---|
![]() |
![]() |
دانلود
فایلهای آماده اجرا از بخش Releases پروژه منتشر میشوند:
دانلود آخرین نسخه از GitHub Releases
فایلهای منتشرشده توسط GitHub Actions ساخته و آپلود میشوند. برای هر فایل اجرایی standalone، فایل checksum با پسوند .sha256 هم منتشر میشود و در متن هر Release لینک اجرای workflow قرار میگیرد.
نسخه پیشنهادی برای کاربران، فایل standalone و self-contained است. این نسخه به نصب جداگانه .NET Runtime نیاز ندارد.
نیازمندیهای اجرا
- ویندوز 10/11
- ویندوز ۶۴ بیتی:
win-x64 - دسترسی Administrator هنگام اجرا، چون مدیریت route و packet interception به سطح دسترسی بالا نیاز دارد
- نسخههای ۳۲ بیتی ویندوز در حال حاضر پشتیبانی نمیشوند
ساخت از سورس
برای توسعه یا ساخت دستی، .NET 8 SDK لازم است:
dotnet build AppTunnel.sln -c Release
dotnet publish AppTunnel\AppTunnel.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:EnableCompressionInSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:DebugType=None -p:DebugSymbols=false
جزئیات بیشتر در docs/BUILD.md آمده است. ایدهها و برنامههای آینده در docs/ROADMAP.md نگهداری میشوند.
مجوز
TunnelX تحت مجوز GPL-3.0-or-later منتشر شده است. استفاده تجاری با رعایت شرایط GPL مجاز است. اجزای شخص ثالث همراه پروژه مجوزهای خودشان را دارند. برای جزئیات بیشتر:
LICENSETHIRD_PARTY_NOTICES.mddocs/LEGAL.md
پشتیبانی، سفارشیسازی و حمایت مالی
TunnelX آزاد و رایگان است. حمایت مالی کاملا اختیاری است و فقط به نگهداری و توسعه پروژه کمک میکند.
خدمات پولی میتواند به صورت جداگانه برای پشتیبانی خصوصی، راهاندازی، بیلد اختصاصی، سفارشیسازی برای شرکتها، یا توسعه برنامهای مشابه ارائه شود. این خدمات پولی حقوقی را که مجوز GPL به کاربران میدهد محدود نمیکند.
گزینههای حمایت و راههای تماس از طریق GitHub Sponsors/Funding یا فایل docs/DONATE.md در دسترس هستند.
نکته ایمنی و سلب مسئولیت
TunnelX یک ابزار شبکه، تونل و مدیریت مسیر است. فقط در محیطهایی از آن استفاده کنید که اجازه استفاده از ویپیان، پروکسی، packet capture و تغییر route را دارید. این پروژه مشاوره حقوقی ارائه نمیدهد.
این نرمافزار همانگونه که هست ارائه میشود، بدون هیچگونه ضمانت، و نگهدارنده پروژه تعهدی برای ارائه بروزرسانی، رفع اشکال، پشتیبانی یا ادامه دسترسی دائمی ندارد.



