Comment changer de DNS pour un site Web sans interruption de service?

13

Je souhaite changer le DNS de notre site Web sans interruption de service

L'adresse IP du serveur reste la même.
Habituellement, il faut 24 à 48 heures pour mettre à jour Internet dans son ensemble.
Est-il possible de faire fonctionner les deux DNS en parallèle?

Note importante de JamesRyan:

Gardez à l'esprit que certains serveurs DNS ne respectent pas les TTL faibles et mettent en cache de toute façon. Attendez-vous à un certain chevauchement.

^ c'est exactement un problème.


Contexte:

J'ai changé le DNS de notre site Web en un autre fournisseur (bluehost qui semble être cassé et montre assez souvent leur page d'annonces au lieu de notre site), donc je suis revenu à l'ancien DNS d'origine après environ 2 heures.

L'IP du serveur est restée la même, donc j'espérais ne pas avoir de perturbation de service, car les deux DNS affichent le même serveur.

Maintenant, 24 heures plus tard, 30% d'Internet utilise toujours le fournisseur défectueux / incorrect (bluehost), qui n'est pas référencé dans le whois. (concernant Pingdom + plusieurs utilisateurs signalent qu'ils ne peuvent pas nous rendre visite)

Lupo
la source

Réponses:

18

Façon appropriée de le faire:

  1. Modifiez la zone TTL au minimum - dans la plupart des cas, elle est de 300 secondes (5 minutes). Ne modifiez aucun enregistrement à ce stade.
  2. Attendez 48 heures.
  3. Faites le changement. Il ne faudra que 5 minutes pour propager les modifications.
  4. Rétablir TTL à 48 heures standard.

Cette procédure s'applique à toutes les modifications, pas seulement aux modifications NS. Si vous devez modifier l'adresse IP de l'enregistrement A, cela fonctionnera exactement de la même manière. Bien que cela ne soit pas absolument nécessaire et en théorie, vous pourriez exécuter deux serveurs de noms au moment où c'est une mauvaise idée. Vous ne savez jamais si vous n'aurez pas besoin de faire des changements d'urgence au cours de cette période de 48 heures.

skrobul
la source
6
Gardez à l'esprit que certains serveurs DNS ne respectent pas les TTL faibles et mettent en cache de toute façon. Attendez-vous à un certain chevauchement.
JamesRyan
> Gardez à l'esprit que certains serveurs DNS ne respectent pas les TTL bas et mettent en cache de toute façon. <- Je suppose que c'est un problème et responsable d'une interruption de service!
Lupo
6
Pas dans ce cas, tant que vous gardez les deux serveurs à travers une fenêtre de basculement de 4 jours.
David Schwartz
1
Il n'est pas clair si cette réponse traite la situation où les serveurs de noms restent les mêmes, mais l'IP du serveur Web change. Et il ne traite certainement pas de la façon de réduire le temps d'arrêt à quelques secondes. Je vais poser une nouvelle question.
Buttle Butkus
3

Si vous modifiez votre fournisseur DNS (les serveurs de noms affichés en whois), alors oui, vous pouvez les exécuter en parallèle. En regardant mon domaine, le TTL utilisé par les serveurs GTLD (ceux qui indiquent aux autres internautes qui exécutent mon DNS) est de 48 heures. Pour autant que je sache, il n'est pas possible de changer cela.

Habituellement, tout ce que vous feriez est de demander à votre registraire de domaine de modifier les entrées du serveur de noms en vous assurant que le nouveau fournisseur est déjà configuré et que l'ancien fournisseur conserve ses entrées en direct pendant au moins 48 heures.

Comme mentionné dans l'autre réponse, si vous modifiez simplement vos propres enregistrements, vous pouvez réduire la TTL sur l'enregistrement au préalable pour permettre un échange presque instantané, bien que certains mauvais serveurs DNS restent en cache plus longtemps.

USD Matt
la source
> et que l'ancien fournisseur conserve ses entrées en ligne pendant au moins 48 heures. <- je suppose que c'est ce que j'ai fait de mal.
Lupo
3

Tout d'abord, clarifions notre terminologie, car ce que vous demandez n'est pas encore clair.

Votre configuration d'hébergement comprend trois parties:

  1. Le greffier
  2. L'hébergement du serveur de noms
  3. L'hébergement du serveur

Il n'est pas rare que ces trois éléments soient fournis par la même entreprise, mais il n'y a aucune exigence. Il est également assez courant qu'il n'y ait pas de frais séparés pour 2. lorsque vous avez acheté 1. auprès de la même entreprise, ce qui ajoute à la confusion.

Le registraire est responsable de dire aux responsables du domaine parent que votre domaine existe et quels sont ses serveurs de noms.

Les serveurs de noms sont responsables de la mise en correspondance de votre domaine et de vos sous-domaines avec les adresses IP (et toutes les autres choses que les serveurs de noms peuvent faire).

Le serveur est la partie que vous connaissez probablement le mieux et c'est là que les demandes et les courriels du site Web finissent.

Une fois que vous êtes sûr de celui que vous avez changé ou que vous souhaitez changer, pouvez-vous modifier la question pour la rendre plus claire?


Je vais supposer que vous modifiez l'hébergement de votre serveur de noms. Pour ce faire, vous devez:

  1. Recherchez un nouvel hôte de serveur de noms et configurez avec eux tous les enregistrements que vous avez sur votre hôte de serveur de noms actuel.
  2. Contactez votre registraire et demandez-lui de changer les serveurs de noms faisant autorité pour qu'ils soient les nouveaux que vous venez de configurer. Cette étape prendra un certain temps car ils peuvent ne pas le faire immédiatement et les TTL impliqués sont souvent de 48 heures.
  3. Une fois que toutes les nouvelles demandes DNS arrivent sur les nouveaux serveurs de noms, fermez les anciennes.
Ladadadada
la source
merci Ladadadada, j'ai fait exactement cela, les deux configurations DNS avaient les mêmes enregistrements A sur le même serveur (et j'espérais ne pas perturber le service) - néanmoins il semble que l'ancienne (bluehost) n'utilisait plus la configuration, parce que les informations whois ont déjà été montrées au nouveau serveur.
Lupo
1
Ah, c'est une forme malheureuse et pauvre de Bluehost. Ils ne doivent pas retirer vos enregistrements de leurs serveurs de noms dès qu'ils ont changé de délégation. Ils devraient continuer de répondre pendant au moins 48 heures.
Ladadadada
3

