DNS Önbelleği Temizleme Nasıl Yapılır?

Bu yazıda bilgisayarımızdaki DNS önbelleği temizleme işlemi nasıl yapılır açıklayacağım. Kimi zaman ihtiyaç duyulan bu işlem Windows, MAC OS ve Linux işletim sistemlerinde nasıl yapılır, hangi komutların çalıştırılması gerekir sırayla anlatacağım.

Öncelikle DNS ve DNS Önbelleği (DNS Cache) kavramları nelerdir, kısaca değinelim.

DNS Nedir?

Herhangi bir web sitesine erişirken adresini (xyz.com gibi) web browserda yazıp enter tuşuna basarız. Aslında arka planda bu haberleşme IP adresleri dediğimiz nümerik sayılar üzerinden gerçekleşiyor. İşte her bir sitenin IP adresini ezberlemek mümkün olmadığı için DNS (Domain Name System) dediğimiz yapı yardıma koşuyor.

Kısaca DNS bir web adresinin IP adres karşılığını tutan bir yapıdır diyebiliriz.

DNS Önbelleği (DNS Cache) Nedir?

DNS sunucularından öğrenilen “alan adı (domain) – IP adresi” eşleşmesine ilişkin kayıtlar bilgisayarınızda DNS önbelleği (cache) isimli bir alanda bulunmaktadır. Kayıtlar DNS sunucusunda daha önceden tanımlı olan ve TTL (Time To Live) denilen süre boyunca tutulmaktadır.

Herhangi bir web sitesine erişirken de öncelikle bu bellek kontrol edilmektedir. Yani bu belleği hızlıca erişmek istediğimiz bilgileri yazdığımız bir not defteri gibi düşünebilirsiniz. Dolayısıyla erişmek istenen web sitesinin/url’in kaydı bu bellekte varsa kullanılır. Ayrıca DNS sunucusuna sorgu gönderilmez.

Burada amaç DNS sistemine sürekli sorgu gönderilmesinin önüne geçmektir. Yani DNS önbelleği hem gereksiz ağ trafiğinin oluşmasını engellemiş hem de web sitesi/url’e de hızlıca erişim sağlamış olur.

DNS Önbelleği Neden ve Hangi Durumda Temizlenmeli?

Eğer bir web sitesinin veya url’in DNS kaydı (alan adı – IP eşleşmesi) değişmişse DNS önbelleğinde bulunan eski kayıttan ötürü erişim sorunu yaşanır.

Şöyle düşünelim, domainadi.com adresinin IP adresi 1.2.3.4 olsun. Bir sebepten ötürü bu IP adresi 1.2.3.5 olarak değiştirilsin. Bilgisayarınız TTL süresi boyunca bu web sitesinin IP adresini 1.2.3.4 olarak kayıtlı tuttuğu için yeni IP’yi bilemeyecek ve siz domainadi.com’a erişemeyeceksiniz.

Bu amaçla TTL süresinin dolmasını beklemeden DNS önbelleğini temizlemeniz erişim sorununu ortadan kaldıracaktır. Bu sayede bilgisayar bu web sitesinin IP adresini öğrenmek için yeni DNS sorgusu yapacak ve DNS önbelleğini yeni IP adresine göre güncelleyecektir.

DNS Önbelleği Nasıl Temizlenir?

Windows, MAC OS veya Linux işletim sistemlerinde DNS önbelleğini sadece bir komut ile kolayca temizleyebilirsiniz. MAC OS ve Linux’da kullandığınız işletim sistemi versiyonuna göre komutlarda ufak farklılıklar olabiliyor. Onları da yine de ilgili bölümlerde belirttim.

Windows İşletim Sistemleri için DNS Önbelleği Temizleme

Windows işletim sistemlerinde DNS önbelleğini temizlemek için sırasıyla aşağıdaki adımlar uygulanır:

  • “Başlat – Çalıştır” veya “Windows tuşu + R” tuşlarına basıldıktan sonra açılan pencereye “cmd” yazarak Enter tuşuna basın.
Windows'ta komut satırı açmak için "Başlat-Çalıştır" ve "cmd" komutu yazılır
Windows’ta komut satırı açmak için “Başlat-Çalıştır” ve “cmd” komutu yazılır
  • Ardından açılan DOS ekranında ipconfig -flushdns yazarak Enter tuşuna basın. Sonra gelen satırda “Successfully flushed the DNS Resolver Cache.” notunu görürseniz, tebrikler, DNS önbelleğini başarıyla temizlediniz.
Windows'ta komut satırından (cmd) DNS önbelleği temizleme
Windows’ta komut satırından (cmd) DNS önbelleği temizleme

MAC OS İşletim Sistemleri için DNS Önbelleği Temizleme

MAC OS İşletim sistemlerinde DNS önbellek temizliği için öncelikle Komut Terminali’ni açıyoruz. Bu amaçla;

Application › Utilities › Terminal veya,
Go > Utilities > Terminal

adımlarını takip ederek Komut Terminaline erişiyoruz.

Kullandığınız işletim sistemine göre çalıştırmanız gereken komut dizileri aşağıda gösterilmiştir.

OS X 10.15 (Catalina)
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

OS X 10.12 (Sierra), 10.13 (High Sierra) ve 10.14 (Mojave)
sudo killall -HUP mDNSResponder

OS X 10.11 (El Capitan)
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

OS X 10.10 (Yosemite)

10.10.4+ Versiyonu:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

10.10.1, 10.10.2, 10.10.3 Versiyonları:
sudo discoveryutil mdnsflushcache; sudo discoveryutil udnsflushcache

OS X 10.9 (Mavericks)
dscacheutil -flushcache; sudo killall -HUP mDNSResponder

OS X 10.7 (Lion) ve 10.8 (Mountain Lion)
sudo killall -HUP mDNSResponder

OS X 10.5 (Leopard) ve 10.6 (Snow Leopard)
sudo dscacheutil -flushcache

OS X 10.4 (Tiger) ve öncesi
lookupd -flushcache

Linux İşletim Sistemleri için DNS Önbelleği Temizleme

Linux işletim sistemlerinde DNS önbelleğini temizlemek için öncelikle Ctrl + Alt + T tuşlarına basarak Komut Terminali’ni açıyoruz.

Nscd DNS Cache Temizlemek için;
sudo /etc/init.d/nscd restart

DNSMasq DNS Cache Temizlemek için;
sudo /etc/init.d/dnsmasq restart

BIND DNS Cache Temizlemek için;
sudo /etc/init.d/named restart

Hemen sonrasında da rndc servisini yeniden başlatıyoruz.

sudo rndc restart
sudo rndc exec

Ubuntu için;
sudo /etc/init.d/dns-clean restart (sonra Enter)
sudo /etc/init.d/networking force-reload yazılıp (sonra Enter)

Yazıyı paylaş:

Similar Posts

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir