Можно ли сделать взаимное автоматическое обновление DNS и DHCP?

Автор: dvc Дата: 26.05.2005 12:55 Пересел с контроллера домена windows2000 на Linux+Samba

Не нашел, как сделать автоматическую регистрацию Samba-клиентов в DNS и DHCP, а также добавление DHCP записей в DNS. Это вообще возможно?
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 30.05.2005 16:52push2lan возможно обновление DNS записей при аренде IP адреса у DHCP сервера.

для этого необходимо соответствующим образом настроить DNS и DHCP сервер.
Samba тут не завязана вообще. при аренде адреса в днс прописывается соответствующая запись в прямой и обратной зоне.
пример рабочих конфигов:
----==== start /etc/dhcpd.conf: ====----

ddns-update-style ad-hoc;
subnet 192.168.16.0 netmask 255.255.255.0 {
# default gateway
range 192.168.16.1 192.168.16.200;
option routers 192.168.16.247;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.16.0;

# dynamic updates
ddns-updates on;
ddns-domainname "kvint.biz";
ddns-rev-domainname "in-addr.arpa";

option domain-name "kvint.biz";
option domain-name-servers 192.168.16.250;

default-lease-time 21600;
max-lease-time 43200;

#create your own secret with the dnssec-keygen command from
# the bind package
key kvintkey {
algorithm hmac-md5;
secret "Tjccav531nl2Ko41uyUpiQ==";
};

zone kvint.biz. {
primary 127.0.0.1;
key kvintkey;
}

zone 16.168.192.in-addr.arpa. {
primary 127.0.0.1;
key kvintkey;
}
}
----==== end /etc/dhcpd.conf: ====----

----==== start /etc/named.conf: ====----
// secret must be the same as in /etc/rndc.conf
key kvintkey {
algorithm hmac-md5;
secret "Tjccav531nl2Ko41uyUpiQ==";
};

options {
directory "/var/named/";
pid-file "/var/run/named/named.pid"; // Put pid file in working dir
auth-nxdomain yes;
};

zone "." {
type forward;
forwarders { 192.168.16.247; };
};

zone "0.0.127.in-addr.arpa" {
type master;
file "named.local";
};

zone "kvint.biz" {
type master;
file "kvint.zone";
allow-update { key kvintkey; };
};

zone "16.168.192.in-addr.arpa" {
type master;
file "kvint.reversed";
allow-update { key kvintkey; };
};
----==== stop /etc/named.conf: ====----


сгенерить ключ rndc нужно обязательно.
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 05.09.2005 16:41dvc Наконец-то дошли руки попробовать (!) Улыбка

Ключ сгенерил командой dnssec-keygen -a HMAC-MD5 -b 128 -n ZONE tdekey

Конфиги поправил, как было написано. В логах теперь появляются такие строчки:
---
Sep 5 12:28:13 srv dhcpd: if DEMO-03.tde.local IN A rrset doesn't exist add DEMO-03.tde.local 10800 IN A 192.168.0.37: timed out.
Sep 5 12:28:13 srv dhcpd: DHCPREQUEST for 192.168.0.37 from 00:c0:26:2c:a3:b7 (DEMO-03) via eth0
Sep 5 12:28:13 srv dhcpd: DHCPACK on 192.168.0.37 to 00:c0:26:2c:a3:b7 (DEMO-03) via eth0
---
Записи в DNS не обновляются. Попробовал в named.conf добавить:
---
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
---
Результат такой же. Такое ощущение, что DNS не отвечает на запросы про обновление.

---
//named.conf

controls {
inet 127.0.0.1 allow { localhost; } keys { tdekey; };
};

options {
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
forwarders {
62.213.0.12;
62.213.2.1;
};
forward first;
query-source port 53;
# fetch-glue no;
recursion yes;
};
include "/etc/rndc.key";


zone "." {
type hint;
file "/var/named/named.ca";
};



zone "tde.local" {
type master;
file "/var/named/tde.local.hosts";
allow-update { key tdekey; };
};

zone "0.168.192.in-addr.arpa" {
type master;
file "/var/named/192.168.0.rev";
allow-update { key tdekey; };
};



//rndc.key

key tdekey {
algorithm hmac-md5;
secret "6eSlC9NPDldXVunATS9hQQ==";
};

//dhcp.conf

ddns-update-style ad-hoc;
# LAN
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.254;
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.16.0;

option ntp-servers 192.168.0.1;
option domain-name-servers 192.168.0.1;
option domain-name "tde.local";

ddns-updates on;

ddns-domainname "tde.local";
ddns-rev-domainname "in-addr.arpa";

option domain-name "tde.local";
option domain-name-servers 192.168.0.1;

default-lease-time 21600;
max-lease-time 43200;

key tdekey {
algorithm hmac-md5;
secret "6eSlC9NPDldXVunATS9hQQ==";
}

