Локальный обмен почтой с DNS-серверами

Локальный обмен почтой с DNS-серверами

У меня проблема с правильной настройкой рабочей инфраструктуры для тестирования механизмов предотвращения почтового спуфа. Как указано на графике ниже, у меня есть 2 почтовых сервера (centos1 и 2) и 2 DNS-сервера. Для тестирования записей SPF обязательно иметь один DNS на хост.

Проблема в том, что два DNS не могут взаимодействовать друг с другом. Я имею в виду, они могут пинговаться, но я не знаю, как настроить их, чтобы они предоставляли записи A или MX для другого домена. В реальных сетях эти локальные DNS-серверы должны взаимодействовать с корневым DNS, который предоставляет доменные имена локальным. Нужно ли мне настраивать дополнительный корневой DNS-сервер? Если да, то как это сделать? Я искал почти везде в Интернете и ничего не нашел...

Например, я хочу отправить электронное письмо из[email protected]к[email protected], но когда я это делаю, демон обмена почтой выводит следующее сообщение:

<[email protected]>: Host or domain name not found. Name service error for
    name=another.local type=A: Host not found

Моя текущая конфигурация для одного DNS такова (второй точно такой же, с разницей только в имени домена):

Зона атаки:

$TTL 1D
@       IN SOA  dns1.example.local. root.example.local. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      dns1.example.local.
@       IN      A       192.168.21.131
dns1    IN      A       192.168.21.131
host    IN      A       192.168.21.131
centos1 IN      A       192.168.21.128
centos2 IN      A       192.168.21.129
another.local   IN      A       192.168.21.130
example.local   IN      MX 5    centos1.example.local.

Обратная зона:

$TTL 1D
@       IN SOA  dns1.example.local. root.example.local. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      dns1.example.local.
@       IN      PTR     example.local.
dns1    IN      A       192.168.21.131
host    IN      A       192.168.21.131
centos1 IN      A       192.168.21.128
centos2 IN      A       192.168.21.129
131     IN      PTR     dns1.example.local.
128     IN      PTR     centos1.example.local.
129     IN      PTR     centos2.another.local.

И named.conf

options {
        listen-on port 53 { 127.0.0.1;192.168.21.131; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { localhost; any; };

        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable access
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.root.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

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

zone "example.local" IN {
        type master;
        file "forward.example.local";
        allow-update {none; };
};

zone "21.168.192.in-addr.arpa" IN {
        type master;
        file "reverse.example.local";
        allow-update {none; };
};


include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

Подводя итог, как сделать так, чтобы мои почтовые серверы могли обмениваться почтой с одним DNS для каждого из них? Пожалуйста, обязательно проверьте график ниже, я думаю, он может многое объяснить.

сетевой график

С нетерпением жду вашего ответа! :D

решение1

Я думаю, что у вас здесь неверная запись:

another.local   IN      A       192.168.21.130

Ваша зона предназначена для домена/имени хоста:example.local

Если вы хотите добавить новый домен с:another.local

Создайте для него новую зону.

Связанный контент