پروتکل‌های DNS و حریم خصوصی

راهنمای جامع درک DNS، نقش آن در سانسور و نظارت در ایران، و نحوه استفاده از پروتکل‌های رمزنگاری‌شده (DoH، DoT) برای محافظت از ردپای دیجیتال شما.

Time10 minutes

پروتکل‌های DNS و حریم خصوصی

سامانه نام دامنه (DNS) اغلب به عنوان «دفترچه تلفن اینترنت» توصیف می‌شود. این سامانه نام‌های دامنه قابل خواندن برای انسان (مانند google.com) را به آدرس‌های عددی IP (مانند 142.250.180.14) که رایانه‌ها برای اتصال به یکدیگر از آن استفاده می‌کنند، ترجمه می‌کند.

برای کاربران در ایران، درک DNS تنها یک دانش فنی ساده نیست؛ بلکه مولفه‌ای حیاتی برای دور زدن سانسور و محافظت از حریم خصوصی است. زیرساخت فیلترینگ جمهوری اسلامی برای مسدود کردن دسترسی به وب‌سایت‌ها و اپلیکیشن‌ها، به شدت بر دستکاری ترافیک DNS متکی است.

مشکل حریم خصوصی در DNS استاندارد

به طور سنتی، درخواست‌های DNS به صورت متن ساده (رمزنگاری نشده) در شبکه (معمولاً روی پورت UDP 53) ارسال می‌شوند. این موضوع دو خطر امنیتی بزرگ ایجاد می‌کند:

۱. نظارت (Surveillance): هر نهادی که بین دستگاه شما و سرور DNS قرار دارد—از جمله ارائه‌دهنده خدمات اینترنت شما (ISP) مانند ایرانسل، همراه اول یا مخابرات، مدیران شبکه، یا آژانس‌های نظارتی دولتی—می‌تواند دقیقاً ببیند که شما درخواست بازدید از چه وب‌سایت‌هایی را دارید. ۲. سانسور و ربایش (Hijacking): از آنجا که درخواست‌ها قابل مشاهده هستند، می‌توانند رهگیری شوند. در ایران، فایروال فیلترینگ اغلب این درخواست‌ها را بررسی می‌کند. اگر شما درخواست دامنه‌ای سانسور شده (مثلاً twitter.com) را ارسال کنید، فایروال بسته را رهگیری کرده و یک پاسخ جعلی (DNS Poisoning) ارسال می‌کند. این کار شما را به یک صفحه مسدودسازی (مانند پیوندها) هدایت کرده یا باعث قطع شدن اتصال می‌شود.


پروتکل‌های DNS رمزنگاری شده

برای حل مشکلات نظارت و دستکاری، پروتکل‌های جدیدی برای رمزنگاری درخواست‌های DNS توسعه یافته‌اند.

۱. DNS بر بستر HTTPS (DoH)

پروتکل DoH درخواست‌های DNS شما را رمزنگاری کرده و آن‌ها را از طریق پروتکل HTTPS (پورت ۴۴۳) ارسال می‌کند و باعث می‌شود این ترافیک در میان ترافیک عادی و امن وب پنهان شود.

  • مزایا: تشخیص آن برای سانسورچی‌ها بسیار دشوار است. مسدود کردن DoH معمولاً نیازمند مسدود کردن IP خاص ارائه‌دهنده یا ایجاد اختلال در کل ترافیک HTTPS است.
  • اهمیت برای ایران: DoH معمولاً موثرترین روش برای دور زدن سانسور مبتنی بر DNS در ایران است، چرا که پورت ۴۴۳ به ندرت به طور کامل مسدود می‌شود.

۲. DNS بر بستر TLS (DoT)

پروتکل DoT ترافیک DNS را با استفاده از پروتکل TLS روی یک پورت اختصاصی (پورت ۸۵۳) رمزنگاری می‌کند.

  • مزایا: تفکیک تمیزتر ترافیک DNS از ترافیک وب و پشتیبانی بومی توسط اندروید (گزینه Private DNS).
  • اهمیت برای ایران: از آنجا که DoT از یک پورت مشخص (۸۵۳) استفاده می‌کند، شناسایی و مسدود کردن آن برای فایروال‌های ایران بدون تاثیر بر سایر مرورهای وب آسان‌تر است. اگر «Private DNS» در گوشی اندرویدی شما از کار افتاد، احتمالاً پورت ۸۵۳ برای آن ارائه‌دهنده مسدود شده است.

۳. DNSCrypt

یک پروتکل قدیمی‌تر که ترافیک DNS را احراز هویت و رمزنگاری می‌کند. با وجود قدرت بالا، نیازمند نرم‌افزار خاص (مانند DNSCrypt-Proxy) است و نسبت به DoH یا DoT کمتر توسط سیستم‌عامل‌ها به صورت بومی پشتیبانی می‌شود.


محدودیت‌ها: آنچه DNS رمزنگاری شده مخفی نمی‌کند

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

