Erstens ist VRRP in keiner Weise von DNS abhängig. Für Redundanz innerhalb eines einzelnen Standorts können Sie DNS-Server auf einer gemeinsam genutzten VRRP-Adresse ausführen.
Wie andere in Kommentaren erwähnt haben, verwenden die Dienste auch Anycast-Routing , was im Wesentlichen bedeutet, dass dieselbe IP-Adresse an mehreren Orten auf der ganzen Welt vorhanden ist. Wenn eine ganze Site ausfällt, werden die Routen weltweit neu berechnet, sodass Ihre Pakete zu einer anderen Arbeitsstelle gelangen.
Ein besseres Beispiel als Googles öffentlichen DNS würde die sein Root - DNS - Server - diejenigen , die die dienen .
Zone und halten Zeiger auf com
, org
, eu
und so weiter - , weil sie eine Karte von jeder Instanz der 13 logischen Adressen. ICANNs "L" wird von 160 verschiedenen Sites bedient!
Beachten Sie, dass Anycast nichts mit DNS-basierten Round-Robins zu tun hat (bei denen derselbe Name mehrere Adressen hat). Anycast erfolgt im Wesentlichen durch Lügen des Routing-Protokolls.
Das Internet verwendet BGP, um Routing-Informationen zwischen Organisationen auszutauschen.
BGP unterstützt von Natur aus die Auswahl der besten aus mehreren Routen in Richtung desselben Netzwerks anhand verschiedener Kriterien. Beispielsweise kann derselbe Kunde redundante Uplinks zu demselben ISP haben (Ankündigung von zwei Routen, die sich nur in Gewicht / Präferenz unterscheiden). Oder der Kunde hat Uplinks über mehrere ISPs und jeder wählt seine bevorzugte Route (hauptsächlich den kürzesten AS-Pfad) - das ist der Kern des "echten" Multi-WAN.
Multihoming
┌────────[AS 65535]────────┐
client 1 ---ISP---│--BGProuter--+ │
¦ │ ¦--DNSserver │
client 2 ---ISP---│--BGProuter--+ │
└──────────────────────────┘
BGP führt den Verkehr jedoch nur zu Ihren Eingangstüren, kümmert sich aber nicht darum, was darüber hinaus passiert. Wenn Sie also intern beide Routen zum selben Server einrichten, erhalten Sie Multihoming. Wenn jedoch jeder "Eingang" zu einem anderen Server führt (konfiguriert für dieselbe IP), erhalten Sie Anycast.
Anycast... kind of?
┌────────[AS 65535]────────┐
client 1 ---ISP---│--BGProuter-----DNSserver │
¦ │ │
client 2 ---ISP---│--BGProuter-----DNSserver │
└──────────────────────────┘
Dies bedeutet auch, dass es BGP egal ist, ob der AS überhaupt nicht zusammenhängend ist. Um weltweite Redundanz zu erreichen, kündigen Sie einfach dasselbe Netzwerk von mehreren physischen Standorten aus an. Wenn Sie diese Standorte miteinander verbinden (damit sie das Netzwerk an einen Ort weiterleiten), erhalten Sie Multihoming. Wenn es sich um Inseln handelt, erhalten Sie Anycast.
Anycast
┌────────[AS 65535]────────┐
client 1 ---ISP---│--BGProuter-----DNSserver │
¦ └──────────────────────────┘
¦
¦ ┌────────[AS 65535]────────┐
client 2 ---ISP---│--BGProuter-----DNSserver │
└──────────────────────────┘
(Im Übrigen muss es nicht einmal dasselbe AS sein - z. B. werden 6to4-Relais von mehreren unabhängigen Organisationen betrieben, von denen jede ihren eigenen Weg in diese Richtung ankündigt 192.88.99.0/24
.)
Vorsichtsmaßnahmen:
Anycast bietet Redundanz, aber keinen Lastausgleich. Sobald BGP konvergiert, hat jeder Router eine einzelne bevorzugte Route (oder gelegentlich einige) ausgewählt und verwendet diese weiter, bis sich das Netzwerk ändert.
Sie können jedoch nicht vorhersagen, wie lange die Routen stabil bleiben werden. Daher kann es schwierig sein, zustandsbehaftete Dienste zu übertragen. DNS kommt damit durch, weil es zustandslos ist und hauptsächlich UDP verwendet (EDNS reduzierte den Bedarf an TCP-Verbindungen).
Es muss eine Koordination zwischen dem eigentlichen Dienst und dem BGP-Router bestehen, damit die Route zurückgezogen wird, wenn der Dienst abstürzt.
Siehe auch "Geschichte von 4.2.2.2. Was ist die Geschichte?" auf der NANOG-Mailingliste: Post 1 , Post 2 .