URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93652
[ Назад ]

Исходное сообщение
"CentOS, DDNS - Bind+dhcpd. Проблемы с обновлением зон."

Отправлено Asand3r , 06-Авг-12 16:40 
Добрый день всем.
Занимаюсь настройкой/изучением связки Bind + dhcpd в DDNS на CentOS. Ранее, на Debian, успешно настраивал пару раз и даже записал для себя некий манула. На CentOS же появились некоторые проблемы.
DHCP успешно раздает настройки, вот его конфиг:
authoritative;

ddns-update-style interim;
key rndc-key {
        algorithm hmac-md5;
        secret "XXXXXXXXXXXXXXXXXXXXX==";
}

zone agency.com {
        primary 127.0.0.1; # Адрес DNS сервера.
        key rndc-key;
}

zone 1.168.192.in-addr.arpa {
        primary 127.0.0.1; # Адрес DNS сервера.
        key rndc-key;
}
# Базовая конфигурация для моего домена agency.com.
subnet 192.168.1.0 netmask 255.255.255.0 {
        default-lease-time      21600;                
        max-lease-time          28800;                  
        option domain-name      "agency.com";    
        option domain-name-servers 192.168.1.31;      
        option subnet-mask      255.255.255.0;          
        option routers          192.168.1.30;            
        range   192.168.1.30 192.168.1.100;
}
Host not3book {
hardware ethernet 08:00:27:05:99:1a;
fixed-address 192.168.1.33;
}

Bind9 установлен, настроен и работает. Файлы конфигурации тут:
ls /etc/named*
named/               named.conf.local     named.rfc1912.zones  
named.conf           named.iscdlv.key     named.root.key
+ там же rndc.key. В /etc/named/ пусто.
Зоны лежат по адресу:
ls /var/named/
data              db-agency.com      named.ca         named.loopback
db-1.168.192      db-agency.com.jnl  named.empty      slaves
db-1.168.192.jnl  dynamic            named.localhost
В /var/named/data логи запуска. Там чисто, ошибок нет.

Основной конфиг 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";
        listen-on       { 127.0.0.1; 192.168.1.31; };
        allow-query     { localhost; 192.168.1.0/24; };
        recursion yes;
        forwarders {213.140.228.252; 213.140.228.218;};
        forward only;

        dnssec-enable no;
        dnssec-validation no;
        dnssec-lookaside auto;

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

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

logging {
channel update_debug {
                 file "/var/named/data/update-debug.log";
                 severity  debug 3;
                 print-category yes;
                 print-severity yes;
                 print-time     yes;
            };
            channel security_info    {
                 file "/var/named/data/named-auth.info";
                 severity  info;
                 print-category yes;
                 print-severity yes;
                 print-time     yes;
            };

            category update { update_debug; };
            category security { security_info; };
       };

#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";
include "/etc/named.conf.local";
include "/etc/rndc.key";

DNSSEC отключен, т.к. засыпает логи ошибками про недоверенный ключ или как-то так. Отключил на время, решил что разберусь позже.
Файл named.conf.local:
zone "agency.com" {
        type master;
        file "db-agency.com";
        journal "/var/named/db-agency.com.jnl";
        allow-update { key rndc-key; };
};

zone "1.168.192.in-addr.arpa" {
        type master;
        file "db-1.168.192";
        journal "/var/named/db-1.168.192.jnl";
        allow-update { key rndc-key; };
};

С такими настройками имею следующее - тестовые виртуалки на WinXP получают адреса, dhcp обновляет файлы зон; nslookup возвращает верные параметры. Форвардинг выполняется, машины имеют доступ в Инет и мой DNS разрешает внешние адреса.
НО! В мои файлы зон при этом ничего не пишется. Прямо сейчас ввел еще одну виртуалку, она получила адрес, dhcp сказал, что обновил зоны:
06-Aug-2012 16:30:14.547 update: info: client 127.0.0.1#44643: updating zone 'agency.com/IN': update unsuccessful: comp-agc01.agency.com/TXT: 'RRset exists (value dependent)' prerequisite not satisfied (NXRRSET)
06-Aug-2012 16:30:14.547 update: info: client 127.0.0.1#38562: updating zone '1.168.192.in-addr.arpa/IN': deleting rrset at '37.1.168.192.in-addr.arpa' PTR
06-Aug-2012 16:30:19.004 update: info: client 127.0.0.1#36321: updating zone 'agency.com/IN': adding an RR at 'comp-agc01.agency.com' A
06-Aug-2012 16:30:19.004 update: info: client 127.0.0.1#36321: updating zone 'agency.com/IN': adding an RR at 'comp-agc01.agency.com' TXT
06-Aug-2012 16:30:19.005 update: debug 3: client 127.0.0.1#36321: updating zone 'agency.com/IN': checking for NSEC3PARAM changes
06-Aug-2012 16:30:19.074 update: info: client 127.0.0.1#43218: updating zone '1.168.192.in-addr.arpa/IN': deleting rrset at '37.1.168.192.in-addr.arpa' PTR
06-Aug-2012 16:30:19.074 update: info: client 127.0.0.1#43218: updating zone '1.168.192.in-addr.arpa/IN': adding an RR at '37.1.168.192.in-addr.arpa' PTR
06-Aug-2012 16:30:19.074 update: debug 3: client 127.0.0.1#43218: updating zone '1.168.192.in-addr.arpa/IN': checking for NSEC3PARAM changes
Немного сбивает с толку "unsuccessfull", но далее вроде всё ОК. И в файлы зон ничего не записалось, но машина пингуется по имени и nslookup возвращает правильные значения.
Почему так? Может я смотрю не те файлы зон? Других и нету...Ну и, если можно, подскажите очевидные косяки в конфиге.


Содержание

Сообщения в этом обсуждении
"CentOS, DDNS - Bind+dhcpd. Проблемы с обновлением зон."
Отправлено Asand3r , 06-Авг-12 18:02 
UPD

Зоны обновились, но только спустя некоторое время. Где-то устанавливается время задержки? Ибо в Debian на Bind 9.7.3 (последнее, что я настраивал ранее) зоны обновлялись тут же.