تقریباً در صفحه تنظیمات هر روتر و شبکه، دو کادر یکسان با عنوانهای Preferred DNS و Alternate DNS دیده میشود. این نامگذاری چنین القا میکند که نشانی دوم، نسخه پشتیبان است و فقط زمانی وارد عمل میشود که سرور DNS نخست وظیفه خود را انجام ندهد.
این توصیف در نگاه اول منطقی است؛ اما آنچه هنگام ورود DNS ذخیره به جریان رخ میدهد، همیشه به این سادگی نیست و تا حد زیادی به نرمافزار یا دستگاهی بستگی دارد که درخواست را مدیریت میکند.
DNS جایگزین شما یک پشتیبان است
اما در دقیقترین تعریف، لزوماً آن کاری را نمیکند که تصور میکنید





در یک دستگاه معمولی، DNS عمدتاً همانگونه رفتار میکند که برچسبها نشان میدهند. دستگاه ابتدا از سرور ترجیحی پرسوجو میکند و تنها وقتی سراغ سرور جایگزین میرود که سرور ترجیحی کاملاً ساکت بماند؛ یعنی نه پاسخ کامل بدهد، نه پاسخ ناقص و نه هیچ چیز دیگر.
نکتهای که معمولاً توضیح داده نمیشود، نحوه تفسیر پاسخ میان این دو سرور است: پاسخ مسدودشده همچنان «پاسخ» محسوب میشود. برای نمونه، یکی از ارائهدهندگان محبوب نویسنده یعنی Quad9 هنگام مسدودکردن یک مقصد مخرب، پاسخ NXDOMAIN را برمیگرداند؛ پاسخی که در عمل یعنی «این دامنه وجود ندارد».
دستگاه راه مؤثری برای تشخیص تفاوت میان این حالت و دامنهای که واقعاً وجود ندارد، در اختیار ندارد. از دید دستگاه، درخواست DNS کامل شده است و بنابراین حتی برای دریافت نظر دوم به سرور Alternate DNS مراجعه نمیکند.
اگر DNS اصلی را با هدف مشخصی انتخاب کرده باشید، این رفتار خبر خوبی است. فیلترها یا محافظتهای آن معمولاً پابرجا میمانند، زیرا تا وقتی سرور اصلی پاسخ میدهد ــ حتی اگر پاسخ آن مسدودسازی باشد ــ نشانی جایگزین بلااستفاده باقی میماند.
با اضافهشدن روترها، ماجرا پیچیدهتر میشود
روتر DNS را متفاوت از دستگاه شما مدیریت میکند

بیشتر دستگاههای کاربر نهایی، مانند لپتاپ، رایانه شخصی و تلفن هوشمند، DNS را با الگوی «ابتدا یکی و سپس دیگری» مدیریت میکنند. با ورود روترها، سامانههای مش و دیگر تجهیزاتی که نقش مستقیمتری در DNS دارند، وضعیت کمی پیچیدهتر میشود.
مسئله از اینجا ناشی میشود که بعضی از انتقالدهندههای DNS همه نشانیهای پیکربندیشده را به یک اندازه معتبر میدانند و درخواستها را میان آنها توزیع میکنند؛ در مقابل، برخی دیگر تا زمان خرابی یا خارجشدن سرور نخست از دسترس، همان سرور را ترجیح میدهند.
بخشی از نرمافزار مورد استفاده در بسیاری از روترهای مصرفی و واحدهای مش، dnsmasq نام دارد. این نرمافزار کادرهای Preferred DNS و Alternate DNS را کمتر بهصورت سلسلهمراتب و بیشتر مانند یک فهرست کوتاه میبیند. مگر اینکه حالت strict-order فعال باشد ــ تنظیمی که اغلب کاربران از وجودش بیخبرند ــ dnsmasq همزمان از همه سرورهای شناختهشده پرسوجو میکند و سپس سروری را انتخاب میکند که زودتر پاسخ داده است.
سرور انتخابشده مدتی کنترل را در اختیار دارد. این انتخاب فقط وقتی کنار گذاشته و دوباره ارزیابی میشود که پاسخ SERVFAIL یا REFUSED دریافت شود، کارخواه به مهلت زمانی برسد و درخواست را تکرار کند، یا حدود ۵۰ پرسوجو یا ۱۰ ثانیه سپری شود. هیچیک از این شرایط به کادری که در پنل مدیریت با عنوان «اصلی» مشخص کردهاید وابسته نیست.
سازندگان معمولاً مستند نمیکنند که هر روتر دقیقاً چگونه DNS را مدیریت میکند. این تصمیم تا حدی قابل درک است، زیرا بیشتر کاربران تنظیمات DNS را دستکاری نمیکنند و ارائه چنین جزئیاتی برای عموم سود چندانی ندارد.
این رفتار الزاماً یک اشکال نرمافزاری هم نیست؛ سامانه از ابتدا به همین شکل طراحی شده، هرچند با تصور رایج کاربران تفاوت دارد. روتر یا دستگاه مشابه میتواند بهجای اتکا به یک حلکننده، بار DNS را میان مجموعهای از منابع پخش کند. بسته به شیوه مدیریت چند سرور DNS در سختافزار شما، ممکن است بعضی پرسوجوها حتی هنگام سلامت کامل سرور ترجیحی، همچنان به سروری برسند که آن را Alternate نامیدهاید.
چرا شیوه مدیریت DNS جایگزین مهمتر از تصور شما است؟
اینترنت قطع نیست، اما بخشی از محافظتها از کار افتاده است

با این توضیحات، احتمالاً میپرسید مشکل اساسی هر یک از این روشها چیست.
موضوع به تفاوت میان Primary DNS و Alternate DNS و قابلیتهای ارائهشده بازمیگردد. معمولاً یک ارائهدهنده DNS با هدف مشخصی انتخاب میشود: مسدودسازی تبلیغات، محافظت در برابر بدافزار، سیاست ثبتنکردن گزارشها، سرعت بیشتر در حل نام و موارد مشابه.
اگر ارائهدهنده DNS پشتیبان همان قابلیتها را نداشته باشد و بیش از مواقع اضطراری استفاده شود، با جابهجایی درخواستها هر یک از آن مزایا را از دست میدهید. این وضعیت ناسازگاری وارد شبکه میکند و میتواند به مشکلات دیگری نیز منجر شود.
ممکن است یک دامنه مخرب در یک لحظه مسدود شود و در لحظهای دیگر بهطور عادی حل شود. اگر دو ارائهدهنده زیرساخت یا حافظه نهان متفاوتی داشته باشند، عملکرد نیز تغییر میکند. این تفاوتها آنقدر شدید نیستند که مانند خرابی آشکار به نظر برسند، اما رفتار اینترنت را کمتر از آنچه انتظار دارید قابل پیشبینی میکنند.
عیبیابی نیز دشوارتر میشود. اگر دو ارائهدهنده DNS بار کاری را تقسیم کنند، یک وبسایت ممکن است از یک مراجعه تا مراجعه بعدی رفتاری متفاوت داشته باشد و شما را درگیر مشکلی کند که فقط گاهی ظاهر میشود.
مرورگرها این وضعیت را پیچیدهتر کردهاند، زیرا بیشتر آنها اکنون امکان استفاده از DNS رمزگذاریشده را فراهم میکنند؛ تنظیمی که میتواند پیکربندی سطح دستگاه یا روتر را بهطور کامل نادیده بگیرد. مسئله زیربنایی همان است، اما در لایهای دیگر: DNS دیگر فقط یک تنظیم نیست، بلکه چند تنظیم روی هم قرار گرفتهاند و هر لایه میتواند لایه پایینتر را کنار بزند.
برای DNS جایگزین واقعاً چه باید کرد؟
هر دو نشانی را از یک خانواده انتخاب کنید
نویسنده میپذیرد که در گذشته خودش نیز ارائهدهندگان متفاوتی را بهعنوان پشتیبان اضافه کرده است. او مشکل بزرگی مشاهده نکرده، اما ممکن است دلیلش این باشد که با دقت کافی رفتار شبکه را زیر نظر نداشته است.
سادهترین راهحل این است که از نشانی DNS جایگزین همان ارائهدهنده استفاده کنید، نه اینکه نشانی اصلی دو ارائهدهنده متفاوت را کنار هم قرار دهید. این دو نشانی IP معمولاً به یک سرویس DNS واحد روی زیرساختهای جداگانه اشاره میکنند؛ بنابراین بدون تغییر در فیلترینگ، سیاست حریم خصوصی یا ویژگیهای عملکردی سرویس، افزونگی خواهید داشت.
برای نمونه، Cloudflare نشانیهای 1.1.1.1 و 1.0.0.1 را ارائه میدهد. Quad9 نیز نشانیهای 9.9.9.9 و 149.112.112.112 را در اختیار میگذارد. بیشتر سرویسهای فیلترکننده دقیقاً به همین دلیل یک جفت نشانی هماهنگ منتشر میکنند. در این حالت، صرفنظر از اینکه دستگاه، روتر یا سامانه مش چگونه دو ورودی را مدیریت میکند، دیگر نگران از دستدادن همان رفتاری نخواهید بود که به خاطر آن ارائهدهنده را انتخاب کردهاید.
به این ترتیب، یک حلکننده DNS مطمئن در اختیار دارید و لازم نیست بابت مشکلات شبکه ناشی از ترکیب دو ارائهدهنده ناسازگار نگران باشید.
منبع: این مطلب یک بومیسازی و بازنویسی تحریریهای بر اساس مقالهای از MakeUseOf نوشته Gavin Phillips است: مشاهده مقاله اصلی.