VPN روی موبایل: iOS و اندروید را سریع راه بیندازیم

7 دقیقه مطالعه

سه دقیقه به شروع جلسه مانده بود و اینترنت دیتای گوشی یک‌جوری کند شده بود که حتی پیام‌ها هم با تأخیر می‌رفت. از آن لحظه‌هایی است که می‌فهمی «VPN نصب دارم» با «VPN الان کار می‌کند» دو چیز متفاوت‌اند.

بعضی روزها VPN باید فوری کار کند.

این راهنما برای همین لحظه‌هاست: راه‌اندازی سریع روی iOS و اندروید، با چند نکته‌ی ریز که اگر رعایت نکنی، همان «وصل شد» در عمل یعنی «هیچی باز نمی‌شود».

۶۰ ثانیه واقعی یعنی چه؟

اگر سرویس بهت لینک سابسکریپشن یا QR بدهد، ۶۰ ثانیه واقعی است. اگر مجبور شوی دستی کانفیگ را خط‌به‌خط وارد کنی، نه. تجربه‌ی من این است که روی موبایل، ۹۰ درصد زمان صرف پیدا کردن کانفیگ درست و کلاینت درست می‌شود، نه خودِ اتصال.

سه پروتکل را زیاد می‌بینی و هرکدام اخلاق خودش را دارد: WireGuard (سریع، کم‌هزینه برای باتری، ولی حساس به شبکه‌های فیلترشده)، VLESS+REALITY (برای شرایط سخت‌تر معمولاً جواب می‌دهد، ولی کلاینت و تنظیماتش مهم است)، و Shadowsocks-2022 (گاهی روی شبکه‌های شلوغ پایدارتر از چیزی است که فکر می‌کنی).

من معمولاً روی گوشی دو مسیر آماده نگه می‌دارم: یکی WireGuard برای روزهای عادی، یکی VLESS+REALITY برای وقتی که شبکه لج می‌کند. اگر سرویس‌ات چند پروتکل را می‌دهد، ارزشش را دارد که واقعاً از آن استفاده کنی؛ یک‌جور بیمه است. برای اینکه ببینی یک سرویس دقیقاً چه چیزهایی می‌دهد، بد نیست یک نگاه به صفحهٔ ویژگی‌ها و پروتکل‌ها بیندازی.

iOS: ساده‌تر از چیزی که فکر می‌کنی

روی iOS داستان به Network Extension گره خورده. مزیتش این است که سیستم‌عامل خیلی تمیز مدیریت می‌کند. ایرادش؟ گاهی با یک پیام تأیید کوچک، کل فرایند متوقف می‌شود و تا لمسش نکنی جلو نمی‌رود.

اگر از کلاینت‌های رایج استفاده می‌کنی، معمولاً یکی از این‌هاست: WireGuard (اپ رسمی)، Shadowrocket، Streisand، یا Hiddify (بسته به اینکه سرویس‌ات چه پروتکلی بدهد). انتخاب «بهترین» نداریم؛ انتخاب «متناسب با کانفیگ» داریم.

برای راه‌اندازی سریع روی iOS، همین روال را می‌روم:

  • کلاینت را نصب کن و یک‌بار بازش کن.
  • QR یا لینک سابسکریپشن را داخل کلاینت Import کن (یا اگر فایل ‎.conf برای WireGuard داری، از Files انتخابش کن).
  • اولین بار که Connect می‌زنی، iOS اجازهٔ اضافه شدن VPN را می‌خواهد؛ Allow را بزن.
  • بعد از اتصال، یک‌بار اینترنت را واقعاً تست کن، نه فقط دیدن آیکن VPN.

سه نکته‌ی عملی که زیاد نادیده گرفته می‌شود:

اول، iOS اجازه نمی‌دهد دو VPN هم‌زمان داشته باشی. اگر روی گوشی‌ات قبلاً یک پروفایل کاری، MDM، یا حتی یک DNS profile نصب شده، ممکن است روی رفتار VPN اثر بگذارد.

