DNS veya bir alan adı sistemi, web sitesi adlarını ilgili IP adreslerine çevirmekten sorumludur. Birden çok DNS sunucusu vardır ve kullanmak istediğinizi seçebilirsiniz. Bu nedenle, bir web sitesine bağlanmada sorun yaşıyorsanız veya yalnızca Ubuntu makinenizin bir DNS değişikliği görmesini istiyorsanız, DNS önbelleğini temizlemeyi denemelisiniz. Hosts dosyasında değişiklik yaptıysanız ve sisteminizin yeniden başlatmak zorunda kalmadan “görmesini” istiyorsanız, Ubuntu’daki DNS önbelleğini de temizleyebilirsiniz. Peki, bu durumlardan herhangi birindeyseniz ve DNS önbelleğini temizlemek istiyorsanız, Linux’ta DNS önbelleğini nasıl temizleyeceğiniz aşağıda açıklanmıştır.
Not: Bu yöntemleri göstermek için bir Ubuntu 16.10 “Yakkety Yak” sistemi kullanıyorum. Ancak, süreç çoğu Linux dağıtımında benzer olmalıdır.
2020’de Linux’ta DNS Önbelleğini Temizle
Eğitimimize geçmeden önce, makinenizde DNS önbelleğinin etkin olup olmadığına bakalım.
DNS önbelleğe almanın etkin olup olmadığını kontrol etme
DNS önbelleğe alma gibi şeyler söz konusu olduğunda, tüm Linux dağıtımları aynı şekilde davranmaz. Örneğin, Ubuntu varsayılan olarak DNS’yi önbelleğe almaz. Bir Linux makinesinde DNS önbelleğini temizlemeye çalışmadan önce, önbelleğe almanın etkin olup olmadığını kontrol edelim. Bunu bir Ubuntu sisteminde yapmak için aşağıdaki adımları takip edebilirsiniz:
1. Terminal’i başlatın ve ” yazınp balta | grep dnsmasq“.
2. Komutun çıktısında “adlı bir alan göreceksiniz.önbellek boyutu“. Değerini kontrol edin. Değer sıfırsa, önbelleğe almanın devre dışı olduğu anlamına gelir Sistemde
Not: Linux’ta DNS önbelleğini etkinleştirmek istiyorsanız, bunu “sudo dnsmasq -c 150” komutunu kullanarak yapabilirsiniz. Temel olarak dnsmasq’ın önbelleğe alabileceği giriş sayısı olan 150 yerine herhangi bir sayı kullanabilirsiniz.
Ubuntu’da DNS önbelleğini temizle
Linux sisteminiz DNS girişlerini önbelleğe alıyorsa, DNS ile ilgili sorunlardan kurtulmak için DNS önbelleğini temizlemeyi deneyebilirsiniz. Ubuntu üzerinde DNS önbelleğini temizlemek için aşağıdaki adımları takip edebilirsiniz:
1. Terminal’i başlatın (ctrl + alt + T) ve ” yazınsudo /etc/init.d/dns-temiz yeniden başlatma“.
2. Ardından, “ komutunu yazın.sudo /etc/init.d/networking zorla yeniden yükleme”
Bu, Ubuntu’daki DNS önbelleğinizi temizleyecektir ve karşılaştığınız sorunlar DNS sorunlarından kaynaklanıyorsa, artık gitmiş olmaları gerekir.
Linux’ta DNS hizmetlerinde DNS önbelleğini temizleme
Dediğim gibi, Ubuntu varsayılan olarak DNS girişlerini önbelleğe almaz, ancak nscd gibi bir DNS hizmetini manuel olarak yüklediyseniz önbelleğini temizleyebilirsiniz. Bazı yaygın DNS hizmetleri için önbelleği temizleme yöntemleri aşağıda listelenmiştir:
nscd DNS önbelleğini temizle
- sudo /etc/init.d/nscd yeniden başlat
dnsmasq’ın DNS önbelleğini temizle
- sudo /etc/init.d/dnsmasq yeniden başlat
BIND DNS Önbelleğini Temizle
BIND kullanıyorsanız, aşağıdaki komutlardan birini kullanarak DNS önbelleğini temizleyebilirsiniz:
- sudo /etc/init.d/reboot adlı
- sudo rndc’yi yeniden başlat
- sudo rndc yürütme
BIND sürüm 9.3.0 ve sonrası, LAN veya WAN’ın yanı sıra belirli bir etki alanı için DNS önbelleğinin temizlenmesini destekler. Bu özelliği kullanmak için aşağıdaki komutları kullanabilirsiniz:
- Belirli bir etki alanı için DNS önbelleğini temizlemek için şunu kullanın: “sudo rndc indirme adı beebom.com“
- LAN için DNS önbelleğini temizlemek üzere “sudo rndc floş lan“
- WAN için DNS önbelleğini temizlemek üzere “sudo rndc floş wan“
Bonus: Ubuntu’da DNS Ayarlarını Değiştirme
Ubuntu’da DNS önbelleğini temizlemekten bahsediyoruz, ancak Ubuntu’da sadece DNS ayarlarında değişiklik yapmak isteyeceğiniz durumlar olabilir. Ubuntu’da DNS ayarlarını değiştirmek isterseniz, bunu GUI kullanarak veya Terminal aracılığıyla yapabilirsiniz.
GUI kullanarak DNS ayarlarını değiştirin
DNS ayarlarını değiştirmek için GUI’yi kullanmak, Terminali kullanmaktan daha kolaydır. Ancak, birden çok bağlantı kullanıyorsanız, bunların her biri için DNS ayarlarını değiştirmeniz gerekecektir. GUI’yi kullanarak DNS ayarlarını değiştirmek için aşağıdaki adımları uygulamanız yeterlidir:
1. Aç Sistem ayarlarıve tıklayın Kafes.
2. simgesine tıklayın ağ adının yanındaki ok Bağlı mısın.
3. Şimdi tıklayın “Ayarlar”. Bu, söz konusu bağlantı için ayarları açacaktır.
4. IPv4 sekmesine geçinve “adlı bir seçenek göreceksiniz.Ek DNS sunucuları“. Bu alana kullanmak istediğiniz DNS sunucularını girebilirsiniz. Birden fazla DNS sunucusu girmek istiyorsanız, bunları virgülle ayırmanız yeterlidir.
Terminali kullanarak DNS ayarlarını değiştirin
GUI’yi kullanmak istemiyor ve DNS ayarlarını Terminal aracılığıyla değiştirmeyi tercih ediyorsanız, bunu ad sunucularını dnsmasq’a ekleyerek yapabilirsiniz. Ancak dnsmasq, Ubuntu sistemlerinde varsayılan olarak yüklenmez (dnsmasq-base kurulur). Yani önce yapmanız gerekecek dnsmasq’ı yükle bir Terminal başlatmak ve “sudo apt-get kurulum dnsmasq“.
- dnsmasq’ı yükledikten sonra. Yapılandırma dosyasını “ ile düzenleyebilirsiniz.sudo nano /etc/dnsmasq.conf“.
- Burada, “” yazan yere DNS sunucularınızın IP adreslerini ekleyebilirsiniz.Diğer ad sunucularını buraya ekleyin“.
AYRICA BAKINIZ: Mac’te Canlı Linux USB Nasıl Önyüklenir (Kılavuz)
Bu yöntemleri kullanarak Linux’ta DNS önbelleğini temizleyin
Bir Linux sisteminde DNS önbelleğini temizlemek için bu yöntemlerden herhangi birini kullanabilirsiniz. DNS önbelleğe almayla ilgili sorunlar, bir web sayfasının yüklenmemesi, sisteminizin ad sunucusu değişikliklerini tanımaması ve çok daha fazlası gibi sorunlara neden olabilir. DNS önbelleğini temizledikten sonra, bu sorunlar büyük olasılıkla ortadan kalkacaktır. Peki, hiç Linux sisteminizdeki DNS önbelleğini temizlemek zorunda kaldınız mı? Eğer öyleyse, hangi yöntemi kullandınız? Linux sisteminizdeki DNS önbelleğini temizlemek için başka yöntemler biliyorsanız, lütfen aşağıdaki yorumlar bölümünde bize bildirin.