Você pode executar rndc dumpdb -zones
para criar um arquivo chamado cache_dump.db . Este arquivo irá conter todas as zonas autorizadas e será criado no diretório de dados do BIND.
Estou tentando migrar um servidor de DNS que possui milhares de zonas carregadas nele. O arquivo named.conf tem cerca de 17 inclusões diferentes, e alguns desses arquivos também incluem neles, e muitos comentários comentados etc. É uma bagunça!
Eu estou querendo obter uma lista de todas as zonas atualmente carregadas no BIND. Eu olhei para o rndc dumpdb mas ele não me mostra apenas as zonas.
Em vez de seguir os arquivos de inclusão confusos, há uma maneira mais fácil de obter uma lista das zonas autoritárias dentro do BIND? Obrigado!
Você pode executar rndc dumpdb -zones
para criar um arquivo chamado cache_dump.db . Este arquivo irá conter todas as zonas autorizadas e será criado no diretório de dados do BIND.
O rndc dumpdb confirmado é o melhor método.
No meu caso, descobri que havia 2 instâncias de ligação separadas em execução no mesmo servidor (não pergunte), uma fazendo o DNS de encaminhamento e outra fazendo o dns reverso. Sem especificar o PID, ele anexou ao dns apenas reverso e só me mostrou isso.
Se você quiser que a configuração (incluindo os arquivos de inclusão) seja impressa em sua forma canônica, basta ligar:
named-checkconf -p
(opcionalmente com -t /some/chroot/dir
se o BIND for executado com o chroot e a configuração precisar ser lida no diretório chroot)
Isso nivela todos os arquivos de inclusão, remove todos os comentários e formata tudo perfeitamente.
Embora a saída inclua zonas configuradas estaticamente, não listará zonas dinâmicas, como as adicionadas com rndc addzone
.
O seguinte é o comando exato para listar as zonas que são carregadas durante a inicialização. Isso é testado em RHEL6.7 x86_64.
/usr/sbin/named-checkconf -z -t /var/named/chroot | grep loaded
Exemplo:
[root@dnsserver ~]# /usr/sbin/named-checkconf -z -t /var/named/chroot | grep loaded
zone 0.0.127.in-addr.arpa/IN: loaded serial 2008040700
zone 19.58.10.in-addr.arpa/IN: loaded serial 2008040701
zone 11.54.10.in-addr.arpa/IN: loaded serial 2008040700
zone example.com/IN: loaded serial 2008040702
zone ./IN: loaded serial 2008040700
Adicionar -all faz o truque para mim (no Ubuntu Ubuntu 16.04.2 LTS (xenial))
sudo rndc dumpdb -all && cat /var/cache/bind/named_dump.db
Tags bind linux domain-name-system