DOE AGORA Qualquer valor

Sincronizar seu DNS para vários provedores: DNSControl



Sincronizar seu DNS para vários provedores

     DNSControl é um sistema para manter zonas DNS. Ele tem duas partes: uma linguagem específica de domínio (DSL) para descrever zonas DNS mais software que processa o DSL e empurra as zonas resultantes para provedores de DNS como Route53, CloudFlare e Gandi. Ele pode conversar com o Microsoft ActiveDirectory e gera os arquivos de zona BIND mais bonitos de todos os tempos. Funciona em qualquer lugar Go executa (Linux, macOS, Windows). O modelo de provedor é extensível, portanto, mais provedores podem ser adicionados.



Provedores de DNS atualmente suportados:
  • Active Directory
  • LIGAR
  • CloudFlare
  • DNSimple
  • Gandi
  • Google
  • Namecheap
  • Name.com
  • Rota 53
     Stack Overflow usa este sistema para gerenciar centenas de domínios e subdomínios em vários registradores e provedores de DNS. Você pode pensar nisso como um compilador de DNS. Os arquivos de configuração são gravados em um DSL que se parece muito com o JavaScript. É compilado para uma representação intermediária (IR). Os back-ends do compilador usam o IR para atualizar suas zonas DNS em serviços como Route53, CloudFlare e Gandi, ou sistemas como BIND e ActiveDirectory.

Um exemplo
Dnsconfig.js:
// define nosso registrador e provedores
Var namecom = NewRegistrar ("name.com", "NAMEDOTCOM");
Var r53 = NewDnsProvider ("r53", "ROUTE53")

D ("example.com", namecom, DnsProvider (r53),
  A ("@", "1.2.3.4"),
  CNAME ("www", "@"),
  MX ("@", 5, "mail.myserver.com."),
  
Corrida dnscontrol previewvai falar com os provedores (aqui name.com como secretário e rota 53 como o anfitrião DNS), e determinar que mudanças precisam ser feitas.
Corrida dnscontrol pushvai fazer essas alterações com o provedor e os meus registros de DNS serão correclty atualizado.

Benefícios

  • A edição de arquivos de zona é propensa a erros. Clicar em botões em uma página da web é irreproduzível.
  • Alternar provedores DNS torna-se um não-brainer. A linguagem DNSControl é independente do fornecedor. Se você usá-lo para manter seus registros de zona DNS, você pode alternar entre os provedores DNS facilmente. Na verdade, DNSControl vai fazer upload de seus registros de DNS para vários provedores, o que significa que você pode testar um, enquanto a mudança para outro.
  • Adote os princípios CI / CD ao DNS! O StackOverflow mantém as configurações do DNSControl no Git e usa o sistema CI para rolar as alterações. Manter informações de DNS em um VCS significa que temos histórico completo. O uso do CI nos permite incluir testes unitários e testes de sistema. Lembra quando esqueceu de incluir um "." No final de um registro MX? Nós não tivemos esse problema desde que nós incluímos um teste para certificar-se Tom não faz esse erro ... outra vez. "
  • As variáveis ​​economizam tempo! Atribua um endereço IP a uma constante e use o nome da variável em todo o arquivo. Precisa alterar o endereço IP global? Basta alterar a variável e "recompilar".
  • Macros! Defina seus registros SPF, registros MX ou outros dados repetidos uma vez e reutilize-os para todos os domínios.
  • Controlar CloudFlare a partir de um único local. Ativar / desativar o proxy do Cloudflare (o botão "nuvem laranja") diretamente de seus arquivos DNSControl.
  • Manter domínios semelhantes em sincronia com as transformações e outros recursos. Se um domínio é suposto ser o mesmo
  • É extensível! Todos os provedores DNS são escritos como plug-ins. Escrever novos plugins é muito fácil.

Sincronizar seu DNS para vários provedores: DNSControl documentação
Sincronizar seu DNS para vários provedores: DNSControl Download

Comentários

Ebook

Postagens mais visitadas