Transferência de zona DNS (NSD) não funciona

1

Estou tentando criar uma configuração mestre / escravo usando o NSD. Eu tenho o NSD instalado em dois servidores. Os servidores estão funcionando muito bem; quando realizo consultas DNS normais, elas retornam as informações dos arquivos de zona. No entanto, quando tento nsdc notify no mestre, o escravo não parece pegar a nova configuração de zona.

O arquivo nsd.conf no mestre é assim:

## NSD authoritative only DNS
#

server:
    logfile: "/var/log/nsd.log"
    port: 53
    server-count: 1
    ip4-only: yes
    hide-version: yes
    identity: ""
    zonesdir: "/etc/nsd3"
    verbosity: 3

zone:
    name: domain.com
    zonefile: www.domain.com.forward
    notify: <ip slave> NOKEY
    provide-xfr: <ip slave> NOKEY

O nsd.conf no servidor escravo se parece com:

## NSD authoritative only DNS
#

server:
    logfile: "/var/log/nsd.log"
    port: 53
    server-count: 1
    ip4-only: yes
    hide-version: yes
    identity: ""
    zonesdir: "/etc/nsd3"
    verbosity: 3

zone:
    name: domain.com
    zonefile: www.domain.com.forward
    allow-notify: <ip master> NOKEY
    request-xfr: AXFR <ip master> NOKEY

O arquivo de arquivo de zona se parece com isso no servidor mestre:

$ORIGIN domain.com.
$TTL 86400           ; default time to live

@ IN SOA ns1.domain.com. admin.domain.com. (
    2011010203  ; serial number
    28800       ; Refresh
    7200        ; Retry
    864000      ; Expire
    86400       ; Min TTL
    )

NS  ns1.domain.com.
MX  10  mailfilter.hostingprovider.com.

mail    IN  A   <ip mailserver hostingprovider>
www IN  A   <ip master>

ns1     IN      A       <ip master>
ns2     IN      A       <ip slave>


newvalue    IN  A   8.8.8.8

*   IN  A   <ip master>

O arquivo de encaminhamento é o mesmo no servidor escravo, exceto pela linha com "newvalue" (o valor que eu quero transferir).

Se eu executar um nsdc notify no servidor mestre, o seguinte será exibido nos registros do escravo:

[1487507948] nsd[26038]: info: Notify received and accepted, forward to xfrd
[1487507948] nsd[26037]: info: Handle incoming notify for zone domain.com

No entanto, os arquivos de zona parecem não receber atualizações. Após a notificação, eu executo nsdc patch; nsdc rebuild; nsdc reload; service nsd3 restart no servidor slave, só para ter certeza. Mas isso também não altera os arquivos de zona.

Além disso, se eu executar um dig axfr @<master ip> domain.com no servidor slave, obtenho uma boa transferência de zona.

Por que o servidor escravo não está atualizando os arquivos de zona?

    
por Graa 20.02.2017 / 16:25

1 resposta

1

O número de série da zona precisa ser incrementado após qualquer alteração

Um escravo primeiro verificará se tem a zona mais atual antes de tentar uma transferência, caso contrário a notificação será ignorada. A prática comum é usar o formato YYYYMMDDxx, em que xx é um número de revisão menor (se for acidentalmente definido como muito grande, há um processo que deve ser seguido para diminuir o número novamente)

Em versões posteriores do nsd, em que nsd-control substitui nsdc, o comando transfer pode ser usado para tentar ou force_transfer para atualizar, independentemente da alteração serial.

    
por 20.02.2017 / 22:56