Many have surely heard of Anycast. In this method of network addressing and routing, a single IP address is assigned to multiple servers across the network. These servers can even be located in data centers that are far apart. The idea behind Anycast is that, depending on the location of the request source, data is sent to the nearest server (according to the network topology, specifically the BGP routing protocol). This way, the number of network hops and latency can be reduced.
Essentially, the same route is advertised from multiple data centers around the world. Therefore, clients will be directed to the 'best' and 'nearest' data center based on BGP routes. But why choose Anycast? Why use Anycast instead of Unicast?
Unicast is indeed suitable for a website with a single web server and moderate traffic. However, if a service has millions of subscribers, it typically employs numerous web servers, each holding the same IP address. These servers are geographically distributed for optimal request handling.
In such a scenario, Anycast provides performance improvements (traffic is directed to the user with minimal delay), ensures service reliability (thanks to backup servers), and load balancing—routing to multiple servers effectively distributes the load among them, thus enhancing website speed.
Operators offer various types of load balancing based on Anycast and DNS. Clients can specify IP addresses to which requests will be sent based on the geographic location of the site. This allows for more flexible distribution of user requests.
Suppose there are several sites between which the load (users) needs to be distributed, for example, an online store with 100,000 requests a day or a popular blog. To limit the region from which users access a specific site, the Geo Community option can be used. It allows limiting the region within which the operator will announce the route.


Anycast and Unicast: differences
Le Anycast est souvent utilisé dans des applications telles que le DNS (système de noms de domaine) et le CDN (réseaux de distribution de contenu), permettant de prendre des décisions de routage qui améliorent la performance du réseau. Les réseaux de distribution de contenu utilisent Anycast car ils gèrent de grands volumes de trafic, et Anycast présente dans ce cas plusieurs avantages (qui seront détaillés ci-dessous). Dans le DNS, Anycast permet d'augmenter considérablement le niveau de fiabilité et de résilience du service.

