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

Исходное сообщение
"Регистрация в DNS через DHCP"

Отправлено Вещий , 20-Май-06 02:24 
Имеем локалку на 200 хостов, динамические адреса раздаются железякой - роутером AlliedTelecyn. Хотлеось бы поднять на линуксовом сервере (FC5) ДНС, который обслуживал бы эту подсеть. Как можно настроить бинд на автоматическую регистрацию компьютеров при получении адреса от DHCP сервера?

Содержание

Сообщения в этом обсуждении
"Регистрация в DNS через DHCP"
Отправлено lancelot , 20-Май-06 13:51 
>Имеем локалку на 200 хостов, динамические адреса раздаются железякой - роутером AlliedTelecyn.
>Хотлеось бы поднять на линуксовом сервере (FC5) ДНС, который обслуживал бы
>эту подсеть. Как можно настроить бинд на автоматическую регистрацию компьютеров при
>получении адреса от DHCP сервера?
1 - DHCP сереру обяснить, что он должен регистрировать имена в DNS
2 - DNS серверу обяснить, что он должен позволять DHCP серверу вносить в файлы зон информацию

RFC 2136 Dynamic Updates in the Domain Name System (DNS UPDATE)
RFC 2132 DHCP Options and BOOTP Vendor Extensions



"Регистрация в DNS через DHCP"
Отправлено Mranton , 20-Май-06 20:42 
>>Имеем локалку на 200 хостов, динамические адреса раздаются железякой - роутером AlliedTelecyn.
>>Хотлеось бы поднять на линуксовом сервере (FC5) ДНС, который обслуживал бы
>>эту подсеть. Как можно настроить бинд на автоматическую регистрацию компьютеров при
>>получении адреса от DHCP сервера?
>1 - DHCP сереру обяснить, что он должен регистрировать имена в DNS
>
>2 - DNS серверу обяснить, что он должен позволять DHCP серверу вносить
>в файлы зон информацию
>
>RFC 2136 Dynamic Updates in the Domain Name System (DNS UPDATE)
>RFC 2132 DHCP Options and BOOTP Vendor Extensions

по-простому:)   :
http://www.opennet.me/base/net/auto_dns_dhcp.txt.html


"Регистрация в DNS через DHCP"
Отправлено Вещий , 21-Май-06 00:51 
>>>Имеем локалку на 200 хостов, динамические адреса раздаются железякой - роутером AlliedTelecyn.
>>>Хотлеось бы поднять на линуксовом сервере (FC5) ДНС, который обслуживал бы
>>>эту подсеть. Как можно настроить бинд на автоматическую регистрацию компьютеров при
>>>получении адреса от DHCP сервера?
>>1 - DHCP сереру обяснить, что он должен регистрировать имена в DNS
>>
>>2 - DNS серверу обяснить, что он должен позволять DHCP серверу вносить
>>в файлы зон информацию
>>
>>RFC 2136 Dynamic Updates in the Domain Name System (DNS UPDATE)
>>RFC 2132 DHCP Options and BOOTP Vendor Extensions
>
>по-простому:)   :
>http://www.opennet.me/base/net/auto_dns_dhcp.txt.html

проблема в том что dhcp раздает не dhcpd а железяка...не могу найти настройку по регистрации в днс...


"Регистрация в DNS через DHCP"
Отправлено Осторожный , 26-Май-06 10:27 
>проблема в том что dhcp раздает не dhcpd а железяка...не могу найти
>настройку по регистрации в днс...

У железки может и не быть такой опции

Как вариант - отключить dhcp-сервер на железке
Включить dhcp-сервер на своем компе
( если конфигурация сети не препятствует этому - например сегмент всего один ).
Потом настраивать свой dhcp-сервер

Но могу сразу сказать - не стоит овчинка выделки.
Если у вас внутренние адреса, то зачем вам прописывание имен в DNS ?
Вы можете себе выделить 200 внутренних IP и в этом случае
вы можете раздавать по DHCP адреса статически
( то есть скажем на две недели выдается один и тот же IP по одному MAC-у ).
Если это позволяет железка - пропишите в ней и раздавайте через нее.
Если железка не позволяет - раздавайте через свой DHCP-сервер.

