Biri kazmak nasıl DNS önbelleğini Ubuntu'da yapar?


5

Bazı DNS bilgilerini doğrulamak için dig kullanmaya çalışıyorum, ancak yalnızca eski sonuçları görüyorum. Okuduklarımdan itibaren, Ubuntu varsayılan olarak işletim sistemi düzeyinde DNS önbelleğe almıyor. Bu doğruysa, dig komutunun kendi DNS önbelleği vardır. Muhtemelen, NSDC gibi evrensel bir DNS önbelleği yüklemek, kazı işleminin kendi önbelleğini kullanmasını engellemez; bu nedenle sorum, dig komutu tarafından kullanılan önbelleği nasıl temizlerim?

DNS bilgilerinin hemen yayılmayabileceğinin farkındayım, ancak dig @8.8.8.8örneğin, güncellenmiş sonuçlar alıyorum. Bununla birlikte, aynı alanda birden fazla kez normal olarak kazı kullanmak, ilk sonuçların yanı sıra tüm sonuçların 0ms aldığını, bu nedenle açıkça belli bir düzeyde önbellekleme yapıldığını ortaya çıkaracaktır.

Düzenleme: İşte dig superuser.comilk denemenin özeti :

;; Query time: 233 msec
;; SERVER: 208.109.188.1#53(208.109.188.1)
;; WHEN: Tue Apr 24 10:09:19 2012
;; MSG SIZE  rcvd: 113

ve ikinci deneme:

;; Query time: 0 msec
;; SERVER: 208.109.188.1#53(208.109.188.1)
;; WHEN: Tue Apr 24 10:09:58 2012
;; MSG SIZE  rcvd: 113

Yanıtlar:


8

dig kendi kendine bir önbelleğe sahip değildir, eğer nsdc veya dnsmasq vb. gibi yerel olarak önbelleğe alma arka planını çalıştırmazsanız, yerel önbelleği temizlemek için sadece bu arka planları yeniden başlatmanız gerekir. sonuçların nereden geldiğini görmek için + izlemeyi kullanabilirsiniz.


1
Ben kullanırsanız +trace, bu önbelleği atlar ve en güncel sonuçları bana verir, böylece önbellek nerede bana anlamaya yardımcı olmuyor. Yine de bir önbellek hakkındaki bilgimi pekiştiriyor, çünkü isteği hemen tekrar deneyebilir +traceve eski sonuçları almaya devam edebilirim . Çalışan işlemleri kontrol ettim ve tanıdığım her önbellek arka planının yüklü olup olmadığını kontrol ettim ve hiçbir şey bulamadım.
Zeus

Eğer yerel bir önbelleğe sahipseniz, dig sonucunun yerel döngü ip 127.0.0.1 veya benzeri bir şey göstermesi gerekir. gördüğünüz düz bir kazığın çıktısı nedir?
johnshen64

Düzenleme: Yorumlarda kod blokları yapamadığım için sonuçları orijinal soruya yerleştirdim.
Zeus

yerel sisteminizde önbellekleme yapılmadığı için yerel dns önbelleğiniz yok, ancak dns sunucunuzda.
johnshen64

1
Görünüşe göre sunucu gerçekten oydu. DNS sunucularını /etc/resolv.confdaha kısa önbellek ömrüne sahip bazılarına geçirdim ve şimdi daha güncel sonuçlar alıyorum. Yardımınız için teşekkürler. Sizin için Oy ve kabul edilen cevap.
Zeus

0

Eğer görürseniz nameserver 127.0.0.1sizin de /etc/hostsdosyaya, örneğin nameserver 8.8.4.4 olarak başka ad sunucusu ile çizgiyi değiştirip paket resolvconf kaldırmak (Ubuntu için: apt-get remove resolvconf). Bu benim için çalıştı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.