• Blog
  • DNS چیست و چگونه کار می کند؟

DNS چیست و چگونه کار می کند؟

19.10.2023   |   9 دقیقه

فهرست مطالب

DNS چیست و چگونه کار می کند؟

آیا شما یک شهروند آگاه از حریم خصوصی هستید که در تلاش بی پایانی برای جلوگیری از دسترسی به داده های آنلاین خود توسط دیگران هستید؟ اگر بله، تبریک میگویم که فعال هستید. اما، در حالی که شما حریم خصوصی خود را ارزیابی میکنید، مهم است که همه خطراتی که در دنیای دیجیتال در حال انتظار شما هستند را درک کنید. یکی از این خطرات ظریف ولی مهم، نشت DNS است. اکنون شاید شما تعجب کنید که نشت DNS چیست؟ چرا باید اهمیتی به آن بدهم؟ بیایید این مسئله که اغلب نادیده گرفته میشود را بررسی کنیم که ممکن است به آرامی از سپر حریم خصوصی آنلاین شما کاسته شود.

DNS چیست؟

سیستم نام دامنه (DNS) به معنای سیستم نام دامنه است، که نام های دامنه قابل خواندن توسط انسان (مانند www.google.com) را به آدرس های IP قابل خواندن توسط ماشین (مانند 192.0.xx.xx) ترجمه می کند.

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

چگونه DNS کار می کند؟

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

نوع سرورهای DNS و نحوه عملکرد آنها

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

سلسله ترتیب DNS شامل انواع مختلفی از سرورها است، که سطح بالاترین آنها سرورهای ریشه هستند. این سرورهای ریشه درخواست ها را به سرورهای مناسب دامنه های بالاتری (مانند .com، .org) که اطلاعات مربوط به افزونه های دامنه خاص را نگهداری می کنند، هدایت می کنند. سپس سرورهای TLD درخواست را به سرورهای DNS معتبر که مسئول نام های دامنه فردی هستند، منتقل می کنند.

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

سرورهای DNS ریشه: این سرورهای DNS سطح بالا در سلسله مراتب DNS هستند. آنها مسئول ارائه اطلاعات در مورد سرورهای اختیاری برای دامنه های سطح بالا (TLD) مانند .com ، .org ، .net و غیره هستند. در سراسر جهان 13 مجموعه سرور DNS ریشه توزیع شده است.

سرورهای DNS TLD: این سرورها مسئول دامنه‌های بالارده خاصی مانند .com، .org، .net و غیره هستند. به عنوان مثال، سرور TLD .com مسئول ارائه اطلاعات درباره دامنه‌هایی است که با .com پایان می‌یابند.

سرورهای DNS معتبر: سرورهای DNS معتبر رکوردهای DNS (مانند رکوردهای A، رکوردهای AAAA، رکوردهای CNAME و غیره) را برای دامنه‌های خاص ذخیره می‌کنند. هنگامی که یک پرس و جوی DNS برای یک دامنه انجام می‌شود، سرور DNS معتبر برای آن دامنه آدرس IP یا سایر اطلاعات مرتبط را ارائه می‌دهد.

سرورهای DNS بازگشتی: همچنین به عنوان یک رزولور شناخته می‌شوند، نوعی سرور DNS است که توسط ارائه دهندگان خدمات اینترنت (ISP) یا سایر مدیران شبکه برای پردازش پرسش‌های DNS به نمایندگی از کاربران خود استفاده می‌شود. وقتی شما یک URL وبسایت را در مرورگر خود وارد می‌کنید، دستگاه شما پرسش DNS بازگشتی را ارسال می‌کند که سپس به صورت بازگشتی دامنه را حل می‌کند تا به یک سرور DNS اختیاری برسد و آدرس IP را به دستگاه شما برگرداند.

فرایند رزولوشن DNS

فرآیند رزولوشن DNS شامل چند مرحله است که معمولاً شامل تعاملات بین چندین سرور DNS می‌شود.

مرحله ۱: جستجوی حافظه نهان DNS محلی

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

مرحله ۲: سرورهای DNS بازگشتی

اگر نام دامنه در حافظه موقت محلی پیدا نشود یا منقضی شده باشد، مرحله بعدی تماس با یک سرور DNS بازگشتی است. این معمولاً توسط ارائه دهنده خدمات اینترنت (ISP) شما یا یک رزولور DNS عمومی مانند Google Public DNS یا Cloudflare DNS ارائه می شود.

مرحله ۳: جستجوی سرور DNS بازگشتی

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

مرحله ۴: سرورهای DNS اصلی

سرورهای DNS ریشه بخش حیاتی از زیرساخت DNS هستند. آنها سرورهای DNS سطح بالا در سیستم سلسله مراتبی DNS هستند. در سراسر جهان 13 مجموعه سرور DNS ریشه توزیع شده است. سرور DNS بازگشتی یکی از این سرورهای ریشه را پرس و جو می کند تا سرور DNS مسئول دامنه سطح بالای درخواست شده (مانند ".com" برای "example.com") را پیدا کند.

