نشت DNS چیست و چرا حتی با VPN روشن هم اتفاق میافتد؟
برنامه VPN شما میگوید «Connected»، نشانگر سبز رنگ روشن است، اما اپراتور اینترنت همچنان میداند دقیقاً چه سایتهایی را باز کردهاید. این دقیقاً همان چیزی است که یک نشت DNS رخ میدهد: تونل رمزنگاریشده برقرار است، ولی درخواستهای ترجمه نام دامنه از مسیر آن خارج میشوند. طبق آزمایش سال ۲۰۲۶ شرکت Tunnelity روی نشت DNS، نزدیک به ۸۰ درصد کاربران VPN حداقل یکبار داده DNS یا IPv6 خود را لو دادهاند — حتی در حالی که برنامه VPN فعال بود و اتصال را سالم گزارش میکرد.
یک درخواست DNS واقعاً چه چیزی را فاش میکند
هر بار که آدرس یک سایت را وارد میکنید یا روی لینکی کلیک میکنید، دستگاه شما باید ابتدا آن نام دامنه را به یک آدرس IP قابلاتصال ترجمه کند. این کار را یک «resolver» انجام میدهد. اگر تنظیمات خاصی وجود نداشته باشد، این resolver همان سروری است که اپراتور اینترنت (ISP) شما در اختیار دستگاه قرار داده. یعنی حتی اگر محتوای صفحهای که باز میکنید از طریق HTTPS رمزنگاری شده باشد، فهرست کامل دامنههایی که سراغشان میروید همچنان از جلوی چشم ISP عبور میکند — با برچسب زمان، پشتسرهم و قابل ردیابی به هویت اشتراک شما.
نشت چطور اتفاق میافتد وقتی فکر میکنید «محافظت شدهاید»
چند دلیل رایج باعث میشود درخواستهای DNS از تونل VPN بیرون بمانند:
- کلاینت با تنظیمات نادرست: سیستمعامل همچنان از resolver قبلی خودش استفاده میکند، چون هیچکس صریحاً آن را به سمت VPN هدایت نکرده است.
- نقطه کور IPv6: بسیاری از تونلها فقط ترافیک IPv4 را میپوشانند؛ درخواستهای DNS مربوط به IPv6 بهراحتی از کنار آنها رد میشوند.
- رفتار «هوشمند» سیستمعامل: برخی دستگاهها بهصورت خودکار سریعترین resolver در دسترس را انتخاب میکنند، حتی اگر آن resolver بیرون از VPN باشد.
- DNS-over-HTTPS در سطح مرورگر: برخی مرورگرها resolver اختصاصی خودشان را دارند که resolver تنظیمشده توسط VPN را دور میزند.
تست نشت DNS فقط ثابت میکند در همان لحظهی خاصِ تست چه اتفاقی افتاده است. نشت میتواند متناوب باشد — مثلاً فقط بعد از یک reconnect، یا فقط وقتی شبکهای IPv6 در دسترس است — پس یک تست تمیز به معنای محافظت دائمی نیست.
چرا این موضوع اهمیت دارد
HTTPS محتوای یک درخواست را رمزنگاری میکند، اما جستوجوی DNS که پیش از برقراری همان اتصال انجام میشود، یک مرحله کاملاً جداست. اگر آن جستوجو از مسیر VPN عبور نکند، همچنان مشخص میشود دقیقاً به کدام دامنهها سر زدهاید. این موضوع صرفاً نظری نیست: پژوهش سال ۲۰۲۶ دانشگاه میشیگان روی ۲۸۱ اپلیکیشن محبوب VPN اندروید نشان داد ۲۹ اپلیکیشن ترافیک DNS و مرورگر را بیرون از تونل نشت میدهند، و ۶۱ اپلیکیشن اساساً بخشی از دادهها را کاملاً خارج از تونل ارسال میکنند. در آزمایش دیگری در همان سال روی ۳۰ ارائهدهنده VPN، ۲۳ درصد آنها در حداقل یک شرایط تست، درخواستهای DNS را لو دادند.
چگونه بررسی کنید اتصال شما نشت دارد یا نه
- به VPN متصل شوید و مطمئن شوید وضعیت آن «Connected» را نشان میدهد.
- یک سایت تست نشت DNS باز کنید.
- نسخه گسترده (extended) تست را اجرا کنید، نه فقط تست سریع.
- مالک و موقعیت جغرافیایی resolverهای نمایش دادهشده را با ISP واقعی خودتان مقایسه کنید.
- بلافاصله بعد از یک reconnect دوباره همان تست را تکرار کنید، چون نشتها میتوانند فقط در همان بازه ظاهر شوند.
چگونه RunVPN از نشت DNS جلوگیری میکند
RunVPN هیچ مرحله تنظیمات دستیای ندارد که کاربر بتواند در آن اشتباه کند. پس از نصب برنامه اندروید و ورود با گوگل، ایمیل یا تلگرام، پیکربندی بهصورت خودکار از سرور دریافت میشود — بدون وارد کردن فایل کانفیگ، اسکن QR یا کپیپیست دستی. از همان لحظهای که روی دکمه اتصال میزنید، تمام ترافیک، از جمله درخواستهای DNS، از طریق موتور Xray و روی AmneziaWG (پروتکل پیشفرض) یا VLESS-Reality با XTLS-Vision عبور میکند. چون هیچ تنظیم جداگانهای برای DNS وجود ندارد که کاربر مجبور باشد آن را دستی هدایت کند، همان علت رایجی که در بخش بالا توضیح دادیم — کلاینت با تنظیمات نادرست — از ابتدا از معادله حذف میشود.
| علت رایج | چه اتفاقی میافتد | چگونه جلوگیری میشود |
|---|---|---|
| کلاینت با تنظیمات نادرست | سیستمعامل به استفاده از resolver اصلی خودش ادامه میدهد | راهاندازی خودکار و سراسری بعد از ورود — بدون هیچ مرحله دستی |
| نقطه کور IPv6 | درخواستهای DNS روی IPv6 از تونلی که فقط IPv4 را میپوشاند عبور میکنند | صرفنظر از نسخه IP، تمام DNS داخل تونل مسیردهی میشود |
| رفتار «سریعترین resolver» سیستمعامل | دستگاه یک resolver خارج از VPN انتخاب میکند | تمام ترافیک DNS به تونل فعال گرهخورده باقی میماند |
| بازنویسی DNS-over-HTTPS در مرورگر | مرورگر resolver مربوط به VPN را دور میزند | هیچ تنظیم جداگانهای برای هر اپلیکیشن وجود ندارد که کاربر آن را اشتباه تنظیم کند |
آنچه با راهاندازی خودکار بهدست میآورید:
- هیچ فایل کانفیگی برای وارد کردن و هیچ تنظیمی در برنامه برای بازبینی دستی وجود ندارد
- یک حساب کاربری برای تا ۵ دستگاه، با سیاست بدون لاگ
- بهصورت پیشفرض AmneziaWG، و VLESS-Reality با XTLS-Vision بهعنوان پروتکل جایگزین
پرسشهای متداول
آیا فقط HTTPS برای جلوگیری از نشت DNS کافی است؟ خیر. HTTPS محتوای یک درخواست را رمزنگاری میکند، اما جستوجوی DNS که پیش از برقراری همان اتصال انجام میشود مرحلهای جداست. اگر آن جستوجو از مسیر VPN عبور نکند، همچنان میتواند نشان دهد به کدام دامنهها سر میزنید.
آیا حتی وقتی برنامه VPN «Connected» نشان میدهد ممکن است نشت DNS رخ بدهد؟ بله. یک نشت اغلب فقط ترافیک DNS را تحت تأثیر قرار میدهد در حالی که بقیه اتصال بهدرستی مسیردهی میشود؛ به همین دلیل نشانگر وضعیت برنامه بهتنهایی اثبات نمیکند نشستی وجود ندارد.
آیا IPv6 علت اصلی نشتهای DNS است؟ یکی از رایجترین علتهاست، بهخصوص در شبکهها و دستگاههایی که همراه با IPv4 از IPv6 هم پشتیبانی میکنند. تونلی که فقط IPv4 را پوشش میدهد میتواند درخواستهای DNS روی IPv6 را در حالی که بقیه چیزها عادی به نظر میرسند، بیمحافظ رها کند.
آیا برای دریافت محافظت در برابر نشت DNS با RunVPN باید چیزی را تنظیم کنم؟ نه، هیچ تنظیم دستی لازم نیست. پس از ورود، برنامه پیکربندی خودش را بهصورت خودکار دریافت میکند و DNS را از همان تونل رمزنگاریشدهای عبور میدهد که بقیه ترافیک شما از آن میگذرد.