دوم، اگر از VLESS+REALITY روی iOS استفاده می‌کنی، کلاینتی را انتخاب کن که پیاده‌سازی‌اش پخته باشد. بعضی کلاینت‌ها در ظاهر وصل می‌شوند اما روی شبکه‌ی موبایل با packet loss ریز، مدام reconnect می‌زنند و باتری را می‌خورند.

سوم، اگر VPN را برای پیام‌رسان یا اپ بانکی روشن می‌کنی، حواست به Split Tunneling باشد. بعضی‌ها دوست دارند فقط یک اپ از VPN رد شود، بعضی‌ها برعکس. روی iOS این قابلیت بسته به کلاینت محدودتر از اندروید است و همین قسمت، راستش، گاهی اعصاب‌خردکن می‌شود.

اندروید: آزادی بیشتر، دردسر بیشتر

اندروید بهت گزینه‌های بیشتری می‌دهد: Always-on VPN، Block connections without VPN، تنظیمات دقیق‌تر برای اپ‌ها، و کلاینت‌های متنوع‌تر. همین آزادی اگر درست تنظیم نشود، باعث می‌شود «هر بار که صفحه خاموش شد، VPN هم مرد».

کلاینت‌های رایج که من زیاد می‌بینم: V2RayNG، NekoBox، Hiddify، و برای WireGuard همان اپ WireGuard. اگر کانفیگ VLESS یا Shadowsocks داری، NekoBox معمولاً تجربه‌ی مرتب‌تری از نظر UI و مدیریت سابسکریپشن می‌دهد، ولی V2RayNG هم هنوز به‌خاطر سادگی و سبک بودنش محبوب است.

برای راه‌اندازی سریع روی اندروید:

  • کلاینت را نصب کن و مجوز VPN را یک‌بار بده.
  • لینک سابسکریپشن را اضافه کن و Update بزن تا لیست سرورها بیاید.
  • یک سرور را انتخاب کن و Connect بزن.
  • در تنظیمات اندروید، Always-on VPN را برای همان کلاینت روشن کن.
  • اگر امنیت برایت مهم است، گزینهٔ Block without VPN را هم فعال کن (فقط حواست باشد اگر VPN قطع شود، کل اینترنت قطع می‌شود).

دو دردسر رایج اندروید که اگر از قبل بدانی، وقتت تلف نمی‌شود:

یکی Battery Optimization است. بعضی برندها (خصوصاً پوسته‌های سنگین) کلاینت VPN را بعد از چند دقیقه در پس‌زمینه خفه می‌کنند. باید آن اپ را از محدودیت باتری خارج کنی و اجازه‌ی فعالیت پس‌زمینه بدهی.

دومی جابه‌جایی بین Wi‑Fi و دیتاست. روی حرکت، packet loss و NAT تغییر می‌کند و بعضی پروتکل‌ها بدقلق می‌شوند. اگر دیدی WireGuard روی دیتای موبایل مدام قطع و وصل می‌شود ولی روی Wi‑Fi خوب است، تعجب نکن؛ این رفتار را بارها دیده‌ام.

بعد از اتصال، فقط به آیکن بالا اعتماد نکن

سه ثانیه طول می‌کشد، ولی جلوی نیم‌ساعت سردرگمی را می‌گیرد.

اول، IP را چک کن. لازم نیست ابزار خاصی باشد؛ یک سایت ساده‌ی تست IP کافی است. اگر IP تغییر نکرده، یعنی یا VPN واقعاً بالا نیامده، یا Split Tunneling طوری تنظیم شده که مرورگر از تونل رد نمی‌شود.

دوم، DNS را چک کن. خیلی وقت‌ها مشکل «سایت‌ها باز نمی‌شوند» در اصل DNS است، نه خود تونل. بعضی شبکه‌ها DNS hijack می‌کنند و تو حتی با VPN هم اگر DNS لو برود، نتیجه عجیب می‌شود. اگر کلاینت‌ات اجازه می‌دهد، DNS را روی حالت امن‌تر بگذار (مثلاً DoH داخل کلاینت، یا DNS اختصاصی سرویس). اگر دوست داری دقیق‌تر ببینی سرویس چه راه‌هایی برای کنترل DNS و جلوگیری از نشتی دارد، سوال‌های رایج معمولاً جواب‌های عملی می‌دهد.