А имея статические IP-ники внутри сети вы можете прописать их статически их
во внутренний DNS-сервер.


"Регистрация в DNS через DHCP"
Отправлено Вещий , 26-Май-06 11:20 
>>проблема в том что dhcp раздает не dhcpd а железяка...не могу найти
>>настройку по регистрации в днс...
>
>У железки может и не быть такой опции
>
>Как вариант - отключить dhcp-сервер на железке
>Включить dhcp-сервер на своем компе
>( если конфигурация сети не препятствует этому - например сегмент всего один
>).
>Потом настраивать свой dhcp-сервер
>
>Но могу сразу сказать - не стоит овчинка выделки.
>Если у вас внутренние адреса, то зачем вам прописывание имен в DNS
>?
>Вы можете себе выделить 200 внутренних IP и в этом случае
>вы можете раздавать по DHCP адреса статически
>( то есть скажем на две недели выдается один и тот же
>IP по одному MAC-у ).
>Если это позволяет железка - пропишите в ней и раздавайте через нее.
>
>Если железка не позволяет - раздавайте через свой DHCP-сервер.
>
>А имея статические IP-ники внутри сети вы можете прописать их статически их
>
>во внутренний DNS-сервер.


ну около 220 хостов в локалке...прописывать ручками
ДНС все же проще


"Регистрация в DNS через DHCP"
Отправлено ShyLion , 26-Май-06 13:06 
>>>проблема в том что dhcp раздает не dhcpd а железяка...не могу найти
>>>настройку по регистрации в днс...
>>
>>У железки может и не быть такой опции


Виндовые клиенты сами могут регистрироваться в ДНС, нужно разрешить им просто.


"Регистрация в DNS через DHCP"
Отправлено Вещий , 26-Май-06 14:03 
>>>>проблема в том что dhcp раздает не dhcpd а железяка...не могу найти
>>>>настройку по регистрации в днс...
>>>
>>>У железки может и не быть такой опции
>
>
>Виндовые клиенты сами могут регистрироваться в ДНС, нужно разрешить им просто.


То есть требуется настроить тока бинд?


"Регистрация в DNS через DHCP"
Отправлено Gennadi , 26-Май-06 18:15 
>>>>>проблема в том что dhcp раздает не dhcpd а железяка...не могу найти
>>>>>настройку по регистрации в днс...

DHCP и динамический Update DNS

Читатъ man-pages скучно... .

Короткое руководство по инсталяции DHCP-Serverа, который автоматически записывает DHCP-Client в DNS.

Следующие пакеты необходимо инсталировать: DHCP-Server и BIND9.

Принимаем, что локальная сеть имеет ip-adress: 192.168.33.32 netmask 255.255.255.240
Linux-Server имеет ip-adress : 192.168.33.39 имя „swesda“
Имя домена: gennadi.ru

Сначала нужно сгенерировать KEY, который необходим для надёжной
коммуникации DHCP <-> DNS.
    

swesda:~ # cd /etc
swesda:~ # dnssec-keygen -a HMAC-MD5 -b 128 -n USER DHCP_UPDATER
    

В папке /etc появятся два файла которые, начинаются KDHCP_UPDATER.
Важный для нас *.private.
    

#/etc/KDHCP_UPDATER.+<NUMMER>.private
Private-key-format: v1.2
Algorithm: 157 (HMAC_MD5)
Key: H94JQHKbevJZwzd4OOTu5g==
    

Ключ, который стоит за Кеу: использует DHCP для связи c DNS и его нужно записать в файле

/etc/dhcpd.conf

=========================================================    

option netbios-node-type 8;
option netbios-name-servers 192.168.33.39;

ddns-update-style interim;
ddns-domainname "gennadi.ru";
update-static-leases true;

key DHCP_UPDATER {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret H94JQHKbevJZwzd4OOTu5g==;
}

zone gennadi.ru. {
primary 192.168.33.39;
key DHCP_UPDATER;
}
zone 33.168.192.in-addr.arpa. {
primary 192.168.33.39;
key DHCP_UPDATER;
}

