DNS: DIG: TTL eines Records finden/anzeigen lassen (authoritativ und nicht authoritativ)

Ich möchte den TTL Wert (Time-To-Live)  für einen Wert anzeigen lassen:

> dig host.example.gov

<*SCHNIPP*>
..
<*SCHNAPP*>

;; ANSWER SECTION: 
host.example.gov.    43200 IN CNAME host1.example.gov. 
host1.example.gov.   43200 IN A     192.168.16.10

Ist  ‚43200‘ der TTL Wert?

Ja, diese Zahl ist die Anzahl Sekunden bis zum Ablauf des Records host.example.com (wenn wir nicht den Authoritativen Server fragen)

Wenn man einige Sekunden wartet und startet dig neu auf dem lokalen Name Server, kann man gut sehen, dass sich der TTL sekundenweise verringert.

c:\>dig www.krakovic.de +noquestion +nostats

; <<>> DiG 9.11.0 <<>> www.krakovic.de +noquestion +nostats
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54766
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; ANSWER SECTION:
www.krakovic.de.        310     IN      A       85.13.131.25

;; AUTHORITY SECTION:
krakovic.de.            52690   IN      NS      ns6.kasserver.com.
krakovic.de.            52690   IN      NS      ns5.kasserver.com.

;; ADDITIONAL SECTION:
ns5.kasserver.com.      1117    IN      A       85.13.128.3
ns6.kasserver.com.      1117    IN      A       85.13.159.101

…. kurz warten … und erneut ausführen …

c:\dig www.krakovic.de +noquestion +nostats

; <<>> DiG 9.11.0 <<>> www.krakovic.de +noquestion +nostats
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54766
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; ANSWER SECTION:
www.krakovic.de.        295     IN      A       85.13.131.25

;; AUTHORITY SECTION:
krakovic.de.            52690   IN      NS      ns6.kasserver.com.
krakovic.de.            52690   IN      NS      ns5.kasserver.com.

;; ADDITIONAL SECTION:
ns5.kasserver.com.      1117    IN      A       85.13.128.3
ns6.kasserver.com.      1117    IN      A       85.13.159.101

Die 310 wurde zu 295.

When es die 0 erreicht, refresht ihr Name Server die Zone.

Unterschiedliche Antworten von Cache-Servern und Authoritativen Servern

Es ist ein Unterschied, wenn man diese Abfrage

  • gegen einen Name Server mit einem gecachten Eintrag startet
  • oder gegen einen Server, der für diese Zone authoritativ ist.

Authoritativer Server

In dieser Abfrage fragen wir den für diese Domain verantwortlichen (authoritativen) Name Server.

Es ist der Name Server ns2.p19.dynect.net, das müssen wir erst einmal wissen (so kann man es mit DIG herausfinden)

In der Flags Sektion ist dies zu erkennen am Flag „aa“.

$ dig +noauthority +noquestion +nostats stackoverflow.com @ns2.p19.dynect.net.
; <<>> DiG 9.7.0-P1 <<>> +noauthority +noquestion +nostats stackoverflow.com @ns2.p19.dynect.net.
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER< ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 0
 ;; WARNING: recursion requested but not available
;; ANSWER SECTION:
 stackoverflow.com. 432000 IN A 69.59.196.211

Der TTL des Records ist 432000 Sekunden.

Cache Server (nicht authoritativer Server)

In dieser Abfrage fragen wir den nächsten Cache Name Server.

In der Flags Sektion fehlt der Flag „aa“.

$ dig +noauthority +noquestion +noadditional +nostats stackoverflow.com ; 
<<>> DiG 9.7.0-P1 <<>> +noauthority +noquestion +noadditional +nostats stackoverflow.com 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER< 
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 4 
;; ANSWER SECTION: stackoverflow.com. 246696 IN A 69.59.196.211

Der TTL des Records ist AKTUELL 246696 Sekunden, diese Zeit bewegt sich gegen Null.

 

https://www.ateamsystems.com/tech-blog/using-dig-to-find-domain-dns-ttl/