web-dev-qa-db-fra.com

Pourquoi Heroku met-il en garde contre les noms de domaine "nus"?

J'ai croisé cette page dans les documents Heroku ...

Les domaines nus, également appelés domaines nus ou apex, sont configurés dans DNS via des enregistrements A et ont de sérieuses implications sur la disponibilité lorsqu'ils sont utilisés dans des environnements hautement disponibles tels que les centres de données massifs sur site, les services d'infrastructure cloud et les plates-formes comme Heroku.

Pour une évolutivité et une résilience maximales, les applications doivent éviter les domaines nus et s'appuyer uniquement sur des noms d'hôte basés sur des sous-domaines.

Quelqu'un parle-t-il ici Entreprise? Quelles sont les "implications de disponibilité" dont ils mettent en garde?

(Je remarque que http://stackoverflow.com ne fonctionne pas, il y a donc évidemment des philosophies alternatives viables sur cette question.)

66
Agvorth

Ce dont ils parlent, c'est que lorsque vous utilisez un CNAME pour pointer vers leurs services (ce qui n'est possible que sur le sous-domaine, pas sur la racine de la zone - il ne peut pas coexister avec le SOA et NS enregistrements requis à la racine de votre zone), ils peuvent modifier leurs propres enregistrements DNS pour contourner une sorte de problème de disponibilité.

Avec une racine de zone, vous devez utiliser un enregistrement A pour pointer vers une adresse IP spécifique pour le service. S'ils ont un problème avec le routage, ou une sorte de déni de service contre cette adresse spécifique, ils ne sont pas en mesure de mettre à jour l'enregistrement de votre zoneA pour pointer vers une IP différente sur la mouche; ils peuvent mettre à jour le leur, cependant, et c'est ce qu'un CNAME leur permet de faire.

Cela ne s'applique pas à Stack Exchange car ils n'utilisent pas la plate-forme d'un tiers; ce sont eux qui répondent à un problème de disponibilité, que ce soit un CNAME ou un A ne fait aucune différence pour eux.

58
Shane Madden

En complément de la réponse de @ ShaneMadden, une solution de contournement consiste à ce que la plate-forme tierce gère également votre zone DNS. Par exemple, si vous utilisez le service Elastic Load Balancer d'AWS, et leur Route 53 Service DNS, vous pouvez pointer de manière fiable le sommet de la zone vers une instance ELB en utilisant leurs enregistrements d'alias personnalisés, ce qui leur permet de mettre à jour votre zone DNS en réponse à des problèmes de disponibilité.

Ceci est cependant un argument contre le concept no-www , puisque www.example.com peut avoir un enregistrement CNAME.

13
mgorven