A) Si vous exécutez un site sur un service d'hébergement partagé - manipulez avec DNS TTL si possible

B) Si vous exécutez vos propres serveurs - pour un temps d'arrêt minimal, utilisez un proxy sur le serveur source et un extracteur IP (en-tête forwarded_for) sur la destination (donc l'IP d'origine peut être la même), déplacez vos fichiers, après la mise à jour des enregistrements DNS et attendez que le trafic soit arrêter sur le serveur source

GioMac
la source
Votre réponse semble pouvoir contenir des joyaux cachés, mais seules les personnes qui savent déjà de quoi vous parlez peuvent comprendre ce que vous avez dit. Je voudrais ajouter des liens à votre message, mais je ne suis pas sûr qu'ils soient corrects. Voulez-vous dire X-Forwarded-For? en.wikipedia.org/wiki/X-Forwarded-For Et pour l'extracteur IP, voulez-vous dire ceci: github.com/jonrohan/ip-extractor
Buttle Butkus
1
à droite, X-Forwarded-For pour l'extracteur, ce devrait être un module de serveurs Web qui peut le faire, en cas d'apache httpd: mod_extract_forwarded, mod_realip, mod_realip2 etc. ce module traduira toutes les informations vers les modules avec une priorité moindre comme php etc. .
GioMac
IPExtractor n'a rien à voir avec le service Web
GioMac