Ağ Yönetimi

DNS Önbelleği Nasıl Sıfırlanır?

DNS Önbelleği Nedir ve Neden Temizlenmelidir?

DNS, alan adlarını IP adreslerine dönüştürerek web sitelerine erişimi mümkün kılar. Bilgisayar bu çevirileri geçici olarak DNS önbelleğinde tutar. Fakat zaman içinde bu kayıtlar eskiyebilir ya da bozulabilir. DNS sisteminde bulunan NS, CNAME, TXT, AAAA ve MX kayıt türleri bu işleyişin önemli parçalarıdır.
DNS önbelleğini temizlemek, cihazın en güncel DNS kayıtlarını yeniden almasını sağlar. Böylece hem bağlantı problemleri çözülür hem de ağ güvenliği güçlenir. Şimdi, bu işlemi farklı işletim sistemlerinde nasıl yapabileceğimizi inceleyelim.

Linux’ta DNS Önbelleği Temizleme

Linux tabanlı sistemlerde DNS önbelleğini yöneten servis, yapılandırmaya göre farklılık gösterebilir. Örneğin Ubuntu, Fedora veya Debian dağıtımlarında systemd-resolved, dnsmasq ya da nscd servisleri aktif olabilir.

systemd-resolved

Bu servis, modern Linux sürümlerinde varsayılan DNS yöneticisidir.

sudo systemd-resolve --flush-caches

veya yeni sürümlerde

sudo resolvectl flush-caches

Temizleme işlemini doğrulamak için

systemd-resolve --statistics

Bu komut, cache sayısının sıfırlandığını gösterir.

dnsmasq

dnsmasq genellikle küçük ağlarda kullanılır.

sudo systemctl restart dnsmasq

Bu komut, servis yeniden başlatıldığında tüm DNS kayıtlarını temizler.

nscd (Name Service Cache Daemon)

Daha eski dağıtımlarda DNS önbelleğini yöneten bu servis, aşağıdaki komutla sıfırlanabilir.

sudo systemctl restart nscd

Alternatif olarak

sudo /etc/init.d/nscd restart

Bu işlem, DNS, kullanıcı ve grup önbelleklerini tamamen temizler.

Chrome Tarayıcısında DNS Cache Temizleme

Tarayıcılar, sistemden ayrı olarak kendi DNS verilerini depolar.
Eğer Google Chrome’da bazı siteler yüklenmiyor ya da yönlendirme hataları alıyorsak, DNS önbelleğini temizlemek sorunu çözebilir.
Bunun için adres çubuğuna şu bağlantıyı girelim.

chrome://net-internals/#dns

macOS Üzerinde DNS Cache Temizleme

macOS işletim sistemi, DNS kayıtlarını mDNSResponder servisi üzerinden kontrol eder.
Kayıtlar bozulduğunda Safari dahil birçok tarayıcıda sayfalar doğru şekilde yüklenmeyebilir.
Bu durumda Terminal komutu kullanarak DNS önbelleğini temizlemek en hızlı çözümdür.

Terminal Üzerinden Uygulama

Mac cihazınızda DNS önbelleğini temizlemek için öncelikle Cmd + Space tuşlarına basarak Spotlight Arama penceresini açalım. Arama alanına Terminal yazalım ve Enter tuşuna basarak terminali başlatalım. Açılan terminal penceresinde aşağıdaki komutu girelim.

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Komutu çalıştırdıktan sonra sistem sizden yönetici parolanızı isteyecektir. Parolamızı yazıp Enter tuşuna bastığımızda DNS önbelleği başarıyla temizlenecektir.

macOS Sürümüne Göre Alternatif Komutlar

macOS’un farklı sürümleri DNS servisini farklı biçimlerde çalıştırır. Bu nedenle sürümünüze uygun komutu kullanmanız gerekir.

Monterey, Big Sur, Catalina

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Mojave, High Sierra, Sierra ve Öncesi

sudo killall -HUP mDNSResponder

Sürümünüzü öğrenmek için sol üstteki Apple menüsüne tıklayın → “Bu Mac Hakkında” seçeneğini kullanın.

Windows 10 ve 11 DNS Önbelleği Temizleme Rehberi

Windows, sık ziyaret edilen sitelerin DNS kayıtlarını önbelleğe alarak performansı artırır.
Ancak zamanla bu kayıtlar geçerliliğini yitirebilir veya hatalı yönlendirmelere neden olabilir.
DNS önbelleğini temizlemek, özellikle DNS_PROBE_FINISHED_NXDOMAIN gibi hata mesajlarını ortadan kaldırmak için etkili bir çözümdür.

Komut İstemi (CMD) Üzerinden

Windows işletim sisteminde DNS önbelleğini temizleme işlemini gerçekleştirmek için önce Başlat Menüsü’nü açalım ve arama kutusuna cmd yazalım. Gelen sonuçlar arasından Komut İstemi uygulamasına sağ tıklayalım ve Yönetici olarak çalıştır seçeneğini seçelim. Açılan komut penceresine aşağıdaki komutu yazalım.

ipconfig /flushdns

Komutu çalıştırdıktan sonra ekranda Successfully flushed the DNS Resolver Cache mesajı belirecektir. Bu mesaj, DNS önbelleği temizleme işleminin başarıyla tamamlandığını gösterir.

IP Serbest Bırakma ve Yenileme

IP Adresini Yenileme ve DNS Temizleme

Bağlantı sorunlarını çözmek için yalnızca DNS önbelleğini değil, IP adresini de yenilemek faydalıdır.
Bu adım, sistemin ağ ayarlarını sıfırlayarak daha sağlıklı bir bağlantı kurmasını sağlar.
Komut İstemi’ni yönetici yetkileriyle açalım.

IP adresini serbest bırakmak için:
ipconfig /release
Yeni IP almak için:
ipconfig /renew
Son olarak DNS önbelleğini temizleyelim:
ipconfig /flushdns

Bu işlemler ağ yapılandırmasını yenileyerek hatalı DNS kayıtlarını ortadan kaldırır.

Sık Sorulan Sorular

DNS cache temizliğini otomatik hale nasıl getirilir?

Windows

Görev Zamanlayıcı’da aşağıdaki komutu haftalık olarak çalıştırabilirsiniz ipconfig /flushdns

Linux

crontab -e içine şu satırı ekleyin 0 3 * * * /usr/bin/systemd-resolve --flush-caches

macOS

launchd plist dosyasıyla mDNSResponder’a belirli aralıklarla HUP sinyali gönderebilirsiniz.
Bu yöntemlerle DNS önbelleği düzenli olarak temizlenir, dolayısıyla sistem sürekli güncel DNS yanıtlarıyla çalışır.

DNS önbelleği temizlendikten sonra test nasıl yapılır?

Windows’ta

ipconfig /displaydns

komutunu çalıştırarak önbelleğin boş olduğunu doğrulayabilirsiniz.
Linux’ta systemd-resolve --statistics çıktısında Cache entries 0 ibaresi görünmelidir.
Ayrıca dig example.com veya nslookup example.com komutlarını kullanarak sorgu süresini ölçebilir, temizlemeden önceki RTT (Round Trip Time) ile karşılaştırabilirsiniz.

DNS cache temizliği sonrası sistemde hangi süreçler etkilenir?

Windows’ta Dnscache servisi yeniden başlatılırken, macOS’ta mDNSResponder prosesi HUP sinyali ile resetlenir.

Linux sistemlerinde systemd-resolved, dnsmasq veya nscd servisleri yeniden başlatılır. Bu işlemler aktif ağ bağlantılarını kesmez; yalnızca DNS sorgu belleği boşaltılır.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir