برای درک DNS outage باید با مفهوم DNS آشنایی داشته باشید. در صورت قطع شدن DNS، کلاینت ها نمی توانند نام دامنه شما را ترجمه کنند، بنابراین با خطا مواجه می شوند. در نتیجه امکان دسترسی به سایت یا اپلیکیشن شما را نخواهند داشت. "خرابی DNS" یا DNS downtime می تواند به عصبانی شدن مشتریان، از دست رفتن فروش و بدنامی برند منجر شود. شما می توانید به عنوان یک وبمستر از قطع شدن DNS جلوگیری کنید.
DNS outage یا DNS downtime چه معنایی دارد؟
DNS outage یا "قطع DNS" (با نام مستعار DNS downtime یا DNS failure) یک بازه زمانی است که امکان ترجمه نام دامنه به آدرس IP وجود ندارد. در این وضعیت کلاینت ها یک درخواست DNS برای نام دامنه موردنظر ارسال می کنند اما DNS بازگشتی (DNS recursive) یا با آدرس IP قدیمی موجود در حافظه کش خود پاسخ می دهد که در دسترس نخواهد بود یا سعی می کند از authoritative name server (دارنده نهایی IP دامنه مورد نظر شما) درخواست نماید اما جوابی نمی گیرد.
تصویر(1)
چه چیزی باعث DNS outage یا "قطع DNS" می شود؟
حملات DDoS
DDoS یا حمله انکار سرویس، نوعی حمله سایبری است که توسط چندین دستگاه مرتبط با یک دیگر، رایانه قربانی را هدف قرار میدهد. برای جلوگیری از هرگونه مشکلی که حمله DDoS می تواند ایجاد کند، به یک load balancing نیاز دارید تا بتواند ترافیک را بین سرورهای شما به اشتراک بگذارد. همچنین، به سرورهایی نیاز خواهید داشت که در برابر DDoS محافظت شده باشند.
تعمیر و نگهداری authoritative name server
اگر فقط از یک authoritative name server استفاده می کنید، هر اتفاقی که برای آن بیفتد، می تواند بر DNS شما تأثیر بگذارد. اگر سرور نیاز به بروزرسانی و راهاندازی مجدد داشته باشد، در مدت زمان انجام آن، نمیتواند به درخواستهای DNS پاسخ دهد. همواره در نظر داشته باشید که بروزرسانیها و تعمیرات ضروری است، بنابراین باید یک DNS ثانویه (Secondary DNS) داشته باشید که بتواند به درخواست ها پاسخ دهد.
مشکل در مرکز داده ای که authoritative name server قرار دارد
تجهیزات ابری در مراکز داده متعددی قرار دارند. این مکان ها می توانند با مشکلاتی مانند قطعی طولانی مدت برق، بلایای طبیعی که منطقه را تحت تأثیر قرار می دهند، آتش سوزی یا مشکلات دیگر روبرو باشند. اگر از یک سرویس ابری استفاده می کنید، کنترل این مشکلات در اختیار شما قرار ندارد اما می توانید از چندین سرور در مراکز داده مختلف بهره مند شوید. اگر یک سرور از کار بیفتد، سایر سرورها برای پاسخگویی به درخواست ها آماده هستند.
پیکربندی بد
خطا در پیکربندی DNS می تواند باعث خرابی آن شود. این خطا ممکن است بر اثر یک اشتباه انسانی، مانند آدرس دهی نادرست ناشی از غلط املایی آدرس IP یا نام دامنه، خطای اسکریپت، پیکربندی اشتباه فایروال و غیره رخ دهد. اگر مشکل غلط املایی است، می توانید نام دامنه و آدرس IP را درخواست کنید تا مشخص شود که کدام یک پاسخ مناسبی ارائه می دهند. چنانچه در فایروال مشکلی وجود داشت، می توانید دسترسی به پورت ها را بررسی نمایید.
تاخیر در انتشار DNS
وقتی رکوردهای DNS را اضافه یا حذف می کنید (مانند رکوردهای A یا AAAA)، تغییرات به صورت فوری اعمال نمی شوند. ویرایش فایل zone در داخل سرور DNS اولیه انجام می شود و سپس به سرورهای DNS ثانویه انتقال می یابد اما بسیاری از سرورهای DNS recursive وجود دارند که تحت کنترل شما نیستند. ممکن است حتی پس از انتشار یک آدرس جدید، آنها آدرس IP قدیمی را نگهداری کنند و به کلاینت ها ارائه دهند.
تصویر(2)
کاری که میتوانید در مورد انتشار DNS انجام دهید این است که zone را به سرورهای ثانویه انتقال داده و مقادیر TTL کمتری را برای رکوردهای DNS خود تنظیم نمایید. این موضوع از نظر فنی یک DNS outage یا "قطع DNS" نیست زیرا فقط روی کسانی که آدرس IP حافظه کش قدیمیتر نام دامنه را دارند تأثیر میگذارد اما لازم است که از آن مطلع باشید.
نحوه جلوگیری از خرابی (قطع) DNS
بهترین راه برای جلوگیری از قطع DNS، استفاده از یک شبکه DNS قدرتمند است که افزونگی (redundancy) را فراهم می کند و می تواند ترافیک شدید را تحمل نماید. هر چه سرورهای بیشتری داشته باشید، آمادگی بالاتری خواهید داشت. همچنین ویژگیهای اضافی ممکن است مدیریت DNS را تسهیل کرده و فرآیند رسیدگی به مشکلات را خودکارسازی کند.
از خدمات DNS ثانویه (Secondary) استفاده کنید
سرویس DNS ثانویه، این فرصت را برای شما فراهم می کند تا از چندین سرور DNS ثانویه استفاده کنید که می توانند به صورت authoritative nameservers تنظیم شوند. آنها یک کپی از فایل zone به همراه رکوردهای DNS خواهند داشت که می توانند به درخواست های دامنه، مانند DNS اولیه پاسخ دهند. مزیت بزرگ DNS ثانویه، پاسخگویی به درخواست ها حتی در زمان خرابی DNS اولیه (Primary) است. DNS ثانویه یک پشتیبان برای DNS شما خواهد بود.
از DNS load balancing یا "متعادل کننده لود DNS" استفاده کنید
DNS load balancing نیز یکی دیگر از راههای مفید برای کاهش احتمال DNS outage است. این مورد مکانیزمی است که برای مدیریت ترافیک بین سرورهای DNS بر اساس معیارهایی مانند تعداد اتصالات فعال، الگوریتم خاص، زمان اتصال و غیره استفاده می شود. این قابلیت موجب کاهش فشار روی یک سرور DNS خاص شده و آن را در شبکه پخش می کند. در صورت حمله DDoS یا افزایش طبیعی ترافیک ناشی از درخواست های مشتریان، DNS load balancing کمک کننده خواهد بود.
از DNS Failover کمک بگیرید
DNS Failover یک ماشه است که در صورت خرابی nameserver ها فعال می شود. بر اساس اطلاعاتی که از معیارهای DNS مانند پینگ ICMP، درخواستهای UDP، مقادیر HTTP و غیره دریافت میکند، میتواند به طور خودکار ترافیک را بدون هیچ اقدامی از سمت شخص فیزیکی، تغییر مسیر دهد.
عیب یابی
وقتی دامنه شما در دسترس نیست، چه کاری می توانید انجام دهید؟
به عنوان مدیر DNS نام دامنه، می توانید اقدامات زیر را انجام دهید:
- بررسی کنید که آیا هزینه نام دامنه خود را پرداخت نموده اید. اگر فراموش کرده اید هزینه نام دامنه خود را پرداخت کنید، پس از انقضا به درخواست ها پاسخ نمی دهد. برای تمدید دامنه یادآور تنظیم نمایید تا زمان پرداخت را فراموش نکنید.
- دستور ping را جهت بررسی دسترسی به سرور DNS از مکانهای مختلف استفاده کنید تا نحوه پاسخگویی آن به درخواستهای DNS مشخص گردد. این امکان وجود دارد که nameserver های خود را به درستی تنظیم نکرده باشید و به درخواست های دامنه پاسخ ندهند.
- سعی نمایید تا با استفاده از آدرس IP به سرور DNS دسترسی پیدا کنید. اگر دسترسی امکان پذیر نبود، ممکن است یک رکورد A یا AAAA با پیکربندی اشتباه وجود داشته باشد که نام دامنه و آدرس IP آن را به خوبی پیوند نمی دهد.
- ترافیک DNS خود را ذخیره کنید. اگر نمیتوانید گزارش را ثبت نمایید، فعالیتهای غیرعادی قبل از توقف کار سرور را مورد بررسی قرار دهید. به عنوان مثال، ممکن است یک حمله DDoS رخ داده باشد. اگر همچنان ادامه داشت، می توانید مسیر ترافیک را تغییر داده و آن را متوقف کنید.
به عنوان کلاینت که نمی تواند به یک سایت دسترسی پیدا کند، می توانید اقدامات زیر را انجام دهید:
- ممکن است کش DNS دستگاه شما با مشکل مواجه شده باشد. می توانید DNS دستگاه و مرورگر خود را پاک کنید. این عمل رکوردهای DNS قبلی را حذف می کند و دستگاه شما مجدداً رکورد A یا AAAA سایتی که می خواهید بازدید کنید را جستجو خواهد کرد.
- شاید مشکل از روتر باشد. روتر یک سرور DNS بازگشتی (recursive DNS) دارد که ممکن است نیاز به راه اندازی مجدد داشته باشد. آن را خاموش نموده و حدود یک دقیقه صبر کنید و سپس مجددا متصل نمایید. با این کار باید مشکل رفع شود.
سرور DNS خود را مورد بررسی قرار دهید
DNS خود را از نظر وجود الگوهای عجیب و غریب در ترافیک، مورد بازبینی قرار دهید. سیستم های مانیتورینگ خودکار مختلفی وجود دارند که می توانید آنها را برای مشاهده رفتار ترافیک پیاده سازی کنید. اگر اتفاق عجیبی رخ دهد، می توانید به صورت آنی تغییرات را مشاهده نموده و از اطلاعات به دست آمده برای انجام اقدامات لازم استفاده نمایید.
تصویر(3)
نظارت بر DNS و ترکیب آن با DNS Failover، بهترین عملکرد را خواهد داشت. می توانید مانیتورینگ را با پارامترهایی که ترجیح می دهید پیکربندی نمایید تا در صورت بروز مشکل، به شما اطلاع رسانی کند.
عواقب DNS outage یا "قطع DNS" چیست؟
اگر DNS outage رخ دهد، می تواند بر کل سازمان و جامعه مشتریان، تأثیر منفی داشته باشد. هنگامی که DNS (سیستم نام دامنه) غیرفعال می شود، وب سایت ها، اپلیکیشن ها و خدمات آنلاین مرتبط با نام دامنه، مانند ایمیل ها، به درستی کار نمی کنند. متاسفانه، این موضوع پتانسیل آسیب رساندن به عملکرد، درآمد و اعتبار برند را دارد.
اگر عملکرد DNS برای مدتی طولانی قطع شده باشد، می تواند عواقب مخربی را برای شرکت هایی که به صورت آنلاین فعالیت دارند، ایجاد کند. در لیست زیر برخی از رایج ترین اثرات مخرب آن آورده شده است:
- بازدیدکنندگان احتمالی را از دست می دهید.
- فروش های احتمالی از دست می رود.
- با سرویس هایی مانند ایمیل، FTP، VoIP و غیره مشکل پیدا خواهید کرد.
- کاهش بهره وری
- به شهرت برند لطمه وارد می شود.
- بر مشتریان و شرکای استراتژیک تاثیرگذار خواهد بود.
اجرای تمام اقدامات پیشگیرانه برای جلوگیری از تأثیر منفی قطع DNS بر تجارت شما، بسیار مهم است.
نتیجه گیری
یک حمله DDoS بزرگ می تواند منجر به DNS outage یا "قطع DNS" شود حتی اگر زیرساختی عالی داشته باشید اما اعمال تمام اقدامات پیشگیرانه می تواند زمان و فرکانس قطع شدن DNS را کاهش دهد. از همین رو مهم است که همیشه آمادگی لازم را داشته باشید و ترافیک DNS خود را هوشمندانه مدیریت کنید تا بتوانید به مشتریان خود خدمات عالی ارائه دهید و کسب و کار خود را حفظ نمایید.