default-lease-time 86400;
max-lease-time 25992000;

subnet 192.168.33.32 netmask 255.255.255.240 {
option domain-name-servers 192.168.33.39;
option broadcast-address 192.168.33.47;
option routers 192.168.33.33;
range 192.168.33.40 192.168.33.46;

}
host swesda {
hardware ethernet 00:40:BB:05:F1:2D;
fixed-address 192.168.33.39;
}
===================================================================    

DHCP-Server "готов употрeблению".

Теперь конфигурируем DNS - это нужно сделать в файле

/etc/named.conf

==============================================================

options {

auth-nxdomain yes;
directory "/var/named";
datasize default;
stacksize default;
coresize default;
recursion yes;

forwarders { 194.25.2.129; 195.20.224.234; };
listen-on port 53 { 192.168.33.39; };
allow-recursion { 192.168.33.32/28; localhost; };
};

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; };
category lame-servers { null; };
};

zone "localhost" in {
type master;
file "localhost.zone";
};

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

zone "." in {
type hint;
file "root.hint";
};

key DHCP_UPDATER {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret H94JQHKbevJZwzd4OOTu5g==;
};

zone "gennadi.ru" {
type master;
file "/var/named/gennadi.ru.zone";
allow-update { key DHCP_UPDATER; };
notify yes;
also-notify {192.168.33.39;};
};

zone "33.168.192.in-addr.arpa" {
type master;
file "/var/named/33.168.192.zone";
allow-update { key DHCP_UPDATER; };
notify yes;
also-notify {192.168.33.39;};
};
=================================================================    


ну вот всё.

Как сконфигурировать файлы ( gennadi.ru.zone, 33.168.192.zone) в /var/named я думаю что Вы сможете сами.

Они должны выглядеть примерно так:

/var/named/gennadi.ru.zone

