Apporter un domaine
Fonctionnalité en cours de déploiement. L'interface décrite ici est celle de la prochaine livraison : elle peut encore évoluer, et n'est pas forcément activée sur votre tenant.
Activé progressivement sur les tenants. La création de la zone après vérification peut prendre un certain délai dans cette version.
Vous possédez exemple.fr chez un registraire (OVH, Gandi, Namecheap…) et voulez y servir vos
App et vos enregistrements. Vous déclarez le domaine, prouvez qu'il est à vous avec un
enregistrement TXT, puis déléguez ses serveurs de noms à StackNGO.
Prérequis
- La CLI
sngauthentifiée, une session sur votre tenant (sng tenant use acme) ;sng config showaffiche le cluster et le tenant. - Le droit
dns:write(policies géréesreadwriteouadmin). - L'accès à l'interface de votre registraire et de l'hébergeur DNS actuel du domaine.
- Un domaine enregistrable :
exemple.frouexemple.co.uk, passhop.exemple.fr. Les domaines de StackNGO eux-mêmes ne peuvent pas être apportés. - Votre offre doit autoriser un domaine de plus (voir Pour aller plus loin).
1. Déclarer le domaine
sng dns zone create exemple.fr
zone exemple.fr déclarée
étape suivante : posez cet enregistrement chez l'hébergeur DNS actuel du domaine :
_stackngo-verify.exemple.fr TXT "sng-verify-4b1f0e9c2a7d4e6b8c3f1a2d5e7b9c0f"
puis suivez la vérification : sng dns zone describe <domaine>
La commande attend quelques secondes que la valeur du TXT soit calculée, puis l'affiche.
Si elle n'est pas encore prête au bout de 20 secondes, la commande l'indique
(TXT de vérification pas encore calculé) : sng dns zone describe exemple.fr la donnera
quelques instants plus tard. En manifeste :
apiVersion: dns.stackngo.io/v1alpha1
kind: DNSZone
metadata:
name: exemple.fr
spec:
domain: exemple.fr # domaine enregistrable, en minuscules ; immuable
sng apply exemple-fr.yml
Une zone porte toujours le nom de son domaine (exemple.fr) : sng dns zone create le fait
pour vous, et avec sng apply le metadata.name du manifeste doit être égal à spec.domain.
Les deux méthodes ne peuvent pas déclarer le même domaine.
Avec sng apply, le TXT se lit ensuite avec sng dns zone describe.
Vous pouvez déclarer la zone avant ou après ses enregistrements : un DNSRecord qui vise un
domaine pas encore déclaré est accepté, par sng apply comme par sng dns record set. Il reste
ZoneNotOwned (rien n'est publié) jusqu'à ce que la zone soit prouvée, puis il est publié tout
seul.
2. Poser l'enregistrement de preuve
sng dns zone describe exemple.fr
domain: exemple.fr
source: Bring
phase: Pending
ready: no
reason: AwaitingVerification
message: poser chez le DNS actuel du domaine : _stackngo-verify.exemple.fr TXT "sng-verify-4b1f0e9c2a7d4e6b8c3f1a2d5e7b9c0f"
étape suivante : posez cet enregistrement chez l'hébergeur DNS actuel du domaine :
_stackngo-verify.exemple.fr TXT "sng-verify-4b1f0e9c2a7d4e6b8c3f1a2d5e7b9c0f"
puis suivez la vérification : sng dns zone describe <domaine>
Chez l'hébergeur DNS actuel du domaine (souvent votre registraire), créez exactement cet
enregistrement : nom _stackngo-verify, type TXT, la valeur affichée. La plateforme le
cherche toutes les minutes depuis Internet. Dès qu'il est vu, la zone passe Verified.
Une fois la zone Active, le TXT posé chez l'ancien hébergeur n'est plus visible : c'est
normal, il n'est plus nécessaire. Notez sa valeur : elle resservira si la délégation est un
jour perdue (voir Perte de délégation).
3. Attendre la création de la zone
En phase Verified, la plateforme crée votre zone (raison AwaitingProvisioning). Dans cette version, cette création n'est pas immédiate : comptez
un délai, et contactez le support si la zone reste Verified au-delà d'un jour ouvré.
La zone passe ensuite Provisioned et describe affiche les serveurs de noms :
domain: exemple.fr
source: Bring
phase: Provisioned
ready: no
reason: AwaitingDelegation
message: déclarer chez le registrar les serveurs de noms : dns200.anycast.me, ns200.anycast.me
serveurs de noms à déclarer chez le registrar du domaine :
dns200.anycast.me
ns200.anycast.me
Les noms de serveurs ci-dessus sont des exemples : utilisez ceux que votre zone affiche.
4. Préparer vos enregistrements avant de basculer
Dès Provisioned, vos enregistrements sont écrits dans la nouvelle zone, même si elle n'est
pas encore servie. Recréez-y ce dont vous avez besoin avant de changer les serveurs de
noms, pour éviter une coupure (messagerie, vérifications de services tiers…) :
sng dns record set @ --zone exemple.fr --type MX --target "10 mx1.mail.ovh.net" --target "20 mx2.mail.ovh.net" --ttl 3600
sng dns record set @ --zone exemple.fr --type TXT --target "v=spf1 include:mx.ovh.com ~all"
Voir Enregistrements.
5. Déléguer chez le registraire
Chez votre registraire, remplacez les serveurs de noms du domaine par ceux affichés par
sng dns zone describe. La plateforme vérifie la délégation toutes les 5 minutes ; la
propagation dépend du registraire et du TTL de la zone parente (de quelques minutes à
48 heures).
Vérification
sng dns zone list
DOMAIN PHASE READY REASON
exemple.fr Active yes Delegated
dig +short NS exemple.fr
La zone est Active quand tous les serveurs publics du domaine sont ceux de la zone
StackNGO. Une délégation partielle (un ancien serveur conservé) reste AwaitingDelegation.
Perte de délégation
Une zone active est contrôlée toutes les heures. Si ses serveurs de noms ne sont plus ceux de StackNGO (domaine expiré, revendu, NS modifiés) :
| Durée | Phase | reason | Effet |
|---|---|---|---|
| moins de 72 h | Active | DelegationMissing | rien ne change ; ready reste yes |
| au-delà de 72 h | Lost | DelegationLost | plus aucun nom de la zone n'est publié ; les services sous ce domaine ne sont plus servis et attendent (WaitingForDNSZone) |
Pour réactiver une zone Lost, prouvez de nouveau la propriété, dans cet ordre :
- posez le
TXT_stackngo-verify(même valeur, toujours affichée pardescribe) chez l'hébergeur DNS qui sert actuellement le domaine ; - attendez que la zone repasse
Provisioned; - redéclarez les serveurs de noms StackNGO chez le registraire : la zone repasse
Active.
La preuve est exigée parce qu'un domaine perdu a pu changer de propriétaire. Si vous
rétablissez d'abord les serveurs de noms StackNGO, le TXT ne peut plus être lu (ce nom est
réservé dans votre zone) : revenez temporairement à l'ancien hébergeur, ou contactez le support.
Retirer un domaine
sng dns zone delete exemple.fr
⚠ Retrait de la zone "exemple.fr" (tenant "acme").
Tapez « oui » pour confirmer : oui
zone exemple.fr supprimée
Le retrait est refusé (409) tant que des enregistrements utilisent la zone
(1 enregistrement(s) utilisent encore la zone "exemple.fr", les supprimer d'abord), que vous
passiez par sng dns zone delete ou par sng kind delete DNSZone. Une fois
le domaine retiré, plus rien n'est publié dessous et il redevient libre pour un autre tenant.
Rendez la délégation à votre ancien hébergeur. Depuis un script : --yes.
Pour aller plus loin
- Nombre de domaines : plafonné par l'offre du tenant — 1 en
3XS, 2 en2XS, 3 enXS, 5 enM, 10 enL, 20 enXL, 30 en2XL, 50 en3XL. Voir Tenant et offres. - Un domaine, un propriétaire : un domaine déjà apporté par un autre tenant passe
Rejected, raisonTaken. Dans votre propre tenant, l'API refuse de déclarer deux fois le même domaine (409). - Domaine refusé :
NotRegistrable(sous-domaine, suffixe inconnu) — le message indique le domaine à déclarer à la place ;PlatformDomain(domaine de StackNGO :stackngo.app,stackngo.fr, refusé dès l'envoi). La zone repassePendingd'elle-même si la cause disparaît. spec.domainest immuable : pour changer de domaine, supprimez la zone et créez-en une autre.- Acheter un domaine : pas encore proposé (
spec.source: Purchaseest refusé). Voir sng domain. - Sécurité : un domaine apporté n'est utilisable que par votre tenant. Voir Sécurité et confidentialité.
Voir aussi
- Enregistrements
- Domaines sur une App
- Référence :
DNSZone,sng dns zone