Existem vários atalhos que você pode usar para facilitar sua vida:
Se você usar o Bind ou software semelhante que usa arquivos para armazenar os dados da zona: aponte suas zonas para o mesmo arquivo, por exemplo:
zone "example.net" {
type master;
file "/etc/bind/zone/default.zone";
};
zone "example.org" {
type master;
file "/etc/bind/zone/default.zone";
};
Como você pode usar certas abreviações de DNS, pode criar um arquivo de zona universal:
$TTL 1h ; default expiration time of all resource records without their own TTL value
@ IN SOA ns1.example.com. username.example.com. (
20140218131405 ; Serial number YYYYMMDDHHMMSS
28800 ; Refresh 8 hours
7200 ; Retry 2 hours
604800 ; Expire 7 days
86400 ; Minimum TTL 1 day )
@ IN NS ns1.example.com. ; ns1.example.com is a primary nameserver
@ IN NS ns2.example.com. ; ns2.example.com is a backup nameserver
@ IN MX 10 mail.example.com. ; mail.example.com is the mailserver
@ IN MX 20 mail2.example.com. ; the secondary mailserver
@ IN A 192.0.2.1 ; IPv4 address for the bare domain
IN AAAA 2001:db8:10::1 ; IPv6 address for the bare domain
www IN A 192.0.2.1 ; www.domain
IN AAAA 2001:db8:10::1 ; IPv6 address for www.domain - note by starting the line with a blank it becomes the continuation of the previous record and this IPv6 record applies to www
wwwtest IN CNAME www ; wwwtest is an alias for www
Isso faz uso do fato de que os nomes de host nos arquivos de zona que não terminam com um ponto .são sempre expandidos com o $ORIGIN
que, por sua vez, é definido implicitamente como o nome da zona. E @é uma abreviação de $ ORIGIN.
Em vez de manter os arquivos de zona individuais manualmente, ative um método para interagir programaticamente com seus servidores de nomes.
Eu usei o PowerDNS, que permite um RDMS como back-end que se encaixa muito bem com a pilha LAMP que estávamos usando na época. Serviços em nuvem como o Amazon Route 53 também expõem APIs da web.
Mas mesmo o venerável Bind também suporta a Atualização dinâmica, que é um método para adicionar, substituir ou excluir registros em um servidor mestre, enviando a ele uma forma especial de mensagens DNS. O formato e o significado dessas mensagens são especificados na RFC 2136 .
A atualização dinâmica é ativada incluindo allow-update
uma update-policy
cláusula ou na declaração de zona. Para obter mais informações, consulte o Manual de referência do administrador de associação .
rndc addzone
opção, mas isso ainda é meio feio, pois acaba gerando um arquivo de configuração com um nome de hash no diretório de trabalho para toda zona adicionada.