Назад | Перейти на главную страницу

Привязать ведущий / ведомый, с общедоступным и локальным представлениями, после синхронизации ведомые устройства делятся частным на общедоступном

У меня есть система DNS master / slave с использованием привязки. Хозяин имеет 2 вида, местный и публичный. Есть 2 подчиненных сервера с одинаковыми представлениями (скопировал файл конфигурации на подчиненные и изменил их с главного на подчиненное). Казалось, все работает, внутри моей сети я получил информацию о DNS локальной сети, а снаружи, похоже, получил общедоступную информацию о DNS.

Однако теперь, когда я нахожусь за пределами площадки, я замечаю, что предоставляется информация только для локального DNS. Я проверил с помощью некоторых онлайн-инструментов мои серверы имен. Главный сервер имен возвращает правильную общедоступную информацию DNS, однако подчиненные устройства возвращают только локальную информацию.

Вот конфигурационный файл ведомого:


options {
    directory "/var/bind";
    pid-file "/var/run/named/named.pid";

    listen-on-v6 { ::1; 2002:4b94:5e92::1; 2002:4b94:5e91:2::31; };
    listen-on { 127.0.0.1; 75.148.94.146; 192.168.0.31;  };

    transfer-source-v6 2002:4b94:5e91:2::31;

    allow-query { any; };

    recursion no;
};

logging {
    channel default_log {
        file "/var/log/named/named.log" versions 5 size 50M;
        print-time yes;
        print-severity yes;
        print-category yes;
    };

    category default { default_log; };
    category general { default_log; };
};

view "local" {
    match-clients { 192.168.0.0/16; 127.0.0.1; 2002:4b94:5e91:2::/16; };
    recursion yes;

    zone "." IN {
        type hint;
        file "named.cache";
    };

    zone "open-exodus.net" {
        type slave;
        masters { 2002:4b94:5e91:2::2; };
        file "pri/open-exodus.net.local.fw";
    };

    zone "0.168.192.in-addr.arpa" {
        type slave;
        masters { 2002:4b94:5e91:2::2; };
        file "pri/open-exodus.net.local.rev";
    };

#    zone "2.0.0.0.0.0.0.0.1.9.e.5.4.9.b.4.2.0.0.2.ip6.arpa" {
#        type master;
#        file "pri/open-exodus.net.local.ip6.rev";
#    };
};

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

    zone "open-exodus.net" {
        type slave;
        masters { 2002:4b94:5e91:2::2; };
        file "pri/open-exodus.net.global.fw";
    };
};

Я не могу получить доступ к главному файлу конфигурации за пределами сайта, но он практически идентичен. Единственное, о чем я могу думать, это о том, что "общедоступный" просмотр передается с частного адреса мастера, может ли это быть проблемой? Переносит ли он представление для адреса или для указанного файла?

Предполагая, что ваши списки соответствий адресов верны, я бы поспорил, что ваши подчиненные по умолчанию видят "локальное" представление (IP, который они используют для запроса главного, соответствует критериям "локального" представления), поэтому, когда происходит изменение зоны, и они синхронизируют их потяните «внутреннюю» зону и подайте ее внешнему миру.
Если я прав, то pri/open-exodus.net.global.fw на ваших рабах будут "локальные" данные.

Лучше всего исправить это с помощью query-source директиву в представлениях на ваших ведомых устройствах, чтобы гарантировать, что при получении зон они используют IP-адрес, который будет видеть соответствующее представление ...