From: Сергей Шинтев <shint_sv@ngs.ru>
Subject: Настройка DDNS + DHCPD
Настройка DDNS + DHCPD
-------------------
Настройка динамичекого обновления DNS.
Для начала необходимо скачать версию dns и dhcpd сервера и установить их.
Настройка проводилась на bind версии 9.2.0 и dhcpd версии 3.0, которые можно скачать с сайта www.isc.org
ftp://ftp.isc.org/isc/bind9/9.2.0/bind-9.2.0.tar.gz
ftp://ftp.isc.org/isc/dhcp/dhcp-latest.tar.gz
(есть уже более новые версии)
Необходимо определиться с теми сегментами(зонами) что необходимо динамически обновлять. Например есть сегмент с адрессами 192.168.10.x, это наш локальный сегмент в котором необходимо динамически обновлять адресса и соответственно заносить в базу данных dns.
Настройки dhcpd.conf должны выглядить следующим образом
option domain-name "test";
# имя домена, можно придумать любой свой например свой test
option domain-name-servers server.test;
# доменное имя dns сервера, т.е dns имя сервера server.test =servername.domainname
ddns-update-style interim;
# есть три вида обновление базы dns, я так понял что это более стандартный.
key DHCP_UPDATER {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret mCzPGMAluZkO1LBIqEUQ4w==;
}
# Для того чтобы обновлять базу днс, необходимо создать секретный ключ, чтобы затем
# только наш сервер dhcpd смог бы обновлять.
# Если bind 9, то можно его слздать командой dnssec-keygen -a HMAC-MD5 -b 128 -n
# USER DHCP_UPDATER
zone test. {
primary 127.0.0.1;
key DHCP_UPDATER;
}
zone 10.168.192.IN-ADDR.ARPA. {
primary 127.0.0.1;
key DHCP_UPDATER;
}
# Указываем какая зона в Днс будет обновляться.
# Обратите внимание на правильность написания зоны, "10.168.192.IN-ADDR.ARPA."
# Если в сети несколько сегментов, то они также могут быть дописанны по аналогии
::::::
Дальнейшее описание сегмента стандартное, и уже описанно во многих статьях.
Вторым этапом настраиваем DNS, файл named.conf
Подразумевается что сервер днс уже настроен и работает.
#---------------
Named.conf
Добавляем след. строки в файл
key DHCP_UPDATER {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret mCzPGMAluZkO1LBIqEUQ4w==;
};
# Эти строки полность соответствуют тому что добавили в dhcpd.conf
logging {
channel update_debug {
file "/var/log/named-update.log";
severity debug 3;
print-category yes;
print-severity yes;
print-time yes;
};
channel security_info {
file "/var/log/named-auth.log";
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category update { update_debug; };
category security { security_info; };
};
# Эти строки вставляются для протоколирования работы сервера. Взято из man dhcpd.conf
# Предварительно необходимо создать файлы, которые указаны в оции file ":"
zone "10.168.192.in-addr.arpa" IN {
type master;
file "db.192.168.10";
allow-update { key DHCP_UPDATER; };
};
zone "test" {
type master;
file "db.test";
allow-update { key DHCP_UPDATER; };
notify no;
};
# описание зон стандартное(описана прямая и обратная зона), единственно что
# изменилось это key DHCP_UPDATER;,
# т.е. этим мы указываем что зона обновляется через соответствующий ключ. Данные
# ключ описан в dhcpd.conf и в named.conf
::::::::..
#---------------
После этого запускаем named и dhcpd и смотрим логи.
Если все нормально то, в /var/state/dhcp/dhcpd.leases
Появяться записи типа
lease 192.168.10.141 {
starts 1 2002/03/11 05:08:34;
ends 4 2002/03/14 05:08:34;
tstp 4 2002/03/14 05:08:34;
binding state active;
next binding state free;
hardware ethernet 00:02:b3:3a:07:12;
uid "