Qu'est-ce qu'un reseau DNS Anycast ?
Decouvrez comment le reseau anycast fonctionne, pourquoi il est essentiel pour le DNS, et comment il assure une resolution de noms a faible latence et resiliente dans le monde entier.
Qu'est-ce qu'un reseau DNS Anycast ?
En bref
- Anycast permet a plusieurs serveurs situes dans des emplacements differents de partager la meme adresse IP. Le reseau achemine automatiquement chaque requete vers le serveur le plus proche.
- C'est l'approche standard pour le DNS autoritaire haute performance, car les requetes DNS sont sans etat et sensibles a la latence.
- BGP (Border Gateway Protocol) est le protocole de routage qui permet a l'anycast de fonctionner sur l'Internet public.
- Lorsqu'un serveur tombe en panne, BGP retire sa route et le trafic bascule vers le serveur le plus proche suivant, sans aucun changement cote client.
Qu'est-ce que l'Anycast ?
Chaque appareil sur Internet possede une adresse IP. Dans une configuration unicast traditionnelle, chaque adresse IP correspond a un seul serveur. Lorsque vous envoyez un paquet a cette adresse, il arrive toujours sur la meme machine, peu importe ou vous vous trouvez dans le monde.
L'anycast inverse ce modele. La meme adresse IP est attribuee a des serveurs dans plusieurs emplacements physiques. Lorsqu'un paquet est envoye a une adresse anycast, le reseau le livre au serveur topologiquement le plus proche, base sur la distance de routage plutot que la distance geographique.
Pensez-y comme un numero d'appel national : vous composez toujours le meme numero, mais vous etes connecte au centre d'appels le plus proche de chez vous.
Unicast vs Anycast
| Unicast | Anycast | |
|---|---|---|
| Correspondance IP | Une IP → un serveur | Une IP → plusieurs serveurs |
| Routage | Atteint toujours la meme destination | Atteint la destination la plus proche |
| Basculement | Necessite des changements DNS ou de repartiteur de charge | Automatique via le retrait de route |
| Ideal pour | Connexions avec etat (applications web, bases de donnees) | Services sans etat (DNS, CDN, NTP) |
Comment BGP alimente l'Anycast
L'anycast repose sur BGP (Border Gateway Protocol), le protocole de routage qui connecte les systemes autonomes (reseaux) a travers Internet. Voici comment les deux fonctionnent ensemble :
- Annonce de prefixe — Chaque emplacement de serveur annonce le meme prefixe IP (par exemple un bloc /24) a ses fournisseurs reseau en amont via BGP.
- Propagation des routes — Ces annonces se propagent a travers les tables de routage d'Internet. Chaque routeur sur le chemin apprend que ce prefixe est accessible via plusieurs emplacements.
- Selection du meilleur chemin — Lorsqu'un paquet est envoye a une adresse dans ce prefixe, chaque routeur sur le trajet choisit la route avec le chemin AS le plus court (le moins de sauts reseau), pas necessairement la plus proche geographiquement.
- Livraison — Le paquet arrive a l'emplacement du serveur qui a remporte la decision de routage depuis ce point de vue particulier sur Internet.
Distance topologique vs geographique — BGP route en fonction du nombre de systemes autonomes qu'un paquet doit traverser, pas des kilometres physiques. Un serveur dans la meme ville pourrait etre "plus loin" en termes de routage qu'un serveur dans un autre pays si le chemin reseau traverse plus de systemes autonomes. En pratique, des chemins AS plus courts correspondent generalement a une latence plus faible, mais pas toujours.
Comment fonctionne le DNS Anycast
Le DNS est naturellement adapte a l'anycast car chaque requete est un echange UDP court et sans etat. Un resolveur envoie une question, obtient une reponse et passe a autre chose. Il n'y a pas de connexion persistante a maintenir.
Le parcours d'une requete
- L'application d'un utilisateur doit resoudre un nom de domaine et interroge un resolveur recursif (par exemple le resolveur du FAI ou un resolveur public comme 8.8.8.8).
- Le resolveur recherche les enregistrements NS du domaine pour trouver les serveurs de noms autoritaires. Ces enregistrements NS pointent vers des adresses IP anycast.
- Le resolveur envoie une requete DNS a l'une de ces IP anycast.
- Le routage BGP achemine la requete vers le point de presence (POP) le plus proche qui annonce ce prefixe IP.
- Le serveur de noms autoritaire a ce POP repond a la requete.
- Le resolveur met en cache la reponse selon le TTL de l'enregistrement et la renvoie a l'utilisateur.
L'utilisateur et le resolveur n'ont jamais besoin de savoir quel serveur physique a repondu. De leur point de vue, ils ont interroge une seule adresse IP et obtenu une reponse rapide.
Basculement automatique
Si un POP se deconnecte ou devient defaillant, il retire sa route BGP pour le prefixe anycast. Les routeurs en amont convergent sur les annonces restantes et commencent a diriger le trafic vers le POP le plus proche suivant. Cela se produit au niveau de la couche reseau en quelques secondes, sans aucun changement requis cote client et sans delai de propagation DNS.
Avantages de l'Anycast pour le DNS
Latence reduite
Les requetes sont traitees par le POP le plus proche au lieu de voyager jusqu'a une origine distante unique. Pour un public mondial, cela peut reduire les temps aller-retour de centaines de millisecondes a quelques millisecondes.
Resilience et haute disponibilite
La perte d'un POP ne provoque pas de panne. BGP reroute automatiquement le trafic. Plusieurs POP peuvent tomber en panne simultanement et le service continue tant qu'au moins un POP sain reste actif.
Dilution des attaques DDoS
Une attaque volumetrique ciblant une IP anycast est automatiquement repartie sur tous les POP annoncant ce prefixe. Chaque emplacement n'absorbe qu'une fraction du trafic total, rendant beaucoup plus difficile pour un attaquant de submerger un site unique.
Zero configuration cote client
Comme l'anycast opere au niveau de la couche de routage, les clients et les resolveurs n'ont besoin d'aucune configuration speciale. Ils interrogent les memes adresses IP quel que soit leur emplacement, et le reseau s'occupe du reste.
Anatomie d'un reseau DNS Anycast
Un deploiement DNS anycast typique comprend ces composants a chaque point de presence :
En peripherie (chaque POP)
- Daemon BGP — Annonce les prefixes anycast partages aux fournisseurs en amont. Retire les routes si les controles de sante locaux echouent.
- Repartiteur de charge DNS — Accepte les requetes sur les IP anycast, effectue des controles de sante sur les serveurs de noms en backend et equilibre la charge. Met en cache les reponses pour reduire la charge backend.
- IP Anycast sur loopback — Les adresses IP partagees sont configurees sur l'interface loopback avec des masques /32 (IPv4) ou /128 (IPv6) afin d'etre presentes localement pour que le daemon BGP les annonce.
Derriere la peripherie
- Serveurs de noms autoritaires — Servent les enregistrements DNS reels. Peuvent fonctionner au POP ou dans un emplacement centralise accessible via un reseau prive.
- Replication des donnees de zone — Maintient tous les serveurs de noms synchronises. Les approches courantes incluent la replication de base de donnees, les transferts de zone AXFR/IXFR ou la synchronisation basee sur des fichiers.
- Surveillance et telemetrie — Renvoie des signaux de sante au daemon BGP pour que le retrait de route se fasse automatiquement lorsque quelque chose casse.
Diagramme de flux du trafic
Le diagramme suivant montre comment une requete DNS traverse un reseau anycast. La requete du resolveur est acheminee par BGP vers le POP sain le plus proche, qui repond au nom de l'IP anycast partagee.
Comment DNScale utilise l'Anycast
DNScale exploite deux reseaux anycast distincts pour servir les requetes DNS a l'echelle mondiale tout en respectant les exigences de conformite regionale :
- Reseau UE — Dedie aux points de presence europeens. Les zones necessitant une resolution DNS exclusivement europeenne sont servies uniquement depuis ce reseau, maintenant les requetes et reponses au sein des operateurs europeens.
- Reseau mondial — Couvre l'Europe, l'Amerique du Nord et l'Asie-Pacifique. Offre une couverture mondiale pour les zones sans contraintes juridictionnelles.
Chaque point de presence annonce les prefixes anycast partages via BGP, equilibre la charge des requetes entrantes avec un controle de sante integre et sert des reponses DNS autoritaires coherentes a travers tous les emplacements.
Cette architecture a double reseau signifie que les clients peuvent choisir par zone si leur DNS doit etre resolu depuis les POP de l'UE uniquement ou depuis le reseau mondial complet, simplement en selectionnant les serveurs de noms appropries chez leur registraire.
Pour aller plus loin — Pour un apercu detaille du fonctionnement du pipeline Global DNS Resolution Balancing (GDRB) de DNScale — incluant la detection d'entree, le moteur de politiques et la signalisation des routes — consultez le guide Global DNS Resolution Balancing.
Points cles a retenir
- L'anycast attribue la meme IP a des serveurs dans plusieurs emplacements. Le routage BGP achemine chaque requete vers le plus proche.
- C'est le standard de l'industrie pour le DNS autoritaire car le DNS est sans etat, sensible a la latence et beneficie du basculement automatique.
- Le basculement est gere au niveau de la couche reseau en quelques secondes, pas au niveau DNS en plusieurs minutes.
- Les attaques DDoS sont naturellement diluees a travers tous les POP.
- DNScale utilise des reseaux anycast doubles (UE + Mondial) pour combiner performance et conformite regionale.
Pour aller plus loin
- Global DNS Resolution Balancing — Comment le pipeline GDRB de DNScale dirige les requetes a travers ses POP anycast
- Qu'est-ce que le DNS ? — Les fondamentaux du systeme de noms de domaine
- Types de serveurs DNS — Serveurs autoritaires vs recursifs expliques
- Qu'est-ce qu'un enregistrement NS ? — Comment fonctionne la delegation de serveurs de noms