Как настроить BIND для пересылки DNS-запроса на определенный IP-адрес по IP-адресу запрашивающего сайта

Поэтому я пытаюсь настроить BIND для изменения IP-адреса ответа на основе настроенного IP-адреса запрашиваемого домена. Таким образом, запрос связывается с доменом.local и его IP-адрес 10.0.0.10. То, что я пытаюсь сделать, это то, что, если bind видит какой-либо домен, имеющий ip-адрес 10.0.0.10, он ответит ip, скажем, 10.0.0.20, вместо того, чтобы создавать запись в bind для domain.local.

1 ответ

Это становится очень грязным, если у вас есть много разных ответов / сетей, которые вам нужно обработать, но с помощью представлений можно сделать несколько ответов на основе источника. Я использовал это раньше, чтобы предоставить локальным адресам локальный адрес в ответе, а кому-либо еще публичный адрес.

acl "someclients" {
    1.2.3.4/24;
    5.6.7.8/24;
};

view "view1" {
    // directly specifying address(es) or ranges
    match-clients { 10.0.0.0/8; }; 

    zone "domain.com" {
        type master;
        file "view1/domain.com.zone";
    };
};

view "view2" {
    // example using a predefined group of addresses/ranges
    match-clients { someclients; }; 

    zone "domain.com" {
        type master;
        file "view2/domain.com.zone";
    };
};

view "view3" {
    match-clients { any; };

    zone "domain.com" {
        type master;
        file "view3/domain.com.zone";
    };
};

Там также есть localnets acl по умолчанию, который соответствует любой сети, локальной для сервера Bind.

Обратите внимание, что при использовании видов все зоны должны находиться внутри вида. Если у вас есть несколько определений зон, которые должны присутствовать во всех представлениях, мне будет проще перенести их все в отдельный файл, а затем добавить include "myzones.conf"; внутри каждого вида.

Другие вопросы по тегам