مرحله ۵: سرورهای DNS TLD

یک بار سرور DNS بازگشتی آدرس IP سرور DNS TLD مسئول برای پسوند دامنه (مانند ".com") را دریافت کند، سرور DNS TLD را استعلام می‌کند.

مرحله ۶: سرورهای DNS معتبر

سرور DNS TLD با آدرس IP سرور DNS مختصر برای نام دامنه خاص (مانند "example.com") پاسخ می دهد. این سرور DNS مختصر توسط صاحب دامنه یا ارائه دهنده DNS آن مدیریت می شود و اطلاعات به روزتری در مورد رکوردهای DNS دامنه دارد.

مرحله ۷: جستجوی رکورد DNS

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

مرحله ۸: پاسخ به دستگاه‌های شما

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

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

یک DNS نشت چیست؟

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

نشته می‌تواند حریم خصوصی و امنیت آنلاین شما را به خطر بیاندازد زیرا این شرکت‌های سوم قادرند فعالیت‌های اینترنتی شما را نظارت و پیگیری کنند.

چگونه یک نشت DNS رخ می‌دهد؟

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

مرحله ۱: شما به یک VPN متصل می‌شوید

کاربر یک ارتباط VPN را برای امن کردن اتصال اینترنتی خود و حفظ حریم خصوصی خود راه‌اندازی می‌کند.

مرحله ۲: رفع مشکل DNS

وقتی کاربر سعی می‌کند به یک وبسایت یا منبع آنلاین دسترسی پیدا کند، کامپیوتر یا دستگاه آنها به طور معمول یک درخواست DNS ارسال می‌کند تا نام دامنه وبسایت را به یک آدرس IP تبدیل کند. این درخواست DNS قرار است از طریق تونل VPN هدایت شود.

مرحله ۳: مشکل پیکربندی مسیر

گاهی اوقات، به دلیل تنظیمات نادرست یا باگ‌های نرم‌افزاری، کامپیوتر شما ممکن است نتواند درخواست DNS را از طریق تونل VPN مسیریابی کند. به جای آن، درخواست ممکن است مسیر شبکه پیش‌فرض را دنبال کند و به رزولور DNS ارائه دهنده خدمات اینترنت شما برسد.

مرحله ۴: یک نشت DNS رخ می‌دهد

درخواست DNS از تونل VPN عبور می کند و به رزولوشن دهنده DNS ISP یا سرور DNS دیگری می رسد که می تواند فعالیت آنلاین شما را ببیند و آدرس IP شما را به ثبت برساند. این به عنوان یک نشت DNS شناخته می شود.

مرحله ۵: افشای فعالیت آنلاین

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

چه عواملی باعث وقوع نشت DNS می‌شود؟

۱. پیکربندی دستی وی پی ان: هنگامی که شما به صورت دستی یک وی پی ان را در سیستم های مختلف پیکربندی می کنید، خطر نشت DNS افزایش می یابد.

۲. تنظیمات نادرست: یک نشت DNS رخ می‌دهد وقتی دستگاه شما به طور تصادفی یا عمدی درخواست‌های DNS را خارج از تونل VPN ارسال می‌کند و سرورهای DNS VPN را دور می‌زند. ISP شما یا سرورهای DNS شخص ثالث می‌توانند وبسایت‌هایی که شما در حال بازدید از آنها هستید را ببینند و ثبت کنند، حتی اگر VPN ترافیک اینترنتی شما را رمزگذاری کند.

۳. رسیدگی به درخواست‌های DNS: به طور پیش فرض، درخواست‌های DNS دستگاه شما (ترجمه نام دامنه به آدرس IP) معمولاً توسط سرورهای DNS ارائه دهنده خدمات اینترنت شما رسیدگی می‌شوند. با این حال، هنگام استفاده از یک VPN، انتظار دارید درخواست‌های DNS شما از طریق تونل رمزگذاری شده VPN عبور کرده و توسط سرورهای DNS ارائه دهنده VPN برای حفظ حریم خصوصی بهبود یابند.

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

چرا باید از نشت DNS اهمیت بدهید؟

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

۲. دور زدن محدودیت‌های جغرافیایی: مردم اغلب از VPN برای دسترسی به محتوا یا خدماتی که در منطقه خود قابل دسترسی نیستند استفاده می‌کنند. نشتی DNS می‌تواند موقعیت واقعی شما را فاش کند و شما دیگر قادر به دور زدن محدودیت‌های جغرافیایی به طور موثر نباشید.

۳. پیگیری و نظارت بالقوه: سرورهای DNS شخص ثالث ممکن است درخواست‌های DNS شما را ثبت کنند، که می‌تواند منجر به پیگیری رفتار آنلاین شما و ساختن یک پروفایل درباره شما شود.

