زمانی که صحبت از کش DNS در لینوکس میشود خیلی از افراد نگران میشوند، زیرا افرادی هستند که خیلی با این اصطلاحات آشنایی ندارند. بخصوص کسانی اطلاعات کمی در این زمینه دارند. شاید قدری برایشان پیچیده باشد، منتها بایستی گفت در واقعیت آن طور هم که فکر میکنید درک و مفهوم پاک کردن کشDNS دشوار و غیر قابل فهم نیست. برای اثبات این گفته توصیه میکنیم تا پایان این مقاله همچنان با تیم آفتاب هاست همراه شوید.
کش DNS در لینوکس چیست؟
وقتی شما در یک صفحه از سایت قرار دارید و از مطالب آن استفاده میکنید. در این لحظه از مرورگری که برای دیدن سایت استفاده میکنید، IP و آدرس صفحه مورد نظرتان را ثبت میکند. بدین ترتیب وقتی خواستید برای بار دوم آن سایت یا صفحه را با مرورگر جستجو کنید بدون نیاز به DNS این بار میتوانید با سرعت بیشتری به صفحه مورد نظر دسترسی داشته باشید. بیایید در بخش بعدی به موضوع چگونه حذف کردن کش DNS در لینوکس بپردازیم.
چگونگی پاک کردن کش DNSدر لینوکس
در همان ابتدا بگوییم که بر حسب توزیع از سیستم عامل لینوکس برای کش DNS از خدمات مختلفی استفاده میشود. حال شما بایستی متوجه باشید که هر سیستمی که مختص سایت شماست از چه سرویسی بهره گرفته تا در ادامه به منظور پاک کردن کش DNS در لینوکس آن را بکار بگیرید. برای مثال شاید سرویس شما شامل systemd-resolvey، dnsmasq و … باشد.
این نکته را گفتیم که توجه داشته باشید برای پاکسازی، ارتباط مستقیم توزیع سیستم عامل لینوکس و خدماتی که برای ذخیره کرد این اطلاعات موقت در نظر گرفته میشود وجود دارد. پس وقتی توزیع سیستم عامل لینوکس ثابت نیست و متفاوت است به تبع انواع مختلفی خواهد داشت. در ادامه برخی از آنها را برایتان شرح میدهیم.
سیستم عامل لینوکس – Systemd-resolve
از این سیستم توزیع در Debian همچون اوبونتو استفاده میشود. برای که بتوانید در این سیستم کش DNS را پاکسازی کنید وارد Terminal شوید. و بلافاصله دستور زیر را وارد کنید.
sudo systemd-resolve –flush-caches
وقتی این کار را انجام دادید خیلی مطمئن نیستید که درست پیش رفتید یا نه؟ برای اینکه بر این ابهام خود جواب درستی داشته باشید. به کمک یک کد میتوانید با آگاهی از میزان کش بر همه این شک و تردیدها غلبه کنید. این کد را در زیر برایتان در ادامه مطلب درج میکنیم:
sudo systemd-resolve –statistics
شاید سوالی که در ادامه مطالعه این مقاله برایتان ایجاد شده است این است که اگر توزیع عامل لینوکس چیزی غیر از این بود چه؟ بله درست است. برای همین بهتر است بخش بعدی را مورد مطالعه قرار دهید.
سیستم توزیع عامل لینوکس – dnsmasq
به عنوان مثال شاید سیستم توزیع عامل لینوکس شما dnsmasq باشد. به مانند سیستم بالا برای حذف کشها بایستی از کد زیر استفاده کرد.
sudo systemctl restart dnsmasq
سیستم توزیع عامل لینوکس- nscd
بیشتر اوقات سیستمی که از این توزیع عامل لینوکس – nscd استفاده میکند میتوان از Arch Linux را نام برد. بعد اینکه این کد را درج کردید، حواستان باشد که سیستمتان را ریستارت کنید تا متوجه این تغییرات باشید.
به پایان این بحث، یعنی نحوه پاک کردن کش DNS در لینوکس رسیدیم. امید است تا همین لحظه مورد توچجهتان قرار گرفته باشد.