
dnscontrol v5.0.0-rc9
Infrastructure en tant que code pour le DNS !
DNSControl
DNSControl est l'Infrastructure as Code pour le DNS. Il inclut un langage de configuration complet (compatible Javascript), ainsi que des « plug-ins » qui communiquent avec les API de fournisseurs DNS tels qu'AWS Route 53, Cloudflare et Gandi. Il peut envoyer les mêmes enregistrements DNS à plusieurs fournisseurs. Il s'exécute partout où Go s'exécute (Linux, macOS, Windows). Le modèle de fournisseur est extensible, ce qui permet d'ajouter d'autres fournisseurs.
Un exemple
dnsconfig.js :
// define our registrar and providers
var REG_NAMECOM = NewRegistrar("ndc_main");
var DSP_ROUTE53 = NewDnsProvider("r53_main");
D("example.com", REG_NAMECOM, DnsProvider(DSP_ROUTE53),
A("@", "1.2.3.4"),
CNAME("www","@"),
MX("@",5,"mail.myserver.com."),
A("test", "5.6.7.8")
)
L'exécution de dnscontrol preview communiquera avec les fournisseurs (ici name.com comme registrar et route 53 comme hôte DNS), et déterminera quelles modifications doivent être apportées.
L'exécution de dnscontrol push effectuera ces modifications auprès du fournisseur et mes enregistrements DNS seront correctement mis à jour.
La façon la plus simple d'exécuter DNSControl est d'utiliser le conteneur Docker :
docker run --rm -it -v "$(pwd):/dns" ghcr.io/dnscontrol/dnscontrol preview
Pour commencer
La façon la plus rapide de démarrer est dnscontrol init. L'assistant interactif vous demande votre fournisseur DNS et votre registrar, vérifie vos identifiants et écrit un creds.json et un dnsconfig.js fonctionnels, incluant les enregistrements qui existent déjà dans vos zones.
Consultez la page Getting Started sur le site de documentation pour le guide complet.
Vous voulez un contrôle total « GitOps » de vos données DNS ? Clonez le dépôt de démarrage dns-config pour commencer !
Fournisseurs pris en charge
DNSControl prend en charge 68 fournisseurs DNS et registrars :
¹prend également en charge les fonctions de registrar ²registrar uniquement