[[start|zurück]]
====== DNS-Lastverteilung, Round-Robin & Anycast ======
DNS kann nicht nur Namen auf IP-Adressen auflösen, sondern auch
für einfache Lastverteilung und globale Redundanz eingesetzt werden.
Die drei wichtigsten Mechanismen:
* Round-Robin DNS
* GeoDNS / Latency-Based Routing
* Anycast DNS
Diese Seite erklärt Unterschiede, Vor- und Nachteile.
---
====== 1. Round-Robin DNS ======
Round-Robin ist die einfachste Form der DNS-Lastverteilung.
Der DNS-Server liefert mehrere A/AAAA-Records für denselben Hostnamen zurück.
Beispiel:
www.example.com. A 203.0.113.10
www.example.com. A 203.0.113.20
www.example.com. A 203.0.113.30
Clients wählen zufällig einen der Einträge aus → einfache Lastverteilung.
ASCII:
Client → DNS → (10 / 20 / 30)
==== Vorteile ====
* extrem einfach
* keine zusätzliche Hardware
* funktioniert weltweit
* Last wird statistisch verteilt
==== Nachteile ====
* keine Health-Checks
* kaputte Server werden weiter ausgeliefert
* keine echte Sessionsteuerung
* DNS-Caching kann Verteilung verzerren
==== Einsatz ====
* Webserver mit gleichen Inhalten
* statische Ressourcen
* vereinfachte Lastverteilung
---
====== 2. GeoDNS / Standortbasiertes DNS ======
GeoDNS liefert je nach Standort des Clients unterschiedliche IP-Adressen aus.
ASCII:
DE-Client → deutsches Rechenzentrum
US-Client → US-Rechenzentrum
ASIA-Client → Singapur
Wie funktioniert das?
* DNS-Server prüft die IP des Clients
* liefert die geografisch „nächste“ IP zurück
==== Vorteile ====
* niedrige Latenz
* regionale Lastverteilung
* ideal für globales Hosting
==== Nachteile ====
* abhängig von Geolocation-Datenbanken
* kein Echtzeit-Failover (außer mit Healthchecks)
==== Einsatz ====
* CDNs
* globale Websites
* Multi-Region Hosting
---
====== 3. Latency-Based / Health-Checked DNS ======
Professionelle DNS-Plattformen (z. B. AWS Route53, Azure DNS, Cloudflare Load Balancer)
können:
* Latenz messen
* Serververfügbarkeit prüfen
* nur gesunde Server ausliefern
ASCII:
DNS → Healthchecks → liefert nur aktive Knoten zurück
==== Vorteile ====
* echtes Failover
* intelligente Verteilung
* stabil
==== Nachteile ====
* kostenpflichtig bei manchen Anbietern
---
====== 4. Anycast DNS ======
Anycast ist die Königsklasse der globalen Verteilung.
Ein Hostname hat dabei **überall auf der Welt dieselbe IP-Adresse**,
aber viele Server beantworten diese IP gleichzeitig aus verschiedenen Regionen.
ASCII:
(Server EU)
/
Internet ——— IP 203.0.113.53
\
(Server USA)
\
(Server ASIA)
Die Routing-Infrastruktur des Internets (BGP!) entscheidet, welcher Server am nächsten liegt.
==== Wie funktioniert Anycast? ====
* Alle Server announcen die gleiche IP über BGP
* Der Client landet automatisch beim „nächsten“ Server
* extrem robust gegen Ausfälle
==== Vorteile ====
* sehr geringe Latenz weltweit
* hoher Schutz gegen DDoS (Traffic verteilt sich)
* perfekte Ausfallsicherheit
* extrem schnell
==== Nachteile ====
* nur im großen Stil (BGP) einsetzbar
* technisch anspruchsvoll
* teuer, wenn selbst betrieben
==== Einsatzbereiche ====
* Root-DNS-Server
* Cloudflare / Google DNS
* große CDNs
* Provider-Netze
* Hochverfügbare Rechenzentren
---
====== 5. Round-Robin vs Anycast vs GeoDNS ======
^ Funktion ^ Round-Robin ^ GeoDNS ^ Anycast |
| Einfachheit | hoch | mittel | niedrig |
| Lastverteilung | statistisch | geografisch | netzwerkbasiert |
| Failover | ❌ nein | teilweise | ✔ voll |
| Latenzoptimierung | ❌ nein | ✔ ja | ✔✔ weltweit |
| Healthchecks | ❌ nein | optional | routingbasiert |
| Einsatz | kleine Umgebungen | globale Webs | DNS/CDN-Infrastruktur |
---
====== 6. TTL – Warum wichtig? ======
Die TTL entscheidet, wie lange DNS-Einträge gecached werden.
Kurze TTL:
* schnelleres Failover
* mehr DNS-Traffic
Lange TTL:
* weniger DNS-Anfragen
* langsamere Änderungen
Typische TTL:
300 Sek (5 Minuten) – schnelle Änderungen
3600 Sek (1 Stunde) – normal
86400 Sek (24h) – statisch
---
====== 7. Praxisbeispiele ======
==== Beispiel 1: Round-Robin Webhosting ====
api.example.com
→ 192.0.2.11
→ 192.0.2.12
→ 192.0.2.13
==== Beispiel 2: GeoDNS ====
Europa → 198.51.100.20
USA → 198.51.100.30
==== Beispiel 3: Anycast DNS ====
1.1.1.1
8.8.8.8
9.9.9.9
Alle weltweit — eine IP, viele Server.
---
====== Zusammenfassung ======
* DNS kann einfache oder komplexe Lastverteilung durchführen
* Round-Robin = einfache Verteilung ohne Healthchecks
* GeoDNS = Standortabhängige IP-Zuweisung
* Latenz-basiertes DNS = nur schnellste Server
* Anycast = weltweit gleiche IP → extrem schnell & robust
* TTL beeinflusst Failover und Geschwindigkeit