خطرهای امنیتی: برخی از وبسایت‌ها از HTTPS با استفاده از HSTS (امنیت حمل و نقل سختگیرانه HTTP) برای اطمینان از اتصالات رمزنگاری شده استفاده می‌کنند. با این حال، اگر درخواست‌های DNS شما فاش شوند، یک حمله‌کننده می‌تواند از تکنیک‌های قربانی کردن DNS استفاده کند تا شما را به نسخه‌ی خبیث وبسایت هدایت کند و از محافظت HTTPS عبور کند.

چگونه تست نشت DNS انجام دهیم؟

1. بررسی آدرس IP خود را انجام دهید: قبل از ادامه دادن به آزمون نشت DNS، آدرس IP فعلی خود را بدون استفاده از VPN بررسی کنید. می توانید در موتور جستجویی عبارت "آدرس IP من چیست" را جستجو کنید تا آدرس IP عمومی خود را پیدا کنید.

۲. به VPN متصل شوید: سپس به سرویس VPN دلخواه خود روی دستگاه خود متصل شوید. مطمئن شوید که VPN فعال و به درستی در حال اجرا است.

3. بازدید از صفحه ابزارهای امنیتی X-VPN و انتخاب آزمون نشت DNS. ما راهنمای مرحله به مرحله در این صفحه داریم.

۴. نتایج را بررسی کنید: اگر آدرس IP نمایش داده شده متفاوت با آدرس IP اختصاص داده شده توسط ISP شما باشد، به طور کلی به معنای استفاده از سرور DNS خود VPN است. این نشان می دهد که درخواست های DNS به طور امن توسط VPN پردازش می شوند و هیچ نشتی DNS وجود ندارد. و اگر به X-VPN متصل هستید، می توانید ببینید "بدون نشت، شما توسط X-VPN محافظت می شوید" در بالا.

🙌 بونوس: ما ابزارهای امنیتی ساده‌تری را در این صفحه راه‌اندازی کرده‌ایم، از جمله بررسی آدرس IP، تست نشت WebRTC، تست نشت IPv6 و تولید کننده رمز عبور. ابزارهای بیشتری در حال آماده‌سازی هستند. ما بسیار خوشحال هستیم که شما را به کاوش در آنها دعوت کنیم.

چگونه از نشت DNS جلوگیری کنیم؟

۱. یک VPN قابل اعتماد انتخاب کنید: یک سرویس VPN معتبر را انتخاب کنید که به صراحت حفاظت از نشت DNS را به عنوان یکی از ویژگی‌های خود ذکر کند. بیشتر VPN های معتبر تنظیمات پیش‌فرض حفاظت از نشت DNS را در داخل برنامه‌های خود ارائه می‌دهند.

۲. استفاده از OpenDNS یا Google DNS: برخی از VPN ها به شما اجازه می دهند تا سرورهای DNS را به صورت دستی پیکربندی کنید. سرورهای DNS خود را به گزینه های قابل اعتماد مانند OpenDNS (208.67.222.222 و 208.67.220.220) یا Google DNS (8.8.8.8 و 8.8.4.4) تنظیم کنید. این سرورها به طور کلی امن تر و کمتر احتمالاً نشتی دارند.

۳. غیرفعال کردن تریدو: تریدو یک فناوری است که برای انتقال IPv6 استفاده می شود. گاهی اوقات می تواند باعث نشت DNS شود. شما می توانید تریدو را از طریق دستورالعمل یا پاورشل در ویندوز غیرفعال کنید.

۴. غیرفعال کردن WebRTC: ارتباط زمان واقعی وب (WebRTC)) گاهی اوقات ممکن است آدرس IP محلی شما را فاش کند، حتی هنگام استفاده از یک VPN. برخی از ارائه دهندگان VPN حفاظت درونی در برابر نشت WebRTC را ارائه می دهند، یا شما می توانید از افزونه های مرورگر استفاده کنید تا WebRTC را غیرفعال کنید.

۵. به طور منظم به روز رسانی و نظارت کنید: نرم افزار VPN خود را به آخرین نسخه به روز رسانی کنید. به طور دوره ای تست های نشت DNS را اجرا کنید تا از هر نشتی محتمل بررسی کنید.

برای جلوگیری از نشت DNS، یک ارائه دهنده VPN معتبر با حفاظت درونی در برابر نشت DNS انتخاب کنید. علاوه بر این، می توانید با استفاده از ابزارهای آنلاین مختلف، VPN خود را برای نشت DNS آزمایش کنید و اقداماتی را برای پیکربندی دستی تنظیمات DNS دستگاه خود انجام دهید تا از هر نشتی جلوگیری کنید. همیشه درباره حریم خصوصی و امنیت آنلاین خود مراقب باشید و به طور منظم تنظیمات و ویژگی های VPN خود را مرور کنید.