Bind slave lento para atualizar zonas

2

Eu dois servidores Bind em uma configuração mestre / escravo. Quando a serial é incrementada no arquivo de zona mestre, demora mais do que o esperado para a zona atualizar no escravo. Eu repliquei o problema em dois servidores de teste. Com um ttl de 5 segundos, demora alguns minutos para o escravo atualizar. Estou usando o Bind 9.8 e o Ubuntu 12.04.

Aqui está minha configuração para o servidor de teste principal:

named.conf.local

zone "example.com" {
        type master;
        file "/var/lib/bind/db.example.com.zone";
        //forwarders {};
        // If we do not comment the ''forwarders'' "empty" clients of the local subnet     in my case don't have access to the upstream DNS ?
        //allow-update { key ns-example-com_rndc-key; };
        allow-update { key rndc-key; };
        //confusion between the file name to import (ns-example-com_rndc-key) and the     key label (rndc-key) ?
};
zone "0.168.192.in-addr.arpa" {
    type master;
    file "/var/lib/bind/db.example.com.inv.zone";
    //see comment below (zone "example.com")
    //forwarders {};
    //allow-update { key ns-example-com_rndc-key; };
    allow-update { key rndc-key; };
};

db.root.example.com

$TTL    5
@       IN      SOA   sid.example.com. root.example.com. (
               2007010416           ; Serial
                       5           ; Refresh [1m]
                      5           ; Retry   [10m]
                    5           ; Expire  [1d]
                      5 )         ; Negative Cache TTL [1h]
;
@       IN      NS      sid.example.com.
@       IN      MX      10 sid.example.com.

sid     IN      A       192.168.0.3
etch    IN      A       192.168.0.3

pop     IN      CNAME   sid
www     IN      CNAME   sid
mail    IN      CNAME   sid

db.example.com.inv.zone

@ IN SOA        sid.example.com. root.example.com. (
               2007010401           ; Serial
                     3600           ; Refresh [1h]
                      600           ; Retry   [10m]
                    86400           ; Expire  [1d]
                      600 )         ; Negative Cache TTL [1h]
;
@       IN      NS      sid.example.com.

1       IN      PTR     sid.example.com.
2       IN      PTR     etch.example.com.

Aqui está a configuração para o escravo:

zone "example.com" {
    type slave;
    file "/var/cache/bind/db.example.com.zone";
    masters { 192.168.0.2; };
//forwarders {};
    // If we do not comment the ''forwarders'' "empty" clients of the local subnet in my case don't have access to the upstream DNS ?
    //allow-update { key ns-example-com_rndc-key; };
    allow-update { key rndc-key; };
    //confusion between the file name to import (ns-example-com_rndc-key) and the key label (rndc-key) ?
};
zone "0.168.192.in-addr.arpa" {
    type slave;
    file "/var/cache/bind/db.example.com.inv.zone";
    masters { 192.168.0.2; };
//see comment below (zone "example.com")
    //forwarders {};
    //allow-update { key ns-example-com_rndc-key; };
    allow-update { key rndc-key; };
};
    
por Ironlenny 15.08.2013 / 00:05

2 respostas

4

Do guia de cópia esquerda DNS para cientistas de foguetes :

By default BIND9 will send NOTIFY messages to all the target names (right-hand names) that appear in NS RRs for the zone

Então você precisa adicionar seu servidor escravo como uma entrada NS em db.example.com.inv.zone .

Além disso, você pode precisar adicionar as configurações:

  • No mestre: notify yes; e allow-transfer { SLAVE_IP; };
  • No escravo: allow-notify { MASTER_IP; };
por 27.05.2015 / 16:36
3

Quando o número de série for alterado no mestre, ele notificará o escravo imediatamente. Em outras palavras, notify está habilitado por padrão. MAS, o modo de notificação funciona, o mestre examina o NS records desse domínio em particular no arquivo de zona e notifica os servidores listados no registro NS, excluindo ele mesmo. No seu caso, não vejo o nome do host do servidor escravo listado como um registro NS no arquivo de zona db.root.example.com. Portanto, o escravo está contatando o mestre, listado no arquivo de configuração do escravo - masters { 192.168.0.2; }; no intervalo de atualização, 1 hora. É por isso que está demorando muito para atualizar.

Solução - adicione o registro NS para o escravo, também inclua seu endereço IP como um registro A. A configuração típica é a seguinte -

  @        IN      NS      ns1.example.com.
  @        IN      NS      ns2.example.com.
  ns1     IN      A       192.168.1.1
  ns2     IN      A       192.168.1.2

Primeira e terceira linha, para mestre. Segunda e quarta linha para escravo.

    
por 15.08.2013 / 01:51