Zum Hauptinhalt springen

Anleitungen / Website-Prüfungen: die praktischen Anleitungen

Wie Sie die DNS-Propagation prüfen

DNS "verbreitet sich" nirgendwohin: Eine Änderung ist an Ihren autoritativen Nameservern sofort live, und worauf Sie eigentlich warten, ist, dass jede zwischengespeicherte Kopie der alten Antwort abläuft. Wie lange das dauert, bestimmt die TTL des alten Eintrags, dazu, was die Resolver auf dem Weg damit machen.

Woher die Wartezeit kommt

Stellen Sie sich die Kette vor, die eine Abfrage durchläuft. Ihr Gerät fragt einen rekursiven Resolver, betrieben von Ihrem Internetanbieter oder einem öffentlichen Anbieter. Hat dieser Resolver eine aktuelle Antwort zwischengespeichert, liefert er die zwischengespeicherte zurück, ohne jemanden zu fragen. Erst wenn der Cache abgelaufen ist, arbeitet er sich zu den Root-Servern hinunter, zur Registry der Top-Level-Domain und schließlich zu Ihren autoritativen Nameservern, die den von Ihnen bearbeiteten Eintrag halten.

Wenn Sie also einen A-Eintrag ändern, existiert der neue Wert in dem Moment, in dem Ihr DNS-Anbieter ihn speichert. Jeder Resolver, der noch die alte Antwort hält, liefert sie weiter aus, bis seine Kopie abläuft. Die TTL, Time to Live, ist eine Zahl in Sekunden, die am Eintrag hängt und Resolvern sagt, wie lange sie ihn zwischenspeichern dürfen. Ein Eintrag mit einer TTL von 3600 kann eine Stunde lang aus dem Cache ausgeliefert werden, nachdem er abgerufen wurde, eine Stunde ist also der schlechteste Fall für einen Resolver, der ihn kurz vor Ihrer Änderung abgerufen hat.

Deshalb können zwei Personen im selben Büro unterschiedliche Ergebnisse sehen, und deshalb hilft das Leeren des eigenen Caches niemand anderem. Es gibt keine globale Verbreitung, auf die zu warten wäre, nur viele unabhängige Timer, die zu unterschiedlichen Zeitpunkten ablaufen.

Wie Sie bei mehreren Resolvern prüfen

Der manuelle Weg besteht darin, mehreren Resolvern dieselbe Frage zu stellen und ihre Antworten zu vergleichen:

dig +short example.com @8.8.8.8      # Google Public DNS
dig +short example.com @1.1.1.1      # Cloudflare
dig +short example.com @9.9.9.9      # Quad9
dig +short example.com               # your own resolver
dig +short example.com @ns1.yourdns.example  # authoritative: the source of truth

Die autoritative Abfrage ist die entscheidende. Liefert sie den neuen Wert, ist Ihre Änderung korrekt und vollständig, und alles Weitere ist nur eine Frage des Cachings. Liefert sie den alten Wert, wurde die Änderung nicht gespeichert, Sie haben die falsche Zone bearbeitet, oder die Nameserver der Domain sind nicht die, die Sie annehmen.

Um die verbleibende Cache-Zeit statt nur den Wert zu sehen, lassen Sie +short weg und lesen Sie die TTL-Spalte:

dig example.com @8.8.8.8 | grep -A1 "ANSWER SECTION"

Die Zahl vor dem Eintragstyp zählt herunter, während die zwischengespeicherte Kopie altert, was Ihnen genau sagt, wie viel länger dieser Resolver noch die alte Antwort ausliefert. Unter Windows erledigt nslookup example.com 8.8.8.8 den Vergleich ohne zusätzliche Werkzeuge. Eine webbasierte DNS-Abfrage, die von vielen Standorten gleichzeitig abfragt, erledigt dieselbe Aufgabe schneller und deckt zudem Resolver ab, die Sie von Ihrem eigenen Rechner aus nicht erreichen.

