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/