Добрый день всем.
Занимаюсь настройкой/изучением связки 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 возвращает правильные значения.
Почему так? Может я смотрю не те файлы зон? Других и нету...Ну и, если можно, подскажите очевидные косяки в конфиге.