[[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