۱. قابلیت مشاهده آدرس IP: حتی اگر از DoH استفاده کنید، ISP شما همچنان می‌تواند آدرس IP سروری که پس از جستجو به آن متصل می‌شوید را ببیند. ۲. نشانگر نام سرور (SNI): زمانی که مرورگر شما یک اتصال امن (HTTPS) به یک وب‌سایت برقرار می‌کند، نام دامنه را در بسته "Client Hello" به صورت متن ساده ارسال می‌کند. این موضوع به رژیم اجازه می‌دهد ببیند شما از چه سایتی بازدید می‌کنید، حتی اگر DNS شما رمزنگاری شده باشد. - نکته درباره ECH: فناوری جدیدتری به نام Encrypted Client Hello (ECH) سعی در رفع نشت SNI دارد. با این حال، سیستم‌های سانسور (از جمله در ایران و روسیه) فعالانه تلاش می‌کنند تا اتصالات ECH را مسدود کنند.


ارائه‌دهندگان DNS پیشنهادی

هنگام انتخاب یک ارائه‌دهنده DNS، اولویت را به آن‌هایی بدهید که سیاست‌های حفظ حریم خصوصی قوی (عدم ثبت لاگ)، پشتیبانی از DNSSEC (اعتبارسنجی امنیتی) و پایداری بالا دارند.

ارائه‌دهندهنام میزبان DoT (اندروید)آدرس DoHویژگی‌های حریم خصوصی
Quad9dns.quad9.nethttps://dns.quad9.net/dns-queryمسدودسازی بدافزارها؛ قوانین حریم خصوصی سوئیس.
Cloudflare1dot1dot1dot1.cloudflare-dns.comhttps://cloudflare-dns.com/dns-queryسرعت بالا؛ نگهداری لاگ‌ها تنها برای ۲۴ ساعت (بی‌نام).
Mullvaddoh.mullvad.nethttps://doh.mullvad.net/dns-queryعدم ثبت لاگ؛ متعلق به شرکت VPN قابل اعتماد.
Googledns.googlehttps://dns.google/dns-queryپایدار؛ اما در معرض جمع‌آوری داده‌ها تحت قوانین آمریکا.

نحوه فعال‌سازی DNS رمزنگاری شده

در اندروید (نسخه ۹ و بالاتر)

اندروید به صورت بومی از DNS بر بستر TLS (DoT) از طریق قابلیت "Private DNS" پشتیبانی می‌کند.

۱. به مسیر Settings > Network & Internet > Private DNS بروید. ۲. گزینه Private DNS provider hostname را انتخاب کنید. ۳. نام میزبان ارائه‌دهنده انتخابی خود را وارد کنید (مثلاً dns.quad9.net). ۴. ذخیره کنید (Save).

عیب‌یابی: اگر پس از فعال‌سازی اینترنت شما قطع شد، احتمالاً پورت (۸۵۳) توسط ISP مسدود شده است. آن را خاموش کنید یا ارائه‌دهنده دیگری را امتحان کنید.

در مرورگرهای وب (فایرفاکس/کروم)

مرورگرها از DNS بر بستر HTTPS (DoH) استفاده می‌کنند.

فایرفاکس (Firefox):

۱. به Settings > Privacy & Security بروید. ۲. به پایین اسکرول کنید تا به بخش DNS over HTTPS برسید. ۳. گزینه "Max Protection" یا "Increased Protection" را انتخاب کرده و یک ارائه‌دهنده را برگزینید (یا یک مورد سفارشی اضافه کنید).

کروم / بریو (Chrome / Brave):

۱. به مسیر Settings > Privacy and security > Security بروید. ۲. گزینه "Use secure DNS" را فعال کنید. ۳. گزینه "With" را انتخاب کرده و یک ارائه‌دهنده را تعیین کنید.

ابزارهای تخصصی: RethinkDNS

برای کاربران اندروید در ایران، RethinkDNS یک ابزار متن‌باز بسیار پیشنهادی است.

  • چرا: این برنامه یک فایروال را با یک تحلیل‌گر DNS رمزنگاری شده ترکیب می‌کند.
  • ویژگی: می‌تواند درخواست‌های DNS را از طریق Tor یا پروکسی‌های خاص (DoH/DoT/DNSCrypt) هدایت کند که آن را در برابر سانسور بسیار مقاوم می‌سازد.

جلوگیری از نشت DNS (DNS Leaks)

«نشت DNS» زمانی رخ می‌دهد که شما از VPN استفاده می‌کنید، اما درخواست‌های DNS شما همچنان خارج از تونل رمزنگاری شده VPN به ISP ارسال می‌شود. این موضوع تاریخچه مرور شما را برای ISP فاش می‌کند.

نحوه تست نشت:

۱. به VPN خود وصل شوید یا DNS رمزنگاری شده را تنظیم کنید. ۲. به سایت DNSLeakTest.com یا BrowserLeaks بروید. ۳. گزینه "Extended Test" را اجرا کنید. ۴. تحلیل نتیجه: شما باید فقط آدرس‌های IP متعلق به ارائه‌دهنده VPN یا ارائه‌دهنده DNS انتخابی خود را ببینید. اگر نام‌هایی مثل "Irancell"، "MCI" یا "Telecommunication Company of Iran" را مشاهده کردید، DNS شما در حال نشت است.

رفع نشت:

  • مطمئن شوید که کلاینت VPN شما گزینه "DNS Leak Protection" را فعال داشته باشد.
  • تنظیمات DNS رمزنگاری شده را به صورت دستی در مرورگر یا سیستم‌عامل خود اعمال کنید.
منبع:
Edit