bind9, excluye la dirección de la interfaz externa de los resultados

bind9, excluye la dirección de la interfaz externa de los resultados

Buen día, estoy usando Zentyal, configurado con 2 interfaces una interna y otra externa. Al resolver el nombre de host y los alias de los servidores, bind devuelve aleatoriamente la dirección externa en los resultados. El problema, por supuesto, es que la red local no puede comunicarse con la red externa y interrumpe los servicios de forma aleatoria. Ejemplo:

dig proxy.private.example.com

;; ANSWER SECTION:
proxy.private.example.com. 259200 IN   CNAME   zentyal.private.example.com.
zentyal.private.example.com. 900 IN    A       192.168.122.73
zentyal.private.example.com. 900 IN    A       10.10.20.40

10.10.20.40 está en la red interna y la dirección siempre debemos resolver.

¿Cómo excluyo la interfaz "192.168.122.73" de los resultados? ¿Cómo sería mi configuración de enlace?

PD: He buscado durante 3 días; es posible que esté buscando las cosas equivocadas.

Su ayuda es muy apreciada.

Respuesta1

Lo que ha configurado ahora son varios Aregistros para el mismo recurso. Bind manejará eso como una operación por turnos y, alternativamente, devolverá 192.168.122.73 o 10.10.20.40 para una solicitud de DNS para zentyal.private.example.com.

Lo que desea es que, dependiendo de la interfaz/dirección IP que origine la solicitud DNS, se devuelva una respuesta diferente de manera consistente. En Bind eso se llama vista.

Requiere que configure dos archivos de zona diferentes, uno para clientes externos y un segundo para clientes internos, y configure Bind cuándo usar qué archivo de zona. La sección de configuración relevante en su configuración podría verse así:

view "internal" {
        match-clients { localnets; };
        recursion yes;          /* this is the default */

        zone "private.example.com" {
                type master;
                file "db.private.example.com.internal";
                allow-transfer { any; };
    };
};

view "external" {
    match-clients { any; };
    recursion no;

    zone "example.com" {
        type master;
        file "db.example.com.external";
            allow-transfer { none; };
    };
};

Y luego agregue el registro A con la dirección IP 10.x a db.private.example.com.internal y asegúrese de que solo el registro A con la dirección IP 192.x permanezca en el db.example.com.external público archivo de zona.

información relacionada