نشت DNS وقتی رخ میدهد که دستگاه شما درخواست جستوجوی نام سایت را بیرون از تونل رمزگذاریشده VPN بفرستد، معمولاً به سمت اینترنت ثابت یا یک DNS resolver دیگر. در این حالت، حتی اگر VPN هنوز IP شما را پنهان کرده باشد، نام دامنههایی که باز میکنید ممکن است لو برود.
خبر خوب این است که نشت DNS قابل تست و معمولاً قابل رفع است. در این راهنما میگوییم DNS چیست، چرا درخواستهای DNS حساساند، نشت DNS از کجا میآید، چطور یک تست قابل اعتماد بگیرید و چطور خطر آن را روی دسکتاپ، موبایل و مرورگر کم کنید.
DNS چیست و چرا مهم است؟
DNS مخفف Domain Name System است و در عمل نقش دفترچه تلفن اینترنت را دارد. وقتی نام یک سایت را در مرورگر مینویسید، دستگاه شما باید قبل از باز شدن صفحه، آدرس سرور آن نام را پیدا کند.
مثلاً شما نام دامنه را به خاطر میسپارید چون خوانا است، اما شبکهها با عددها کار میکنند. مرورگر و اپها برای اتصال به مقصد به IP نیاز دارند و DNS همان سیستمی است که نام را به آدرس تبدیل میکند.
یک جستوجوی معمولی DNS بهطور ساده اینطور کار میکند:
- نام دامنه را وارد میکنید یا یک اپ را باز میکنید.
- دستگاه از DNS resolver میپرسد آن دامنه به کجا اشاره میکند.
- resolver آدرس IP یا رکوردهای مرتبط را برمیگرداند.
- دستگاه به مقصد وصل میشود و سرویس را بارگذاری میکند.
نکته مهم درباره حریم خصوصی این است که درخواستهای DNS میتوانند نیت شما را نشان دهند. resolver معمولاً محتوای کامل یک صفحه HTTPS، متن دقیق یک مقاله یا جزئیات یک نشست رمزگذاریشده را نمیبیند، اما اغلب میتواند نام دامنهای را که خواستهاید تشخیص دهد، مثل یک سایت خبری، بانک، انجمن سلامت، ابزار کاری یا سرویس استریم.
به همین دلیل، رسیدگی به DNS بخشی از حریم خصوصی VPN است. VPN فقط برای عوض کردن IP نیست که وبسایتها ببینند، بلکه باید نگذارد ترافیک معمولی جستوجو از مسیر محافظتشده بیرون بزند. اگر با اصول VPN آشنا نیستید، VPN چیست توضیح کلیتری از تونل VPN میدهد.
نشت DNS چیست؟
نشت DNS یعنی بین مسیر ترافیک اصلی اینترنت و مسیر درخواستهای DNS شما هماهنگی وجود ندارد. ممکن است ترافیک وب از سرور VPN عبور کند، اما جستوجوی DNS همچنان به سمت ISP، اپراتور موبایل، یک resolver عمومی روی دستگاه یا resolver انتخابشده توسط مرورگر برود.
این موضوع یک شکاف حریم خصوصی ایجاد میکند. سایتی که باز میکنید ممکن است IP سرور VPN را ببیند، اما resolver خارج از تونل هنوز دامنههایی را که درخواست کردهاید میبیند. اگر آن resolver متعلق به ISP شما باشد، ISP میتواند از روی متادیتای DNS بخش زیادی از فعالیت مرور شما را حدس بزند.
نشت DNS لزوماً به این معنی نیست که کل VPN از کار افتاده است. ممکن است در حالی رخ دهد که آیکن VPN وصل بودن را نشان میدهد و IP عمومی شما هم IP سرور VPN به نظر میرسد. برای همین، نشت DNS را بدون تست مستقیم بهراحتی نمیشود فهمید.
در Crispy VPN، وقتی برنامه وصل است، درخواستهای DNS از طریق تونل VPN عبور میکنند. این طراحی باعث میشود ترافیک جستوجوی DNS با اتصال VPN هماهنگ بماند و به شبکهای که از آن استفاده میکنید برنگردد.
نشت DNS چه چیزهایی را لو میدهد؟
- نام دامنهها: سایتها و سرویسهایی که دستگاه شما برای resolve کردنشان درخواست میفرستد.
- زمانبندی: اینکه این درخواستها چه زمانی رخ میدهند.
- بافت شبکه: اینکه درخواست از ISP خانگی، شبکه محل کار، هتل، اپراتور موبایل یا یک شبکه محلی دیگر آمده است.
خود DNS معمولاً محتوای کامل یک صفحه امن HTTPS را لو نمیدهد و شما را هم ناشناس نمیکند. سایتهایی که وارد حسابشان شدهاید هنوز میتوانند شما را بشناسند و trackerها هم ممکن است از کوکی یا اثرانگشت مرورگر استفاده کنند. با این حال، جلوگیری از نشت DNS همچنان مهم است چون نقشه مفیدی از چیزهایی که به آنها سر میزنید را بیرون میدهد.
نشت DNS چطور رخ میدهد؟
نشت DNS معمولاً از ناسازگاری در تنظیمات میآید. سیستمعاملهای مدرن، مرورگرها، اپهای VPN و آداپتورهای شبکه همگی میتوانند روی رفتار DNS اثر بگذارند. اگر این لایهها با هم هماهنگ نباشند، جستوجوها ممکن است مسیری غیرمنتظره بروند.
تنظیمات DNS در سیستمعامل
سیستمعامل شما تصمیم میگیرد برای هر رابط شبکه از کدام DNS server استفاده کند. وقتی VPN وصل میشود، معمولاً یک رابط شبکه مجازی اضافه میکند و باید ترافیک DNS را از همان مسیر بفرستد. اگر سیستمعامل هنوز از DNS قدیمی Wi-Fi یا Ethernet استفاده کند، نشت رخ میدهد.
این حالت بعد از جابهجاییهای پیاپی شبکه، خواب و بیدار شدن دستگاه، ورود به captive portal یا تغییر دستی تنظیمات شبکه بیشتر دیده میشود. وصل و قطع دوباره VPN گاهی مشکل موقت مسیریابی را پاک میکند، اما نشتهای مداوم نیاز به بررسی تنظیمات دارند.
مدیریت IPv6
IPv6 سیستم آدرسدهی جدیدتری در اینترنت است که میتواند کنار IPv4 کار کند. DNS میتواند رکوردهای IPv4 و IPv6 را resolve کند. اگر VPN یا دستگاه شما ترافیک IPv4 را درست مسیریابی کند اما DNS یا ترافیک IPv6 را به شبکه محلی بسپارد، نشت ایجاد میشود.
برای همین تست نباید فقط عوض شدن یک IP IPv4 را بررسی کند. نتیجه تمیز یعنی DNS serverها و اطلاعات IP قابل مشاهده، با مسیری که برای VPN انتخاب کردهاید همخوان باشد.
DNS سرورهای دستی
خیلیها برای سرعت، فیلتر یا پایداری، DNS سرور سفارشی روی دستگاه، روتر یا مرورگر تنظیم میکنند. این تنظیمات میتوانند DNSهایی را که اپ VPN میفرستد دور بزنند. اگر resolver سفارشی بیرون از تونل در دسترس باشد، نشت DNS دارید.
DNS دستی همیشه بد نیست، اما باید با هدف حریم خصوصی شما سازگار باشد. وقتی از VPN استفاده میکنید، امنترین حالت پیشفرض این است که اجازه دهید اپ VPN DNS را مدیریت کند، مگر اینکه دلیل مشخصی داشته باشید و بدانید آن درخواستها دقیقاً به کجا میروند.
DNS over HTTPS در مرورگر
بعضی مرورگرها DNS over HTTPS را ارائه میکنند که به آن secure DNS هم میگویند. این قابلیت، DNS بین مرورگر و یک ارائهدهنده DNS را رمزگذاری میکند. این کار میتواند DNS را از شبکه محلی پنهان کند، اما در عین حال ممکن است تنظیمات DNS اپ VPN را دور بزند.
اگر DNS over HTTPS مرورگر روی resolverی خارج از مسیر VPN تنظیم شده باشد، تست نشت ممکن است همان resolver را نشان بدهد نه DNS خود VPN را. ممکن است رمزگذاری شده باشد، اما باز هم از مدیریت DNS مورد نظر VPN استفاده نمیکند. افزونههای مرورگر هم میتوانند قوانین مسیریابی خودشان را داشته باشند، پس تست مرورگر و تست کل دستگاه ممکن است نتیجه متفاوتی بدهند.
انتخابهای split tunneling
Split tunneling اجازه میدهد بعضی اپها یا سایتها مسیری متفاوت از بقیه ترافیک داشته باشند. این قابلیت وقتی مفید است که بخواهید بخشی از ترافیک داخل VPN باشد و بخشی بیرون آن. اما همین موضوع میتواند علت نتیجههای عجیب DNS هم باشد.
اگر یک اپ یا سایت از VPN مستثنا شده باشد، DNS آن هم بسته به پلتفرم و پیادهسازی ممکن است مستثنا شود. Crispy VPN روی Android بهصورت per app، روی iPhone و iPad بر اساس website و در افزونههای مرورگر هم بر اساس website از split tunneling پشتیبانی میکند. اگر از split tunneling استفاده میکنید، قبل از اینکه فرض کنید همه درخواستهای DNS محافظت میشوند، قوانین را بررسی کنید. برای راهنمایی بیشتر، split tunneling چیست را بخوانید.
چطور تست نشت DNS بگیریم؟
تست نشت DNS بررسی میکند کدام DNS resolverها درخواستهای جستوجوی شما را میبینند. ایده اصلی این است که نتایج را با VPN خاموش و VPN روشن مقایسه کنید. اگر وقتی VPN وصل است همان DNSهای ISP یا شبکه محلی دیده شوند، احتمالاً نشت دارید.
تست را در همان شرایطی بگیرید که واقعاً استفاده میکنید. اگر بیشتر در یک مرورگر خاص وبگردی میکنید، همانجا تست کنید. اگر از اپ دسکتاپ یا موبایل استفاده میکنید، اتصال کامل دستگاه را هم تست کنید. اگر زیاد بین Wi-Fi و اینترنت موبایل جابهجا میشوید، هر دو را امتحان کنید.
چکلیست تست نشت DNS
- VPN را قطع کنید. یک صفحه تست نشت DNS باز کنید و نام ارائهدهنده DNS، کشورها و IPهای نمایشدادهشده را یادداشت کنید. این خط پایه شماست.
- به VPN وصل شوید. همان موقعیت سروری را انتخاب کنید که معمولاً استفاده میکنید و صبر کنید تا برنامه وضعیت connected را نشان دهد.
- صفحه تست را تازه کنید. اول تست استاندارد را اجرا کنید. اگر تست پیشرفته هم دارد، آن را هم اجرا کنید.
- نتیجه را مقایسه کنید. وقتی VPN وصل است نباید DNSهای ISP، محل کار، مدرسه، هتل یا اپراتور موبایل خودتان را ببینید.
- IP قابل مشاهده را چک کنید. با یک صفحه بررسی IP مطمئن شوید IP عمومی شما هم به موقعیت VPN تغییر کرده است. برای این بخش میتوانید از IP من چیست استفاده کنید.
- بعد از تغییر شبکه دوباره تکرار کنید. بعد از عوض کردن Wi-Fi، رفتن روی دیتای موبایل یا بیدار کردن دستگاه از خواب، تست را دوباره بگیرید.
یک نتیجه خوب همیشه با نام برند VPN شما برچسبگذاری نشده است. زیرساخت DNS ممکن است نام ارائهدهندههای متفاوت، نام دیتاسنتر یا آدرسهای relay را نشان بدهد. مهم این است که نتیجه، ISP محلی یا resolverی را که نمیخواستید استفاده کنید نشان ندهد.
اگر از Crispy VPN استفاده میکنید، اول اپ را وصل کنید و بعد تست را بگیرید. DNS باید همراه با ترافیک VPN از تونل عبور کند. اگر بعد از وصل شدن هنوز DNS مربوط به ISP را میبینید، آن را بهعنوان مشکل تنظیمات دستگاه یا مرورگر در نظر بگیرید و سراغ راهحلهای بعدی بروید.
چطور مشکل نشت DNS را رفع کنیم؟
راهحل درست به علت مشکل بستگی دارد. از قدمهای سادهتر شروع کنید و اگر نشت باقی ماند، سراغ تنظیمات پلتفرم و مرورگر بروید.
اول این رفعهای سریع را امتحان کنید
- VPN را قطع و دوباره وصل کنید. این کار مسیرها و تنظیمات DNS را تازه میکند.
- موقعیت سرور VPN را عوض کنید. یک اتصال جدید میتواند وضعیت قدیمی شبکه را پاک کند.
- برنامه و مرورگر را ببندید و دوباره باز کنید. مرورگرها ممکن است تصمیمهای DNS را تا زمان ریاستارت نگه دارند.
- دستگاه را ریاستارت کنید. این کار رابطهای شبکه و تخصیصهای قدیمی DNS را بازنشانی میکند.
- اپ VPN و سیستمعامل را بهروز کنید. باگهای مسیریابی DNS خیلی وقتها با بهروزرسانی برطرف میشوند.
تنظیمات دستی DNS را بررسی کنید
به تنظیمات Wi-Fi، Ethernet و شبکه موبایل نگاه کنید. اگر بهصورت دستی DNS server اضافه کردهاید، موقتاً آنها را بردارید و DNS را به حالت automatic برگردانید. بعد دوباره VPN را وصل کنید و تست نشت DNS را تکرار کنید.
اگر نشت برطرف شد، یعنی تنظیم دستی DNS داشت VPN را دور میزد. بعداً میتوانید تصمیم بگیرید آن DNS سفارشی ارزش نگهداشتن دارد یا نه، اما فقط چون آشنا یا رمزگذاریشده است، فرض نکنید خصوصی هم هست.
Secure DNS مرورگر را بررسی کنید
تنظیمات privacy یا security مرورگر را باز کنید و دنبال secure DNS یا DNS over HTTPS بگردید. اگر با یک provider خاص فعال است، موقتاً خاموشش کنید یا بگذارید از تنظیمات پیشفرض سیستمعامل استفاده کند. VPN را دوباره وصل کنید، مرورگر را ریاستارت کنید و دوباره تست بگیرید.
این بخش بهخصوص وقتی مهم است که فقط یک مرورگر نشت دارد ولی بقیه اپها تمیز هستند. در این حالت ممکن است VPN در سطح سیستم درست کار کند، اما مرورگر دارد resolver خودش را انتخاب میکند.
قوانین split tunneling را بررسی کنید
اگر split tunneling فعال است، ببینید آیا مرورگر، سایت تست یا آن اپ از VPN مستثنا شده یا نه. استثنا را حذف کنید و تست را دوباره اجرا کنید. اگر نتیجه بعد از خاموش کردن split tunneling عوض شد، موضوع مرموزی نیست. یعنی همان قانونی که تنظیم کرده بودید، اجرا شده است.
از اپ VPN بهجای راهحلهای نامطمئن استفاده کنید
تنظیمات نامتعارف روتر، فایلهای کانفیگ پراکنده یا ابزارهای شبکه شخص ثالث میتوانند پیشبینی مسیر DNS را سخت کنند. Crispy VPN برای iPhone و iPad، Mac، Windows، Linux، Android، Apple TV، Android TV و Google TV و همچنین افزونههای مرورگر برای Chrome، Edge و Firefox اپ دارد. اپ درست را از صفحه دانلود بگیرید و از همانجا تست کنید.
روی دستگاههای پشتیبانیشده، Crispy VPN روی همه سرورها از WireGuard استفاده میکند. WireGuard یک پروتکل VPN مدرن با کدبیس کوچک، عملکرد خوب و مصرف باتری مناسب روی موبایل است. اگر میخواهید درباره خود پروتکل بیشتر بدانید، WireGuard چیست را بخوانید.
جلوگیری از نشت DNS روی دستگاههای مختلف
جلوگیری از نشت DNS بیشتر به این برمیگردد که کنترل مسیریابی در دست اپ VPN بماند و تنظیمات متضاد DNS حذف شوند. جزئیات بسته به دستگاه فرق میکند.
Windows، Mac و Linux
سیستمهای دسکتاپ معمولاً چند رابط شبکه دارند: Wi-Fi، Ethernet، آداپتورهای مجازی و گاهی پروفایلهای کاری. اگر نشت DNS دیدید، تنظیمات DNS آداپتور را بررسی کنید و resolverهای دستی قدیمی را بردارید. بعد دوباره VPN را وصل کنید.
در Windows، Mac و Linux، kill switch هم میتواند کمک کند اگر اتصال VPN قطع شد، exposure کمتر شود. Crispy VPN روی این پلتفرمهای دسکتاپ kill switch اختیاری دارد و در Windows یک حالت Lockdown اختیاری هم هست. kill switch با محافظت از DNS یکی نیست، اما کمک میکند ترافیک هنگام قطع شدن اتصال از بیرون VPN ادامه پیدا نکند.
iPhone، iPad و Android
دستگاههای موبایل بین Wi-Fi، دیتای موبایل، شبکه هتل و captive portal جابهجا میشوند. اگر برای حریم خصوصی به VPN تکیه دارید، بعد از تغییر شبکه تست بگیرید. همچنین بررسی کنید private DNS، پروفایلهای مدیریت دستگاه یا اپهای امنیتی، رفتار DNS را عوض نکرده باشند.
در Android، تنظیمات سیستمی Always-on VPN و Block connections without VPN میتوانند از خروج ناخواسته ترافیک از VPN جلوگیری کنند. در iPhone و iPad، اپ VPN را بهروز نگه دارید و اگر یک سایت خاص رفتار غیرمنتظره دارد، قوانین split tunneling مربوط به website را بررسی کنید.
مرورگرها و افزونهها
مرورگرها منبع رایجی برای نتیجههای گیجکننده DNS هستند چون میتوانند secure DNS مخصوص خودشان را استفاده کنند. اگر نشت فقط داخل Chrome، Edge یا Firefox دیده میشود، قبل از تغییر کل دستگاه، تنظیمات DNS مرورگر را چک کنید.
افزونههای مرورگر هم فقط ترافیک مرورگر را پوشش میدهند، نه همه اپهای دستگاه. این برای وقتی مفید است که فقط برای وبگردی به محافظت نیاز دارید، اما با یک VPN کامل روی دستگاه یکی نیست. برای توضیح بیشتر، افزونه VPN مرورگر را ببینید.
دستگاههای تلویزیون
پلتفرمهای TV سادهترند، اما کنترلهای شبکه کمتری هم میدهند. Crispy VPN از Apple TV و Android TV یا Google TV پشتیبانی میکند و ورود روی تلویزیون با اسکن QR code از طریق گوشی انجام میشود. اگر روی TV دارید DNS را عیبیابی میکنید، اول همان شبکه را روی گوشی یا لپتاپ تست کنید و بعد دوباره اپ TV را وصل کنید.
VPN چه چیزهایی را از DNS پنهان میکند و چه چیزهایی را نه؟
یک VPN درستتنظیمشده باید درخواستهای DNS را داخل تونل رمزگذاریشده نگه دارد. این کار باعث میشود اپراتور Wi-Fi، ISP یا اپراتور موبایل، جستوجوهای معمول DNS را بهصورت آشکار نبیند. همچنین مسیر DNS شما را با سرور VPN انتخابیتان هماهنگ نگه میدارد.
Crispy VPN همچنین سیاست no activity logs دارد و از طراحی two-party relay استفاده میکند تا هویت شما از کاری که انجام میدهید جدا بماند. این موضوع مهم است چون حریم خصوصی DNS فقط به تونل مربوط نیست، بلکه به شیوه ساخت سرویس هم بستگی دارد تا اتصالهای غیرضروری کمتر شوند.
با این حال، VPN شما را ناشناس نمیکند. جلوی malware یا phishing را بهتنهایی نمیگیرد و وقتی وارد حساب یک سایت شدهاید، نمیتواند مانع شناسایی شما توسط همان سایت شود. همچنین کوکیهای ردیابی که قبلاً در مرورگر ذخیره شدهاند را پاک نمیکند.
به محافظت در برابر نشت DNS به چشم یک لایه نگاه کنید. این لایه کمک میکند متادیتای جستوجوی سایت از شبکه محلی و ISP دور بماند. بهتر است آن را با تنظیمات منطقی مرورگر، استفاده محتاطانه از حسابها، بهروزرسانی منظم و درک روشن از اینکه VPN دقیقاً چه چیزی را محافظت میکند ترکیب کنید.
اگر بعد از نصب VPN دارید تنظیماتتان را بررسی میکنید، فقط DNS را تست نکنید. IP عمومی، رفتار WebRTC، تنظیمات kill switch و تنظیمات مرورگر هم میتوانند روی حریم خصوصی اثر بگذارند. قدم بعدی کاربردی، آیا VPN من کار میکند؟ است که بررسیهای گستردهتر را مرحلهبهمرحله توضیح میدهد.