=================================================================    
$ORIGIN .
$TTL 172800 ; 2 days
gennadi.ru IN SOA swesda. root.localhost. (
2000035 ; serial
28800 ; refresh (8 hours)
7200 ; retry (2 hours)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS swesda.gennadi.ru.
A 192.168.33.39
MX 10 swesda.gennadi.ru.

$ORIGIN gennadi.ru.
ftp CNAME swesda
mail CNAME swesda
client1 A 192.168.33.33
client2 A 192.168.33.34
===========================================================    


/var/named/33.168.192.zone

===========================================================    

$ORIGIN .
$TTL 172800 ; 2 days
33.168.192.in-addr.arpa IN SOA swesda. root.localhost. (
2000025 ; serial
28800 ; refresh (8 hours)
7200 ; retry (2 hours)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS swesda.

$ORIGIN 33.168.192.in-addr.arpa.
39 PTR swesda.
33 PTR client1.gennadi.ru.
34 PTR client2.gennadi.ru.
===================================================================    

    

swesda:~ # /etc/init.d/named start
swesda:~ # /etc/init.d/dhcpd start
    

Проконтролируйеуте всё ли хорошо старует

    

swesda:~ # tail -f /var/log/messages
    

WIN-DHCP-Server выключить.

Если в Вашей сети стартует DHCP-Client с именем (напр. "matrix"), то Вы сможете это проконтролировать следующим образом:

    

swesda:~ # tail -f /var/log/messages

Oct 23 22:25:58 swesda dhcpd: DHCPDISCOVER from 00:46:04:a5:1b:7a via eth0
Oct 23 22:25:59 swesda dhcpd: DHCPOFFER on 192.168.33.46 to 00:46:04:a5:1b:7a via eth1
Oct 23 22:25:59 swesda dhcpd: DHCPREQUEST for 192.168.33.46 (192.168.0.1) from 00:46:04:a5:1b:7a via eth0
Oct 23 22:25:59 swesda dhcpd: DHCPACK on 192.168.33.46 to 00:46:04:a5:1b:7a via eth0
Oct 23 22:47:21 swesda dhcpd: DHCPDISCOVER from 00:46:04:a5:1b:7a via eth0
Oct 23 22:47:22 swesda dhcpd: DHCPOFFER on 192.168.33.46 to 00:46:04:a5:1b:7a (matrix) via eth0
Oct 23 22:47:22 swesda dhcpd: DHCPREQUEST for 192.168.33.46 (192.168.0.1) from 00:46:04:a5:1b:7a (matrix) via eth0
Oct 23 22:47:22 swesda dhcpd: DHCPACK on 192.168.33.46 to 00:46:04:a5:1b:7a (matrix) via eth0
Oct 23 22:50:17 swesda dhcpd: DHCPREQUEST for 192.168.33.46 from 00:46:04:a5:1b:7a (matrix) via eth0
Oct 23 22:50:17 swesda dhcpd: DHCPACK on 192.168.33.46 to 00:46:04:a5:1b:7a (matrix) via eth0
Oct 23 23:12:49 swesda dhcpd: DHCPREQUEST for 192.168.33.46 from 00:46:04:a5:1b:7a (matrix) via eth0
Oct 23 23:12:49 swesda dhcpd: DHCPACK on 192.168.33.46 to 00:46:04:a5:1b:7a (matrix) via eth0
    

Теперь загляните в директорию /var/named . Там Вы найдёте два новых файла ( gennadi.ru.zone.jnl и 33.168.192.zone.jnl ) , которые создал DHCP-Server и записал туда данные нового DHCP-Client'а и DNS уже знает об этом:


swesda:~ # ping matrix
PING matrix.gennadi.ru (192.168.33.46) 56(84) bytes of data.
64 bytes from matrix (192.168.33.46): icmp_seq=1 ttl=64 time=0.255 ms
64 bytes from matrix (192.168.33.46): icmp_seq=2 ttl=64 time=0.422 ms
64 bytes from matrix (192.168.33.46): icmp_seq=3 ttl=64 time=0.427 ms
64 bytes from matrix (192.168.33.46): icmp_seq=4 ttl=64 time=0.366 ms

--- matrix.gennadi.ru ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3025ms
rtt min/avg/max/mdev = 0.255/0.367/0.427/0.071 ms
swesda:~ #
    


Через несколько минут, когда DNS обновит свои зоны, в файлах ( gennadi.ru.zone и 33.168.192.zone ) появятся следующие записи:

/var/named/gennadi.ru.zone

=====================================================
$ORIGIN .
$TTL 172800 ; 2 days
gennadi.ru IN SOA swesda. root.localhost. (
2000035 ; serial
28800 ; refresh (8 hours)
7200 ; retry (2 hours)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS swesda.gennadi.ru.
A 192.168.33.39
MX 10 swesda.gennadi.ru.

$ORIGIN gennadi.ru.
ftp CNAME swesda
mail CNAME swesda
client1 A 192.168.33.33
client2 A 192.168.33.34
matrix A 192.168.33.46
TXT "31340a5a9edbf7e37a9668aca08f672e58"
$TTL 172800 ; 2 days

    

/var/named/33.168.192.zone
    
=========================================================
$ORIGIN .
$TTL 172800 ; 2 days
33.168.192.in-addr.arpa IN SOA swesda. root.localhost. (
2000025 ; serial
28800 ; refresh (8 hours)
7200 ; retry (2 hours)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS swesda.

$ORIGIN 33.168.192.in-addr.arpa.
39 PTR swesda.
33 PTR client1.gennadi.ru.
34 PTR client2.gennadi.ru.
$TTL 172800 ; 2 days
46 PTR matrix.gennadi.ru.
    

Ну вот... . Всё чудесно работает...
_________________
gennadi@gennadi.dyn.ee


"Регистрация в DNS через DHCP"
Отправлено Осторожный , 26-Май-06 19:55 
>>
>>А имея статические IP-ники внутри сети вы можете прописать их статически их
>>
>>во внутренний DNS-сервер.
>
>
>ну около 220 хостов в локалке...прописывать ручками
>ДНС все же проще

Разумеется раз имена статические, то прописать их в DNS статически

В любом случае нужно иметь таблицу всех хостов хоть в каком-то виде
иначе администрить такое хозяйство невозможно

Например - проблемы с компом vasya - а где находится комп,
а какой у него MAC ?