BIND9: Enviar notificações no endereço IP específico

1

Eu tenho tentado implementar uma configuração slave bind- > entre duas máquinas, mas tenho um problema com relação ao endereço IP BIND usado no master para notificar minha máquina escrava.

Aqui está minha configuração:

Master: master.site.com - 10.0.0.2
Slave: slave.site.com - 10.0.0.10

O mestre tem uma zona autoritativa para site.com e está configurada para notificar todos os escravos quando a zona é alterada. A zona está funcionando corretamente. Ele responde bem às consultas e dig @10.0.0.2 -t SOA site.com

Então, no mestre eu tenho esse named.conf.options :

options {
    directory "/var/cache/bind";

    dnssec-validation auto;
    auth-nxdomain no;

    listen-on { 10.0.0.2; };
    listen-on-v6 { any; };
    allow-query     { any; };
    recursion yes;
    allow-recursion { localhost; };
    allow-notify { localhost; };
    allow-transfer { localhost; 10.0.0.10; };
    version none;

    notify yes;
    also-notify { 10.0.0.10; };

};

No escravo:

options {
    directory "/var/cache/bind";

    dnssec-validation auto;
    auth-nxdomain no;

    listen-on { 10.0.0.10; };
    listen-on-v6 { any; };
    allow-query     { any; };
    recursion yes;
    allow-recursion { localhost; };
    allow-notify { localhost; 10.0.0.2; };
    allow-transfer { localhost; 10.0.0.2; };
    version none;
};

Para começar, parece que as notificações não funcionam, usando tcpdump na máquina escrava que recebi esta mensagem:

02:32:50.269377 IP 10.0.0.1.15271 > 10.0.0.10.53: 64103 notify [b2&3=0x2400] [1a] SOA? site.com. (85)
02:32:50.269662 IP 10.0.0.10.53 > 10.0.0.1.15271: 64103 notify Refused- 0/0/0 (27)

Como você pode ver, embora o mestre esteja configurado para escutar 10.0.0.2 ao enviar notificações, ele está enviando-as usando seu endereço IP principal 10.0.0.1 e logicamente meu escravo recusou a notificação ...

Por que o mestre não está enviando as notificações sobre 10.0.0.2 ? Existe alguma configuração onde eu possa forçar isso? A máquina possui 3 IP's, um para o site, outro para e-mail e outro para DNS ... Eu preciso fazer SOMENTE usar 10.0.0.2 para DNS, mas aparentemente listen-on não parece para trabalhar com tráfego de saída ...

Como posso corrigir isso?

    
por TCB13 19.05.2015 / 02:41

1 resposta

5

Você está procurando a opção notify-source . A partir do BIND ARM :

notify-source

notify-source determines which local source address, and optionally UDP port, will be used to send NOTIFY messages. This address must appear in the slave server's masters zone clause or in an allow-notify clause. This statement sets the notify-source for all zones, but can be overridden on a per-zone or per-view basis by including a notify-source statement within the zone or view block in the configuration file.

Quanto ao motivo pelo qual o BIND se comporta dessa maneira, é bastante típico da maioria dos aplicativos. O IP de origem do tráfego iniciado localmente é padronizado para o IP principal da interface associada à rota. Em um sistema Linux, você pode visualizar o IP de origem associado a cada rota digitando ip route show e observando os valores após a palavra-chave src .

    
por 19.05.2015 / 06:59