DNS Cache jetzt extra lang?

01/07/2008 - 10:30 von trashcan | Report spam
Kann es sein, daß seit 10.5.3 DNS lànger cached und sich nicht mehr um
TTLs schert?

Gegeben sei ein (Web-)Server, der an einer PPPoE Wimax - "Leitung"
hàngt, die DSL emuliert und zwangstrennt. Die dynamische IP-Adresse wird
via DynDNS.com an einen Namen gebunden. Vor ca. einer halben Stunde war
so eine Trennung mit neuer Adreßvergabe.

Wenn ich nun mit dig(1) nachfrage, wird die korrekte Adresse aufgelöst,
inklusive einer TTL von max. 60s and counting. Ein ping aus der selben
shell sucht aber noch an der vorigen Adresse, und auch Mail.app findet
unter dem Namen niemanden, der mit ihm IMAP sprechen mag. Auch Firefox
stochert im Leeren.

Ist das ein Bug? Ein Feature? Hab ich was falsch gemacht? Daß ich den
Cache manuell runterspülen kann, weiß ich inzwischen, aber das ist doch
etwas unhandlich auf Dauer.

cheers
Heimo

You never ask questions when God's on your side.
 

Lesen sie die antworten

#1 Juergen P. Meier
01/07/2008 - 18:25 | Warnen spam
Heimo Hetl :
Kann es sein, daß seit 10.5.3 DNS lànger cached und sich nicht mehr um
TTLs schert?



10.5.4

Wenn ich nun mit dig(1) nachfrage, wird die korrekte Adresse aufgelöst,



dig geht nicht ueber den lokalen Namensdienstresolver mit Cache
sondern macht direkt DNS. Immer. (d.h. es wird hoechstens der Cache
des Nameservers verwendet, an den weiter geleitet wird - siehe
die dynamisch erzeugte /etc/resolv.conf)

inklusive einer TTL von max. 60s and counting. Ein ping aus der selben
shell sucht aber noch an der vorigen Adresse, und auch Mail.app findet
unter dem Namen niemanden, der mit ihm IMAP sprechen mag. Auch Firefox
stochert im Leeren.



Was sagt "dscacheutil -cachedump -entries Host"?

Bei mir stimmen die TTL/Best-before Werte von dscacheutil und dem, was
dig liefert im Rahmen der Zeitlichen Abweichung zwischen der Eingabe
von ping, dig und dscacheutil (wenige Sekunden) ueberein.

Ist das ein Bug? Ein Feature? Hab ich was falsch gemacht? Daß ich den
Cache manuell runterspülen kann, weiß ich inzwischen, aber das ist doch
etwas unhandlich auf Dauer.



Was sein kann ist, dass die TTL im DNS Record *zu* *klein* ist.

Die TTL muss groesser/gleich der Minimalen TTL gemaess SOA-Record
dieser Zone sein.

Eine TTL von 0 ist ein Sonderfall, solch eine Antwort sollte nicht
gecacht werden. (Bestaetigt mit 10.5.4: wird nicht gecacht. siehe
z.B. nocache.jors.net.)

Desweiteren sind einige caching Resolver so implementiert, dass sie
zu kleine TTLs ignorieren und auf ihr eingestelltes Minimum setzen.
(Mac OS X scheint das jedoch nicht so zu machen).

Vergleiche die TTL von dscacheutil und dig.

Juergen
Juergen P. Meier - "This World is about to be Destroyed!"
end
If you think technology can solve your problems you don't understand
technology and you don't understand your problems. (Bruce Schneier)

Ähnliche fragen