zone tde.local. {
primary 127.0.0.1;
key tdekey;
}

zone 0.168.192.in-addr.arpa. {
primary 127.0.0.1;
key tdekey;
}

}

---

Может я неправильно ключ сгенерил? Или ещё где-то напортачил?
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 05.09.2005 18:15Manwe ты вначеле без ключей подними, когда заработает то уже прикручивай ключи
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 06.09.2005 09:21dvc Дык без ключей уже месяца три как работает. Да и с этой конфигурацией работает. Только DHCP записи в DNS не обновляет. Получается, что по имени я могу пинговать только тех, кого руками в DNS добавил.
Я даже скажу, что это особо не мешает, но таки хотелось бы разобраться - случаи-то разные бывают...
Да и ошибка наверняка какая-то глупая. Может чего перезагрузить нужно. Или строчку где-то дописать соответствующую... Или демон какой запустить... Или запись в файлы зон разрешить какой-нибудь группе...
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 06.09.2005 19:30Woodoo Думаю, где-то в логах от named должны быть ответы.
Навскидку в dhcpd.conf:
1. ad-hoc схема, якобы уже не работает (согдасно `man dhcpd.conf'. Измени/добавь:
---
ddns-update-style interim;
authoritative;
---
2. Вынеси описание ключа и зон из subnet в global.
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 08.09.2005 17:09dvc Что уже только не крутил Грустный

---
#rndc -V status
...........
get key for server
get config key list
decode base64 secret
status
post event
using server 127.0.0.1 (127.0.0.1#953)
.....
number of zones: 5
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is ON
server is up and running
---

Ну собственно это говорит о том, что через rndc достучаться до dns возможно. Сервер пашет, ключик правильный. Кстати, порт по умолчанию в rndc.conf указан 953 (TCP, как следует из man).

При этом, при подключении клиента-dhcp:

В /var/log/messages:
---
Sep 8 12:15:17 srv dhcpd: DHCPDISCOVER from 00:e0:18:44:d3:ce (srv2) via eth0
Sep 8 12:15:18 srv dhcpd: DHCPOFFER on 192.168.0.100 to 00:e0:18:44:d3:ce (srv2) via eth0
Sep 8 12:15:18 srv dhcpd: unable to add reverse map from 100.0.168.192.in-addr.arpa to srv2.tde.local: timed out
Sep 8 12:15:18 srv dhcpd: DHCPREQUEST for 192.168.0.100 (192.168.0.1) from 00:e0:18:44:d3:ce (srv2) via eth0
Sep 8 12:15:18 srv dhcpd: DHCPACK on 192.168.0.100 to 00:e0:18:44:d3:ce (srv2) via eth0
---

Т.е. он пытается, но вылетает по таймауту. То ли таймаут по умолчанию слишком мал, то ли что-то с авторизацией не проходит, то ли стучится dhcp не туда... Смена типов авторизации никакого влияния не имеет. В логах named вообще ничего не появляется.
Может быть в rndc.conf прописать другой порт? Или dhcp можно указать как-то этот порт в явном виде?

Уважаемый all! ХЕЛП!
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 09.09.2005 11:43dvc Нашел глупейшую ошибку! Грустный
Многие файлы делал от рута, соответственно dns не имел доступа к журналам и файлам зоны для редактирования. Исправил везде, где нашел - получил логи:
---
# cat named-update.log
.........
Sep 09 07:22:32.003 update: info: client 127.0.0.1#55845: updating zone 'tde.local/IN': adding an RR
Sep 09 07:22:32.004 update: info: client 127.0.0.1#55845: updating zone 'tde.local/IN': error: journal open failed: unexpected error
Sep 09 07:22:34.229 update: info: client 192.168.0.100#1068: updating zone 'tde.local/IN': update failed: 'RRset exists (value dependent)' prerequisite not satisfied (NXRRSET)

#####################
# cat named-auth.log
.........
Sep 09 07:22:34.239 security: error: client 192.168.0.100#1071: update 'tde.local/IN' denied
Sep 09 07:22:34.260 security: error: client 192.168.0.100#1076: update '0.168.192.in-addr.arpa/IN' denied

---
такое ощущение, что нужен какой-то журнал или права доступа к нему... Есть идеи?
Re: Можно ли сделать взаимное автоматическое обновление DNS и DHCP? 09.09.2005 14:06dvc Всё, настроилось кажется... Нужно было просто подождать некоторое время.
А строчка:
updating zone 'tde.local/IN': update failed: 'RRset exists (value dependent)' prerequisite not satisfied (NXRRSET)
возможно появляется если на win-клиенте стоит галочка "зарегистрировать это подключение в dns", что клиентам, насколько я понял, запрещено. За них это должен делать сервер. Я в этом еще не до конца уверен, но очень похоже на правду...
RSS-материал