como posso adicionar registros ao arquivo de zona sem reiniciar o serviço nomeado?

3

Estou trabalhando em centos6.5 e bind9 e consegui adicionar registros a uma zona DNS executando estas etapas:

criando a chave:

dnssec-keygen -a HMAC-MD5 -b 128 -n HOST example.com.

editando conf. arquivo:

// TSIG Key
key "example.com." {
 algorithm hmac-md5;
 secret "THE KEY GENERATED ABOVE";
}; 

zone "example.com" IN {
 type master;
 file "example.com.zone";
 allow-update{ key "example.com."; };
};

forneça a autorização nomeada para a pasta / var / named:

# chown -R named:named /var/named
# find . -type d -exec chmod 770 {} \;
# find . -type f -exec chmod 660 {} \;

Eu adicionei registros usando este script:

#!/bin/bash
#Defining Variables
DNS_SERVER="localhost"
DNS_ZONE="example.com."
USER_NAME="dd2.example.com."
IP="192.168.1.7"
TTL="60"
RECORD=" $USER_NAME $TTL A $IP"
echo "
server $DNS_SERVER
zone $DNS_ZONE
debug
update add $RECORD
show
send" | nsupdate -k Kexample.com.+157+55566.key

não retornou nenhum erro.

Eu testo se eu adicionar este registro usando o comando dig:

#dig +short dd2.example.com.
192.168.1.7

mas o problema que o registro adicionado não aparece no arquivo de zona 'example.com.zone':

$ORIGIN .
$TTL 86400  ; 1 day
example.com     IN SOA  dns.exaple.com. hostmaster.example.com. (
        2001062504 ; serial
        21600      ; refresh (6 hours)
        3600       ; retry (1 hour)
        604800     ; expire (1 week)
        86400      ; minimum (1 day)
        )
    NS  dns.example.com.
    A   192.168.1.2
    MX  10 mail.example.com.
$ORIGIN example.com.
$TTL 86400  ; 1 day
ex1         A   192.168.1.2
ex2         A   192.168.1.2
ex3         A   192.168.1.3
ex4         A   192.168.1.4

mas quando eu reiniciar o serviço nomeado: service named restart o registro aparece no arquivo de zona:

$ORIGIN .
$TTL 86400  ; 1 day
example.com     IN SOA  dns.example.com. hostmaster.example.com. (
        2001062504 ; serial
        21600      ; refresh (6 hours)
        3600       ; retry (1 hour)
        604800     ; expire (1 week)
        86400      ; minimum (1 day)
        )
    NS  dns.example.com.
    A   192.168.1.2
    MX  10 mail.example.com.
 $ORIGIN example.com.
 $TTL 60 ; 1 minute
 dd2         A   192.168.1.7
 $TTL 86400  ; 1 day
 ex1         A   192.168.1.2
 ex2         A   192.168.1.2
 ex3         A   192.168.1.3
 ex4         A   192.168.1.4

minha pergunta é:

É um caminho para o registro ser adicionado ao arquivo de zona sem reiniciar o serviço nomeado?

NOTA: o rndc recarrega o MYZONE ou o recarregamento do rndc não funcionou

isso que aconteceu quando eu uso o recarregamento

[root@dd Shells]# rndc reload example.com. rndc: 'reload' failed: dynamic zone

    
por Networker 30.05.2014 / 16:27

2 respostas

4

Eu encontrei a resposta:

meu problema é que o BIND não pode rndc reload zone com as zonas dinâmicas, então o BIND não nos permite recarregar uma zona dinâmica. Portanto, temos que informar ao bind para parar temporariamente a permissão de atualizações dinâmicas. Isso é tratado com a opção congelar.

rndc freeze example.com

depois recarregar

rndc reload example.com  

depois, permite atualizações dinâmicas novamente:

rndc thaw example.com
    
por 31.05.2014 / 13:05
0

Você tentou /etc/init.d/named reload ?

Além disso, por que rndc reload <namezone> não funcionou? Você recebeu um erro? Tente alterar sua "serial" para a data e a versão atual e execute novamente o rndc reload .

Você também pode tentar rndc flush antes de recarregar a zona.

Espero que isso ajude!

    
por 30.05.2014 / 19:57

Tags