Ubuntu'nun 17.04 ve sonraki sürümlerde systemd çözümünü kullandığını ve bu yanıtın artık Ubuntu sürümlerine artık uygulanmadığını unutmayın. Bkz. " DNS önbelleğini Ubuntu 17.04 ve sonraki sürümlerde (18.04) temizleyin "
Varsayılan olarak, DNS Ubuntu & lt; 17.04 (ancak ağda veya uygulamada önbelleğe alınmış olabilir)
Bir yolu veya diğerini dnsmasq
'nin önbelleğe alındığını onaylamak için, ps ax | grep dnsmasq
dosyasını çalıştırın ve koşu komutuna bakın. İşte benim varsayılan 13.10 makinemin bir dökümü:
/usr/sbin/dnsmasq \
--no-resolv \
--keep-in-foreground \
--no-hosts \
--bind-interfaces \
--pid-file=/var/run/NetworkManager/dnsmasq.pid \
--listen-address=127.0.1.1 \
--conf-file=/var/run/NetworkManager/dnsmasq.conf \
--cache-size=0 \
--proxy-dnssec \
--enable-dbus=org.freedesktop.NetworkManager.dnsmasq \
--conf-dir=/etc/NetworkManager/dnsmasq.d
/etc/NetworkManager/dnsmasq.d
, varsayılan olarak boş. Bu nedenle, herhangi bir geçersiz kılma yok ve yalnızca% co_de yüzdesini kontrol etmek için olduğunu düşündüğümüz anlamına gelir ( sınırsız önbellek yerine), --cache-size=0
şunu gösterir:
-c, --cache-size=<cachesize>
Set the size of dnsmasq's cache. The default is 150 names.
Setting the cache size to zero disables caching.
Dolayısıyla, man dnsmasq
, DNS'yi önbelleğe alırken, kutunun önbelleğe alınması mümkün değildir. Aynı sayfada olup olmadığınızı kontrol etmek için makinenizi ve çeşitli yapılandırma dizinlerini kontrol edebilirsiniz.
Önbellek sorunlarını görüyorsanız, bunun birkaç yerden birinde gerçekleşmesi olasıdır:
- Bilgisayarınızdan akış yukarı. Bazı yönlendiriciler önbellek. Birçok şirket ağı DNS'yi önbelleğe alır. Birçok ISS çalıştıran DNS sunucusu ve kendi önbelleklerini kullanır. Bir ağ önbelleğine karşı güvence vermenin tek yolu elle yenileyebileceğiniz bir önbellek kullanmaktır. İşte bu yüzden OpenDNS'yi seviyorum.
- İstemci uygulamasında (özellikle tarayıcılarda). Uygulamalar, Ubuntu'nun hiçbir etkisi olmayan kendi önbelleğe alma işlemlerini yapabilir. Firefox, DNS'yi nasıl önbelleğe alır . Chrome’un DNS önbelleği nasıl temizlenir . Diğer tarayıcıların (ve uygulamaların) kendi mekanizmaları olabilir.
-
Buradaki varili kazıyorum ama belki dnsmasq
'de önbelleğe almak yerine Ubuntu'da standart olmayan bir DNS sunucusu kurdunuz. Çok var: dnsmasq
, DJBDNS nscd
(aka TinyDNS), dnscache
, pdns
, Bind9 (ve türevleri) ve daha fazla hatırlayamıyorum. Bunlar <%> pdnsd
dosyasında muhtemelen olacaktır (bu dosyayı otomatikleştirmek için / etc / resolvconf / 'dizininde). Aşağıda yerel olarak yakalanmış bir DNS sorgusu gösterilmektedir:
$ nslookup askubuntu.com
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
Name: askubuntu.com
Address: 198.252.206.24
8.8.8.8 (veya DNS sunucunuzun olmasını beklediğiniz her ne olursa) isabet etmiyorsanız, bunun yerine ne yaptığınızı kontrol edin. Benim durumumda, bunun sadece /etc/resolv.conf
'nin LXC için DNS sorgularını yansıtması için ayarlandığını görebiliyorum, ancak sizin durumunuzda kötü bir cachey işi yapıyor olabilir.
Listelenen önbellekleri tamamladıysanız, temizleme işleminin her biri değişir:
sudo /etc/init.d/nscd reload # nscd
sudo /etc/init.d/named restart # bind9
Hafifçe ilgili bir notta, bkz. Bu, dnsmasq
dizininde önbelleğe almayı etkinleştirmek için .