BIND9: enviar notificaciones sobre una dirección IP específica

BIND9: enviar notificaciones sobre una dirección IP específica

He estado intentando implementar una configuración de enlace maestro->esclavo entre dos máquinas, pero tengo un problema con respecto a la dirección IP BIND utilizada en el maestro para notificar a mi máquina esclava.

He aquí mi arreglo:

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

El maestro tiene una zona autorizada site.comy está configurado para notificar a todos los esclavos cuando se cambia la zona. La zona está funcionando correctamente. Responde bien a las consultas ydig @10.0.0.2 -t SOA site.com

Entonces, en el maestro tengo esto 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; };

};

Sobre el esclavo:

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 empezar, las notificaciones no parecen funcionar. Al usarlas tcpdumpen la máquina esclava, recibí este mensaje:

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 puede ver, aunque el maestro está configurado para escuchar 10.0.0.2cuando envía notificaciones, las envía utilizando su dirección IP principal 10.0.0.1y, lógicamente, mi esclavo rechazó la notificación...

¿Por qué el maestro no envía las notificaciones 10.0.0.2? ¿Hay alguna configuración donde pueda forzar eso? La máquina posee 3 IP, una para su sitio web, otra para correo electrónico y otra para DNS... Necesito hacerlo.SOLOuso 10.0.0.2para DNS, pero aparentemente listen-onno parece funcionar con tráfico saliente...

¿Cómo puedo arreglar esto?

Respuesta1

Estás buscando la notify-sourceopción. Desde elBRAZO DE UNIÓN:

notificar-fuente

notify-source determina qué dirección de origen local y, opcionalmente, el puerto UDP, se utilizarán para enviar mensajes NOTIFY. Esta dirección debe aparecer en la cláusula de zona maestra del servidor esclavo o en una cláusula de notificación de permiso. Esta declaración establece la fuente de notificación para todas las zonas, pero se puede anular por zona o por vista al incluir una declaración de fuente de notificación dentro de la zona o bloque de vista en el archivo de configuración.

En cuanto a por qué BIND se comporta de esta manera, es bastante típico de la mayoría de las aplicaciones. La IP de origen del tráfico iniciado localmente es la IP principal de la interfaz asociada con la ruta. En un sistema Linux, puede ver la IP de origen asociada con cada ruta escribiendo ip route showy mirando los valores que siguen a la srcpalabra clave.

información relacionada