Dans Anycast IP, en utilisant BGP, il existe plusieurs chemins vers un hôte spécifique. En réalité, ce sont des copies d'hôtes dans plusieurs centres de données, utilisées pour établir des connexions avec une latence plus faible.
Ainsi, dans un réseau Anycast, la même adresse IP est annoncée depuis différents endroits, et le réseau décide où diriger la requête de l'utilisateur en fonction du « coût » du chemin. Par exemple, le protocole BGP est souvent utilisé pour déterminer le chemin le plus court pour le transfert de données. Lorsque l'utilisateur envoie une requête Anycast, BGP détermine le meilleur chemin vers les serveurs disponibles dans le réseau Anycast.
Avantages d'Anycast
Réduction de la latence
Les systèmes avec Anycast peuvent réduire la latence lors du traitement des requêtes des utilisateurs, car ils permettent d'obtenir des données à partir du serveur le plus proche. Cela signifie que les utilisateurs se connecteront toujours au serveur DNS le « plus proche » (en termes de protocole de routage). En conséquence, Anycast réduit le temps d'interaction en diminuant la distance réseau entre le client et le serveur. Cela non seulement réduit la latence, mais permet aussi un équilibrage de charge.
Vitesse
Comme le trafic est dirigé vers le nœud le plus proche et que la latence lors de la transmission des données entre le client et le nœud est réduite, cela optimise la vitesse de livraison, peu importe d'où le client demande des informations.
Stabilité et résilience accrues
Si plusieurs serveurs à travers le monde utilisent la même adresse IP, en cas de défaillance de l'un des serveurs ou de son arrêt, le trafic sera redirigé vers le serveur le plus proche. En conséquence, Anycast rend le service plus résilient et assure un meilleur accès au réseau/latence/vitesse.
Ainsi, grâce à la présence de plusieurs serveurs constamment accessibles pour les utilisateurs, Anycast, par exemple, améliore la stabilité du fonctionnement du DNS. En cas de défaillance d'un nœud, les demandes des utilisateurs seront redirigées vers un autre serveur DNS sans aucune intervention manuelle ou reconfiguration. Anycast permet un basculement presque transparent vers d'autres sites, simplement en supprimant les itinéraires du site problématique.
Équilibrage de charge
Dans le système Anycast, le trafic réseau est réparti sur différents serveurs. Cela signifie qu'il fonctionne comme un équilibreur de charge, empêchant qu'un seul serveur reçoive la majorité du trafic. L'équilibrage de charge peut être utilisé, par exemple, lorsque plusieurs nœuds réseau sont situés à la même distance géographique de la source des demandes. Dans ce cas, la charge est répartie entre les nœuds.
Réduction de l'impact des attaques DoS
Une autre caractéristique d'Anycast est sa résilience face aux DDoS. Les attaques DDoS auront du mal à paralyser le système Anycast, car il faudrait submerger tous les serveurs de ce réseau avec une avalanche de requêtes.
Dans les attaques DDoS, des botnets sont souvent utilisés, capables de générer un volume de trafic si important qu'il surcharge le serveur ciblé. L'avantage d'utiliser Anycast dans cette situation est que chaque serveur peut « absorber » une partie de l'attaque, réduisant ainsi la charge sur un serveur spécifique. Une attaque de type « déni de service » sera probablement localisée sur le serveur et n'affectera pas l'ensemble du service.
Haute évolutivité horizontale
Les systèmes Anycast sont très adaptés aux services avec de forts volumes de trafic. Si un service utilisant Anycast nécessite de nouveaux serveurs pour gérer le trafic croissant, de nouveaux serveurs peuvent être ajoutés au réseau pour le traiter. Ils peuvent être déployés sur de nouveaux sites ou sur des sites déjà existants.
Lorsqu'une forte augmentation du trafic est observée à un endroit spécifique, l'ajout d'un serveur peut aider à équilibrer la charge pour ce site. L'ajout d'un serveur sur un nouveau site peut réduire le temps d'attente en créant un nouveau chemin le plus court pour certains utilisateurs. Les deux méthodes contribuent également à améliorer la stabilité du service, car de nouveaux serveurs deviennent disponibles sur le réseau. Ainsi, si un serveur est surchargé, un autre peut être déployé à un endroit qui lui permettra de gérer une part des requêtes du serveur surchargé. Aucune configuration de la part des clients n'est nécessaire.
C'est le seul moyen d'assurer des téraoctets de trafic et un très grand nombre d'utilisateurs, lorsque le serveur a seulement quelques ports de 10 ou 25 Gbit/s. 100 hôtes avec une seule adresse IP permettront de traiter des volumes de trafic en téraoctets.
Simplicité de gestion de la configuration
Comme mentionné précédemment, une utilisation intéressante de l'Anycast est le DNS. Plusieurs serveurs DNS différents peuvent être placés dans les nœuds du réseau, mais un seul nom DNS peut être utilisé. Selon l'emplacement de la source, les requêtes sont redirigées vers le nœud le plus proche. Cela permet d'assurer un certain équilibre de trafic et de redondance en cas de défaillance du serveur DNS. Ainsi, au lieu de configurer différents serveurs DNS en fonction de leur emplacement, la configuration d'un seul serveur DNS peut être étendue à tous les nœuds.
Les réseaux Anycast peuvent être configurés pour router les requêtes non seulement en fonction de la distance, mais aussi de paramètres tels que la disponibilité du serveur, le nombre de connexions établies, ou le temps de réponse.
Aucun serveur, réseau ou composants spéciaux ne sont requis du côté client pour utiliser la technologie Anycast. Cependant, l'Anycast a ses inconvénients. On considère que son implantation est une tâche complexe, nécessitant un équipement supplémentaire, des fournisseurs fiables, et un routage correct du trafic.
D'une source pure vers un lointain merveilleux
Bien que l'Anycast dirige les utilisateurs sur la base du nombre minimum de sauts, cela ne signifie pas nécessairement une latence minimale. La latence est une métrique plus complexe, car pour un saut unique, elle peut être plus élevée que pour dix sauts.

