Existe uma maneira de importar as zonas DNS de um escravo para o antigo mestre?

2

O antigo servidor dns mestre travou. Estou tentando usar dig para obter dados de zona dos servidores escravos, que eu não controlo ( peer1.net ), e recebo mensagens de transferência com falha

root@dnsserver:# dig +tcp -t ixfr=0 @ns1.peer1.net domain.com

; <<>> DiG 9.8.1-P1 <<>> +tcp -t ixfr=0 @ns1.peer1.net domain.com
; (1 server found)
;; global options: +cmd
domain.com.     38400   IN  SOA dns1.dnsserver.com. my.mail.com. 2012010301 10800 3600 604800 38400
; Transfer failed.

Os escravos não são capazes de transferir zonas?

Existe uma maneira de criar arquivos de zona do bind?

about the backup the backup disk somehow trashed and is unreadable, according to the data center team. It was a secondary disk which on weekends was mounted and rsynced with primary, apparently it got corrupted months ago, I didn't noticed it. I had a remote backup of /root /etc /var/lib/mysql & /home so when I heard that the backup disk was unreadable I didn't blink, but after seeing that my remote backup didn't include bind -> /var/named/chroot/etc/bind I started to feel a cold shiver on my back.

update 2 In desperate times comes desperate measures, I managed to write a script that helps me somewhat.

#!/bin/bash
# 2013/01/21
# Building hosts files for bind9 from a list of domains in a txt file

DNS=some.dnsserver.net

for d in 'cat domains'; do
    echo "\$ttl 38400" > $d.hosts
    dig +nocmd @$DNS $d any +multiline +noall +answer >> $d.hosts
    for cname in 'www' 'ftp' 'mail' 'webmail'; do
        dig +nocmd @$DNS $cname.$d CNAME +multiline +noall +answer >> $d.hosts
    done
    # now include input in /etc/bind/named.conf.local
    echo -e "zone \"$d\" {" >> /etc/bind/named.conf.local
    echo -e "\ttype master;" >> /etc/bind/named.conf.local
    echo -e "\tfile \"/var/lib/bind/$d.hosts\";" >> /etc/bind/named.conf.local
    echo -e "\t};" >> /etc/bind/named.conf.local
done

Com esse script, consegui, pelo menos, ter as informações básicas da zona ... Não consegui encontrar uma maneira de consultar subdomínios. O Google é meu amigo, mas não consegui encontrá-lo. gist link

    
por Juparave 21.01.2013 / 02:22

4 respostas

1

É claro que você percebe que o escravo em uma implementação de bind gera uma cópia (sem seus comentários) dos arquivos de zona. Você pode simplesmente copiar esses arquivos de cópia de zona para o mestre e usá-los enquanto estiver recuperando os arquivos de zona originais nos mestres a partir de backups.

    
por 21.01.2013 / 07:16
0

Restaurar do backup

Os escravos são capazes de transferência por RFC, mas geralmente são desativados administrativamente.

    
por 21.01.2013 / 02:41
0

Os escravos são perfeitamente capazes de agir como a fonte das transferências de zona. Provavelmente, eles não estão configurados para permitir isso ou, pelo menos, não permitir o endereço IP que você está consultando.

É comum que os servidores de nomes autorizados sejam configurados para permitir apenas transferências de zona de uma lista de desbloqueio de endereços IP de servidores escravos que se espera que sejam usados. Uma vez que é incomum para qualquer escravo estar escravizado outros escravos, servidores que são escravos geralmente não permitem transferências de zona como resultado.

Se você obtivesse o conteúdo da zona do servidor slave, poderia instalar o arquivo como está no servidor mestre reconstruído (por mais feio que pareça).

    
por 21.01.2013 / 02:41
0

Como foi observado por outros, as transferências de zona de escravos funcionam, supondo que os escravos estejam configurados para permitir isso.

Em relação ao método de realizar uma transferência de zona, no entanto, quero observar que AXFR (transferência completa) seria uma escolha melhor do que IXFR=0 (transferência incremental de alterações desde o número de série 0 ).

Existem várias razões para isto, em primeiro lugar AXFR estava na especificação original enquanto IXFR foi adicionado mais tarde (significando que se você não sabe qual software os escravos correm há pelo menos uma chance de que eles poderia suportar transferências completas mesmo que não suportem transferências incrementais). Mas, talvez mais importante, já que você não tem dados de zona, você não quer ter apenas algumas mudanças incrementais. Claro, se você tentar IXFR de uma maneira que não pode ser preenchida, o servidor lhe dará o conteúdo completo da zona, mas 0 poderia muito bem existir no histórico da zona e não precisa ser a primeira versão ou, tudo isso com base em como funciona aritmética e comparação de números de série e como isso significa que não há valor mínimo ou máximo real ( a série passa de forma definida em vez de terminar no valor máximo inteiro).


Se os escravos não permitirem transferências de zona e os administradores de sistema dos servidores escravos não puderem ajudá-lo, a opção restante para obter os dados completos parece estar restaurando os dados dos backups.

    
por 27.03.2015 / 07:11