Warum es Stunden dauern kann

  • Die alte TTL gilt, nicht die neue. Hatte der Eintrag eine TTL von 86400 und Sie senken sie im Zuge der Änderung, haben Resolver, die den alten Eintrag zwischengespeichert haben, trotzdem Anspruch auf den vollen Tag. Das Senken der TTL hilft nur der nächsten Änderung.
  • Manche Resolver ignorieren kurze TTLs. Eine Reihe von Internetanbietern erzwingt ein eigenes Minimum, üblicherweise eine Stunde oder mehr, unabhängig davon, was Ihr Eintrag sagt.
  • Nameserver-Änderungen sind langsamer. NS-Einträge auf Registry-Ebene tragen oft eine in Tagen gemessene TTL, sodass ein Wechsel des DNS-Anbieters tatsächlich ein bis zwei Tage brauchen kann, bis er sich überall einpendelt.
  • Negatives Caching zählt ebenfalls. Existierte ein Name nicht, als ihn jemand nachschlug, wird die Antwort "existiert nicht" ebenfalls zwischengespeichert, für den im SOA-Minimum-Feld der Zone festgelegten Zeitraum.
  • Verkettete Caches. Ein Browser cacht DNS, das Betriebssystem cacht DNS, und ein Unternehmens-Resolver kann dem öffentlichen vorgeschaltet sein. Jede Schicht fügt ihre eigene Verzögerung hinzu.
  • Langlebige Verbindungen. Anwendungen, die einen Hostnamen einmal beim Start aufgelöst haben, verwenden diese Adresse weiter, bis sie neu starten, egal was DNS inzwischen sagt.

Wie Sie die nächste Änderung schnell machen

  1. Zuerst die TTL senken, dann warten. Senken Sie die TTL des Eintrags auf 300 Sekunden und lassen Sie sie mindestens so lange stehen wie die Dauer der alten TTL, bevor Sie die eigentliche Änderung vornehmen. Bis dahin trägt jede zwischengespeicherte Kopie den kurzen Wert.
  2. Die Änderung vornehmen. Bei einer TTL von 300 Sekunden übernehmen die meisten Resolver sie innerhalb von fünf Minuten.
  3. Den alten Server während der Überlappung weiter antworten lassen. Schalten Sie ihn nicht in dem Moment ab, in dem DNS aktualisiert ist. Lassen Sie ihn weiter bedienen, bis der Traffic zu ihm versiegt, und die Migration verläuft, ohne dass jemand etwas bemerkt.
  4. Gegen die autoritativen Nameserver und mehrere öffentliche Resolver prüfen, bevor Sie die Änderung für abgeschlossen erklären.
  5. Die TTL wieder anheben, sobald sich die Änderung eingependelt hat, damit normaler Traffic wieder vom Caching profitiert.

Bei einem Nameserver-Wechsel gibt es keine Abkürzung, weil die TTL der Registry nicht in Ihrer Hand liegt. Planen Sie ein bis zwei Tage ein, und lassen Sie beide DNS-Anbieter die ganze Zeit über identische Einträge ausliefern, damit es keine Rolle spielt, welchen ein Resolver fragt.

Nachdem sich die Änderung eingependelt hat

Ein paar Resolver von Hand zu prüfen, zeigt Ihnen, wie weit sich eine Änderung in dem Moment verbreitet hat, in dem Sie nachsehen, was während einer Migration nützlich ist und den Rest der Zeit nutzlos. Die Ausfälle, die es sich zu erkennen lohnt, sind die späteren: ein Eintrag, der sich ändert, ohne dass es jemand bemerkt, ein Nameserver, der aufhört zu antworten, eine Zone, die abläuft. Fortlaufendes DNS-Monitoring fragt nach Zeitplan von vielen Standorten ab und schlägt Alarm, wenn die Antwort nicht mehr dem entspricht, was sie sein sollte, was auch den Fall "funktioniert von hier, ist von dort defekt" erkennt, den eine einzelne Abfrage nicht sehen kann. Führen Sie jetzt eine Abfrage mit dem DNS-Abfragewerkzeug aus. Ist die Website für Sie nicht erreichbar, anderswo aber schon, übernimmt ist sie für alle oder nur für mich down von dort aus weiter.

Jetzt prüfen

Führen Sie die kostenlose Prüfung für Ihre eigene Website aus - ganz ohne Konto.

Dns query

Dauerhaft überwachen

Werden Sie benachrichtigt, sobald etwas ausfällt: HostTracker prüft von über 300 Standorten aus und benachrichtigt Sie per E-Mail, SMS, Slack, Telegram und mehr.

HostTracker Funktionen

Mehr in diesem Bereich: Website-Prüfungen: die praktischen Anleitungen