Exemple : les communications intercontinentales peuvent inclure un passage avec une très haute latence.
L'Anycast est principalement utilisé pour les services basés sur UDP, tels que le DNS. Les requêtes des utilisateurs sont dirigées vers le centre de données 'meilleur' et 'le plus proche' en fonction des routes BGP.

Exemple : une station de travail DNS cliente avec l'adresse IP Anycast DNS 123.10.10.10 effectue la résolution DNS pour le serveur de noms DNS le plus proche parmi trois serveurs déployés avec la même adresse IP Anycast. En cas de défaillance du routeur R1 ou du serveur A, les paquets DNS du client seront automatiquement redirigés vers le serveur DNS le plus proche suivant via les routeurs R2 et R3. En outre, la route vers notre serveur A sera supprimée des tables de routage, ce qui empêchera toute utilisation ultérieure de ce serveur de noms.
Scénarios de déploiement
Il existe deux schémas communs utilisés pour déterminer à quel serveur l'utilisateur se connecte :
- Anycast au niveau du réseau. Connecte l'utilisateur au serveur le plus proche. Ici, le chemin réseau entre l'utilisateur et le serveur est important.
- Anycast au niveau de l'application. Ce schéma englobe plus de métriques calculables, y compris la disponibilité du serveur, le temps de réponse, le nombre de connexions, etc. Cela dépend d'un moniteur externe qui fournit des statistiques sur le réseau.
CDN basé sur Anycast
Revenons maintenant à l'utilisation de l'Anycast dans les réseaux de livraison de contenu. L'Anycast est sans aucun doute un concept réseau intéressant et gagne de plus en plus de reconnaissance parmi les fournisseurs de CDN de nouvelle génération.
Le CDN est un réseau distribué de serveurs qui livrent du contenu aux utilisateurs finaux avec une haute disponibilité et une faible latence. Les réseaux de livraison de contenu jouent aujourd'hui un rôle crucial, étant à la base de nombreux services en ligne multimédias, tandis que les consommateurs deviennent de moins en moins tolérants aux vitesses de chargement lentes. Les applications vidéo et vocales sont particulièrement sensibles au jitter et à la latence sur le réseau.
Le CDN regroupe tous les serveurs en un seul réseau et permet un chargement plus rapide du contenu. Il est parfois possible de réduire le temps d'attente de l'utilisateur de 5 à 6 secondes. L'objectif du CDN est d'optimiser la livraison en fournissant le contenu à partir du serveur le plus proche de l'utilisateur final. Cela fonctionne très similaire à Anycast, où le serveur le plus proche est sélectionné en fonction de la localisation de l'utilisateur final. Bien qu'il semble que chaque fournisseur de services CDN utilise par défaut Anycast, ce n’est pas toujours le cas.
Les applications qui utilisent des protocoles tels que HTTP/TCP reposent sur une connexion établie. Si un nouveau nœud Anycast est sélectionné (par exemple, en cas de défaillance d'un serveur), le service peut être interrompu. C'est pourquoi Anycast était auparavant recommandé pour des services sans connexion tels que UDP et DNS. Cependant, Anycast fonctionne également bien pour les protocoles orientés connexion, par exemple, TCP fonctionne parfaitement en mode Anycast.
Certains fournisseurs de CDN appliquent une routage basé sur Anycast, d'autres préfèrent la routage basée sur DNS : le serveur le plus proche est choisi en fonction de l'emplacement du serveur DNS de l'utilisateur.
Les infrastructures hybrides et celles avec plusieurs centres de données sont un autre exemple de l'application d'Anycast. L'adresse Load Balancing IP fournie par le fournisseur permet de répartir la charge entre les adresses IP de différents services clients dans le centre de données du fournisseur. Grâce à la technologie d'adressage à tout appareil, cela assure de meilleures performances en cas de trafic important, une tolérance aux pannes et aide à optimiser le temps de réponse lors d'un grand nombre d'utilisateurs.
Dans les infrastructures hybrides avec plusieurs centres de données, il est possible de répartir le trafic entre des serveurs ou même des machines virtuelles sur des serveurs dédiés.
Il existe donc un large éventail de solutions techniques pour construire l'infrastructure. Il est également possible de configurer le équilibrage de la charge par adresses IP dans plusieurs centres de traitement de données, en utilisant l'adressage à tout appareil pour optimiser le fonctionnement du site.
Il est possible de distribuer le trafic selon ses propres règles, en définissant le « poids » de chacun des serveurs répartis dans chaque datacenter. Cette configuration est particulièrement utile lorsqu'il existe un parc de serveurs répartis et que les performances des services ne sont pas uniformes. Cela permettra de distribuer le trafic plus souvent pour améliorer les performances des serveurs.
Pour créer un système de surveillance à l'aide de la commande ping, il est possible de configurer des sondes. Cela permet à l'administrateur de définir ses propres procédures de surveillance et d'obtenir une vision plus claire de l'état de chaque composant de l'infrastructure. Ainsi, il est possible de définir des critères de disponibilité.
Il est possible de construire une infrastructure hybride : il peut être pratique de laisser le back-office dans le réseau d'entreprise et d'externaliser la partie interface à un fournisseur.
Il est possible d'ajouter des certificats SSL pour l'équilibrage de la charge, le chiffrement des données transmises et la sécurité des communications entre les visiteurs du site et l'infrastructure de l'entreprise. En cas d'équilibrage de la charge entre les datacenters, il est également possible d'appliquer SSL.
Le service Anycast avec équilibrage de la charge des adresses peut être obtenu auprès du fournisseur. Cette fonctionnalité aidera à améliorer l'algorithme d'interaction des utilisateurs avec les applications en fonction de leur emplacement. Il suffit de déclarer quels services sont disponibles dans le datacenter, et le trafic sera redirigé vers l'infrastructure la plus proche. Si des serveurs dédiés sont disponibles, par exemple en France ou en Amérique du Nord, les clients seront dirigés vers le serveur le plus proche dans le réseau.
L'une des options d'utilisation d'Anycast est le choix optimal du point de présence de l'opérateur (PoP). Voici . LinkedIn (bloqué en Russie) s'efforce non seulement d'améliorer les performances et la rapidité de ses produits — applications mobiles et web — mais aussi d'optimiser l'infrastructure réseau pour une livraison de contenu accélérée. Pour cela, LinkedIn utilise activement des PoP - points de présence - pour une livraison dynamique de contenu. Pour diriger les utilisateurs vers le PoP le plus proche, Anycast est utilisé.
La raison en est qu'avec Unycast, chaque PoP LinkedIn a une adresse IP unique. Ensuite, les utilisateurs se voient attribuer un PoP en fonction de leur emplacement géographique via DNS. Le problème est qu'en utilisant DNS, environ 30 % des utilisateurs aux États-Unis étaient redirigés vers un PoP non optimal. Grâce à la mise en œuvre progressive d'Anycast, l'attribution non optimale de PoP a chuté de 31 % à 10 %.

Les résultats du test pilote sont affichés sur le graphique, où l'axe Y représente le pourcentage d'attributions optimales de PoP. Au fur et à mesure que l'Anycast se « renforce » dans de nombreux États américains, une amélioration du pourcentage de trafic vers le PoP optimal a été observée.
Surveillance du réseau Anycast
Théoriquement, les réseaux Anycast sont simples : plusieurs serveurs physiques se voient attribuer la même adresse IP, que BGP utilise pour déterminer la route. Mais la mise en œuvre et la conception des plateformes Anycast sont complexes, particulièrement celles des réseaux Anycast réputés pour leur tolérance aux pannes. La surveillance efficace du réseau Anycast pour une détection et une localisation rapides des pannes est encore plus complexe.
Si des services utilisent un fournisseur CDN tiers pour dispenser leur contenu, il est très important de suivre et vérifier les performances du réseau. Lors de la surveillance d'un CDN basé sur Anycast, l'accent est mis sur la mesure des latences de bout en bout et des caractéristiques du dernier saut, afin de comprendre quel centre de données délivre le contenu. L'analyse des en-têtes HTTP du serveur est une autre manière de déterminer l'origine des données.

Exemple : en-têtes de réponse HTTP indiquant l'emplacement du serveur CDN.
Par exemple, CloudFlare utilise son propre en-tête CF-Ray dans les réponses HTTP, qui inclut l'indication du centre de données qui a reçu la requête. Dans le cas de Zendesk, l'en-tête CF-Ray pour la région de Seattle est CF-RAY : 2a21675e65fd2a3d-SEA, tandis que pour Amsterdam, il est CF-RAY : 2a216896b93a0c71-AMS. On peut également utiliser les en-têtes HTTP-X de la réponse HTTP pour déterminer où se trouve le contenu.
Autres méthodes d'adressage
Il existe d'autres méthodes d'adressage pour router les requêtes des utilisateurs vers un point final spécifique du réseau :
Unicast
La majeure partie d'Internet aujourd'hui utilise justement cette méthode. Unicast est un envoi unidirectionnel, l'adresse IP n'est liée qu'à un seul nœud spécifique du réseau. On appelle cela un appariement univoque.
Multicast
Le multicast utilise une communication « un à plusieurs parmi plusieurs » ou « plusieurs à plusieurs ». Le multicast permet d'envoyer une requête de l'expéditeur simultanément à différents points de terminaison sélectionnés. Cela permet au client de télécharger des fichiers par morceaux depuis plusieurs hôtes en même temps (ce qui est utile pour le streaming audio ou vidéo). Le multicast est souvent confondu avec l'anycast, cependant, la principale différence est que l'anycast dirige l'expéditeur vers un nœud spécifique, même si plusieurs nœuds sont disponibles.
Broadcast
Un datagramme d'un unique expéditeur est dirigé vers tous les points de terminaison associés à l'adresse de diffusion. Le réseau réplique automatiquement les datagrammes afin de pouvoir communiquer avec tous les destinataires lors d'une diffusion (généralement dans le même sous-réseau).
Geocast
Le geocast est en quelque sorte similaire au multicast : les requêtes de l'expéditeur sont envoyées simultanément à plusieurs points de terminaison. Cependant, la différence réside dans le fait que le destinataire est déterminé par sa position géographique. Il s'agit d'une forme spécialisée d'adressage groupé utilisée par certains protocoles de routage pour les réseaux mobiles pair-à-pair.
Le routeur géographique (Geo Router) calcule sa zone de service et l'approxime. Les géo-routeurs, en échangeant des zones de service, construisent des tables de routage. Le système de géo-routeurs a une structure hiérarchique.



Unicast, Multicast et Broadcast.
L'utilisation de la technologie Anycast améliore le niveau de fiabilité, de tolérance aux pannes et de sécurité du DNS. En utilisant cette technologie, les opérateurs offrent à leurs clients des services de divers types de répartition de charge basés sur DNS. Dans le panneau de contrôle, il est possible d'indiquer les adresses IP vers lesquelles les requêtes seront envoyées en fonction de la localisation géographique. Cela permettra aux clients de distribuer plus efficacement les requêtes des utilisateurs.
Certains opérateurs appliquent des outils de surveillance de la route à chaque point de présence (POP) : le système analyse automatiquement les itinéraires locaux et mondiaux les plus courts pour les points de présence et les redirige via les localisations géographiques avec la latence la plus faible et un temps d'arrêt nul.
Actuellement, Anycast est la solution la plus stable et fiable pour la création de services DNS à fort trafic, qui exigent une grande résilience et fiabilité.
Le domaine .ru prend en charge 35 serveurs Anycast DNS, regroupés en 20 nœuds, répartis sur cinq nuages Anycast. Un principe de construction géographique, c'est-à-dire Geocast, est utilisé. Lors de l'implantation des nœuds DNS, il est prévu de les localiser dans des emplacements géographiquement dispersés, proches des utilisateurs les plus actifs, avec une concentration maximale de fournisseurs russes au point de localisation du nœud, ainsi que la disponibilité de capacités libres et la facilité d'interaction avec le site.
Comment construire un CDN ?
CDN — un réseau de serveurs qui accélère la livraison de contenu aux utilisateurs. regroupe tous les serveurs en un seul réseau et assure un chargement plus rapide du contenu. La vitesse de chargement est fortement influencée par la distance entre le serveur et l'utilisateur.
Le CDN permet d'utiliser des serveurs qui se trouvent le plus près de l'audience cible. Cela réduit le temps d'attente et aide à accélérer le chargement du contenu des sites pour tous les visiteurs, ce qui est particulièrement critique pour les sites avec des fichiers volumineux ou des services multimédia. Les domaines d'application typiques du CDN incluent le commerce électronique et le secteur du divertissement.
Le réseau de serveurs supplémentaires créé dans l'infrastructure CDN, situé le plus près possible des utilisateurs, contribue à une livraison de données plus stable et rapide. Selon les statistiques, l'utilisation du CDN réduit la latence d'accès au site de plus de 70 % par rapport aux sites sans CDN.
Comment? Настройка CDN с использованием собственного решения Anycast может быть достаточно дорогим проектом, но есть более дешевые варианты. Например, можно использовать GeoDNS и обычные серверы с уникальными IP-адресами. С помощью сервисов GeoDNS можно создать CDN с функциями геолокации, в которой решения принимаются на основе реального местоположения посетителя, а не местоположения ресолвера DNS. Можно настроить свою DNS-зону так, чтобы показывать IP-адреса американских серверов посетителям из США, а европейские посетители будут видеть IP-адрес из Европы.
Avec GeoDNS, il est possible de renvoyer des réponses DNS différentes en fonction de l'adresse IP de l'utilisateur. Pour ce faire, le serveur DNS est configuré pour renvoyer des adresses IP différentes selon l'adresse IP source de la requête. En général, une base de données GeoIP est utilisée pour déterminer la région d'où provient la requête. La géolocalisation via DNS permet d'envoyer aux utilisateurs du contenu depuis le site le plus proche.
GeoDNS détermine l'adresse IP du client ayant envoyé la requête DNS ou l'adresse IP du serveur DNS récursif du fournisseur utilisé lors du traitement de la requête client. À partir de l'adresse IP du client et de la base GeoIP, le pays/région est identifié. Le client reçoit ensuite l'adresse IP du serveur CDN le plus proche. Vous pouvez lire plus en détail sur la configuration de GeoDNS..
Anycast ou GeoDNS ?
Bien que l'Anycast soit un excellent moyen de livrer du contenu à l'échelle mondiale, il lui manque de la spécificité. C'est ici que GeoDNS entre en jeu. Ce service permet de créer des règles qui dirigent les utilisateurs vers des points de terminaison uniques en fonction de leur emplacement.

Exemple : les utilisateurs d'Europe sont dirigés vers un autre point de terminaison.
Il est également possible d'interdire l'accès à des domaines en rejetant toutes les requêtes. C'est, en particulier, un moyen rapide de couper les attaquants.
GeoDNS fournit des réponses plus précises que l'Anycast. Dans le cas de l'Anycast, le chemin le plus court est déterminé par le nombre de sauts, tandis qu'avec GeoDNS, le routage pour les utilisateurs finaux se fait en fonction de leur emplacement physique. Cela réduit la latence et améliore la précision lors de la création de règles de routage granulaires.
Lors de la navigation vers un domaine, le navigateur se connecte au serveur DNS le plus proche qui, selon le domaine, fournit l'adresse IP pour charger le site. Supposons qu'un site de commerce électronique soit populaire aux États-Unis et en Europe, et qu'il n'y ait que des serveurs DNS pour lui en Europe. Dans ce cas, les utilisateurs des États-Unis qui souhaitent utiliser les services de la boutique devront envoyer une requête au serveur le plus proche, et comme il est très éloigné, ils devront attendre longtemps pour une réponse - le chargement du site ne sera pas rapide.
En déployant un serveur GeoDNS aux États-Unis, les utilisateurs s'adresseront à celui-ci. La réponse sera rapide, ce qui influencera la vitesse de chargement du site.
Dans une situation où un serveur DNS existe déjà aux États-Unis, lors de l'accès à ce domaine, l'utilisateur américain se rapprochera du serveur le plus proche, qui fournira l'IP requise. L'utilisateur sera dirigé vers le serveur contenant le contenu du site, mais comme les serveurs contenant le contenu sont éloignés, il ne l'obtiendra pas rapidement.
Si vous hébergez des serveurs aux États-Unis et des serveurs CDN avec des données mises en cache, lors du chargement, le navigateur du client enverra une demande au serveur DNS le plus proche, qui renverra l'adresse IP requise. Le navigateur, avec l'adresse IP reçue, se connecte au serveur CDN le plus proche et au serveur principal, et le serveur CDN transmet au navigateur le contenu mis en cache. Pendant que le contenu mis en cache se charge, les fichiers manquants pour le chargement complet du site proviennent du serveur principal. Cela réduit le temps de chargement du site, car beaucoup moins de fichiers sont envoyés depuis le serveur principal.
Déterminer la localisation exacte d'une adresse IP donnée n'est pas toujours une tâche facile : de nombreux facteurs entrent en jeu, et les propriétaires de plages d'adresses IP peuvent décider de les annoncer à l'autre bout du monde (vous devrez alors attendre que la base de données se mette à jour pour obtenir la bonne localisation). Parfois, les fournisseurs de VPS attribuent des adresses censées se trouver aux États-Unis pour des VPS situés à Singapour.
Contrairement à l'utilisation d'adresses Anycast, la répartition s'effectue lors de la résolution des noms et non lors de la connexion au serveur de mise en cache. Si le serveur récursif ne prend pas en charge les sous-réseaux clients EDNS, il utilise la localisation de ce serveur récursif, et non celle de l'utilisateur qui se connectera au serveur de mise en cache.
Les sous-réseaux clients dans DNS sont une extension de DNS (RFC7871) qui définit comment les serveurs DNS récursifs peuvent envoyer des informations sur le client au serveur DNS, en particulier les informations réseau que le serveur GeoDNS peut utiliser pour définir plus précisément la localisation du client.
La plupart des utilisateurs se servent des serveurs DNS de leur fournisseur d'accès Internet ou de serveurs DNS géographiquement proches d'eux, mais si quelqu'un aux États-Unis décide pour une raison quelconque d'utiliser un résolveur DNS situé en Australie, il obtiendra probablement l'adresse IP du serveur le plus proche de l'Australie.
Si vous souhaitez utiliser GeoDNS, il est important de connaître ces particularités, car dans certains cas, cela peut augmenter la distance entre les serveurs de mise en cache et le client.
Résumé : si vous souhaitez combiner plusieurs VPS en CDN, la meilleure option de déploiement est d'utiliser une combinaison d'un serveur DNS avec fonction GeoDNS + Anycast « prêt à l'emploi ».
Source : habr.com