سوم، مصرف باتری را یک روز زیر نظر بگیر. روی گوشی، تفاوت پروتکل‌ها ملموس است. WireGuard معمولاً سبک‌تر است چون ساده‌تر کار می‌کند و به‌صورت پیش‌فرض UDP است. ولی اگر شبکه UDP را بد رفتار کند، همین انتخاب «سبک» تبدیل می‌شود به reconnect پشت reconnect.

وصل می‌شود ولی چیزی باز نمی‌شود؟ چند سناریوی واقعی

این مدل مشکل‌ها را بیشتر از خودِ قطع شدن می‌بینم.

سناریو اول: زمان دستگاه غلط است. بله، همین‌قدر ساده. اگر ساعت گوشی چند دقیقه عقب یا جلو باشد، بعضی handshakeها به مشکل می‌خورند (خصوصاً جاهایی که روی TLS و اعتبارسنجی حساس‌اند). Auto time را روشن کن و یک‌بار Airplane mode را خاموش روشن کن.

سناریو دوم: شبکه روی پورت‌ها سخت‌گیری می‌کند. خیلی از سرویس‌ها برای دور زدن محدودیت‌ها از مسیرهایی استفاده می‌کنند که شبیه ترافیک معمول وب باشد، مثلاً پورت ۴۴۳. اگر کانفیگ‌ات چند گزینه دارد، بین سرورها جابه‌جا شو. اینجا «یک سرور ثابت برای همیشه» معمولاً جواب نمی‌دهد.

سناریو سوم: MTU به‌هم ریخته. روی دیتای موبایل یا بعضی Wi‑Fiهای شلوغ، fragmentation می‌تواند دردسر درست کند. نشانه‌اش این است که بعضی سایت‌ها باز می‌شوند، بعضی‌ها نه، یا فایل دانلود نمی‌شود ولی پیام‌ها می‌روند. در WireGuard می‌شود MTU را تنظیم کرد؛ در بعضی کلاینت‌های V2Ray هم گزینه‌های مشابه هست.

سناریو چهارم: تداخل با Private DNS یا پروفایل‌های عجیب. روی اندروید اگر Private DNS روشن کرده‌ای و یک DNS ناپایدار گذاشته‌ای، ممکن است VPN سالم باشد ولی اسم دامنه resolve نشود. برای تست، موقتاً Private DNS را روی Automatic بگذار.

اینجا یک نکته‌ی اقتصادی هم هست که کمتر درباره‌اش حرف می‌زنند: سرویس‌هایی که چند پروتکل و چند لوکیشن واقعی دارند، وقتی شبکه بد می‌شود دستت بازتر است. همیشه قرار نیست گران‌ترین پلن را بگیری، ولی من شخصاً ترجیح می‌دهم تعرفه‌ها شفاف باشد و مجبور نباشم از روی حدس انتخاب کنم. برای همین قبل از خرید، یک نگاه سریع به قیمت‌گذاری DuduVPN می‌اندازم تا ببینم چه پکیجی با چند دستگاه و چه نوع دسترسی‌ای می‌صرفد.

یک پیشنهاد کوتاه، وقتی حوصلهٔ کلنجار نداری

اگر می‌خواهی همان سناریوی «QR را اسکن کن و برو» را داشته باشی و بین WireGuard و VLESS+REALITY حق انتخاب واقعی داشته باشی، من از DuduVPN استفاده می‌کنم و برای گرفتن سریع کانفیگ روی موبایل، بات تلگرام DuduVPN معمولاً کم‌دردسرترین مسیر است.

آخرین نکته: اگر روی دیتای موبایل packet loss داری و اتصال ناپایدار است، MTU را کمی پایین‌تر تنظیم کن و بعد با همان شبکه دوباره تست بگیر.

مقالات مرتبط