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

Настройка привязки - ошибка записи SOA при запуске именованной службы

Прошло слишком много времени с тех пор, как я установил сервер привязки. В последнее время я создал много DNS-серверов Windows, поэтому я хотел попробовать свои силы в CentOS 6. К сожалению, у меня возникло множество проблем с настройкой файлов зон.

Имя хоста: shield.domain.com

Когда я пытаюсь запустить службу, я получаю следующее сообщение об ошибке:

domain.com.zone:3: SOA record not at top of zone (domain.com.domain.com)
zone domain.com/IN: loading from master file domain.com.zone failed: not at top of zone
zone domain.com/IN: not loaded due to errors.
_default/domain.com/IN: not at top of zone
zone localhost.localdomain/IN: loaded serial 0
zone localhost/IN: loaded serial 0
zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0
zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0
zone 0.in-addr.arpa/IN: loaded serial 0

Я изменил файл /etc/ named.conf, чтобы включить мою новую зону, и файл настроен следующим образом:

options {
    listen-on port 53 { 127.0.0.1; };
    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";
    allow-query     { localhost; };
    recursion yes;

    dnssec-enable yes;
    dnssec-validation yes;
    dnssec-lookaside auto;

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

    managed-keys-directory "/var/named/dynamic";
    forwarders { <IP_ADDR_1>;<IP_ADDR_2>;<IP_ADDR_3>;};
};

zone "domain.com" IN {
    type master;
    file "domain.com.zone";
    allow-update { none; };
};

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

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

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

Затем я создал новый файл зоны /var/ named/domain.com.zone, который настроен как таковой. Я не могу понять, что я сделал не так с записью SOA вверху, или есть другие проблемы с моим файлом зоны:

$ORIGIN domain.com
$TTL 86400
@       IN      SOA     shield.domain.com.    hostmaster.domain.com. (
                    2013008413      ; serial
                    21600           ; refresh after 6 hours
                    3600            ; retry after 1 hour
                    604800          ; expire after 1 week
                    86400 )         ; minimum TTL of 1 day

    IN      NS      shield.domain.com.

            IN      A       10.10.0.175

shield      IN      A       10.10.0.175

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

Привязать файлы конфигурации: http://centos.org/docs/2/rhl-rg-en-7.2/s1-bind-configuration.html

Пример зоны DNS: http://www.zytrax.com/books/dns/ch6/mydomain.html

Запись в журнале SOA record not at top of zone (domain.com.domain.com) намек на то, что что-то не так; в SOA запись в верхней части файла не рассматривается как запись для домена, который должен обрабатываться этим файлом зоны.

Это могло быть вызвано $ORIGIN domain.com несовпадение линии с zone "domain.com" IN { линия в named.conf файл, либо из-за фактического несоответствия, либо из-за проблемы с обработкой строки UTF-8.

В этом случае простой обходной путь - просто удалить $ORIGIN строка из файла зоны; затем он будет автоматически построен на основе определения зоны в named.conf, гарантируя совпадение этих строк.