В процессе ковыряния с самбой дошел до настройки ddns, чтобы попробовать задать самбе порядок разрешения имен в dns перед wins. Итак, есть dhcp-сервер, на нем же крутится bind, то есть DNS-сервер. DHCP раздает адреса клиентам под управлением Windows XP. Конфиг dhcpd.conf слудующий:
Код: Выделить всё
authoritative;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
#option ms-classless-static-routes code 249 = array of unsigned integer 8;
#option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
include "/etc/rndc.key";
zone urfu {
primary 127.0.0.1;
key rndc-key;
}
zone 2.168.192.in-addr.arpa {
primary 127.0.0.1;
key rndc-key;
}
subnet 192.168.2.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.2.255;
option routers 192.168.2.1; #,192.168.2.1;
option domain-name-servers 192.168.2.1; #93.88.181.2,8.8.8.8,93.88.182.2;
option domain-name "urfu";
#option ntp-servers 192.168.2.1;
ddns-updates on; #Разрешение Dynamic DNS
ddns-update-style interim;
ddns-domainname "urfu";
ddns-rev-domainname "2.168.192.in-addr.arpa";
ignore client-updates;
update-static-leases true;
option netbios-name-servers 192.168.2.10; #Самба-сервер, выступающий в роли WINS-сервера
option netbios-node-type 8;
default-lease-time 3600; #36000;
max-lease-time 7200; #43200;
# Клиенты получают маршруты от сервера DHCP (для работы этого надо раскомменитровать определение выше)
# option ms-classless-static-routes 16,172,16,172,16,10,1, 8,10,172,16,10,1, 20,93,88,176,172,16,10,1;
range 192.168.2.30 192.168.2.254;
group top{
host area51 { hardware ethernet 00:1C:C0:5A:21:E1; fixed-address 192.168.2.10; }
host dhcp11 { hardware ethernet 00:1c:c0:5a:22:4c; fixed-address 192.168.2.11; }
host dhcp12 { hardware ethernet 00:e0:4c:16:11:29; fixed-address 192.168.2.12; }
host dhcp13 { hardware ethernet 00:50:ba:53:49:aa; fixed-address 192.168.2.13; }
host dhcp14 { hardware ethernet 00:1c:c0:5a:33:1f; fixed-address 192.168.2.14; }
# host dhcp15 { hardware ethernet 00:1c:c0:0a:0f:26; fixed-address 192.168.2.15; }
host dhcp16 { hardware ethernet 00:1c:c0:0a:0f:18; fixed-address 192.168.2.16; }
host dhcp17 { hardware ethernet 70:71:bc:0b:c9:c5; fixed-address 192.168.2.17; }
host dhcp18 { hardware ethernet 00:19:66:2c:4e:a9; fixed-address 192.168.2.18; }
host dhcp19 { hardware ethernet 00:19:66:2c:4e:a1; fixed-address 192.168.2.19; }
host dhcp20 { hardware ethernet 00:01:6c:a5:bc:85; fixed-address 192.168.2.20; }
host dhcp21 { hardware ethernet 00:1c:c0:0a:0f:4a; fixed-address 192.168.2.21; }
}
}Код: Выделить всё
acl "lan" { 192.168.2.0/24; 127.0.0.1; };
include "/etc/rndc.key";
//////////////////////////////////////////////////////////////////
//Внутренняя зона
zone "urfu" IN {
type master;
file "urfu.zone";
allow-query { lan; };
allow-update { key rndc-key; };
allow-transfer { lan; };
};
zone "2.168.192.in-addr.arpa" IN {
type master;
file "192.168.2.zone";
allow-query { lan; };
allow-update { key rndc-key; };
allow-transfer { lan; };
};
//////////////////////////////////////////////////////////////////Я пробовал проверить работает ли ddns выполняя следующее: nsupdate -d testfile, в testfile такое содержимое:
Код: Выделить всё
key rndc-key тутДлинныйКлюч
update add test5.urfu. 3600 A 192.168.2.205
send
update add 205.2.168.192.in-addr.arpa 3600 PTR test5.urfu.
sendПосле этого dns динамически обновлялся:
Код: Выделить всё
[root@area51 ~]# nslookup test5.urfu
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: test5.urfu
Address: 192.168.2.205
[root@area51 ~]# nslookup 192.168.2.205
Server: 127.0.0.1
Address: 127.0.0.1#53
205.2.168.192.in-addr.arpa name = test5.urfu.Однако, при попытке включения Windows-клиента, в логе вижу только:
Код: Выделить всё
Mar 27 15:51:07 localhost dhcpd: DHCPREQUEST for 192.168.2.86 from 00:1c:c0:0a:0f:26 (Lion) via lan
Mar 27 15:51:07 localhost dhcpd: DHCPACK on 192.168.2.86 to 00:1c:c0:0a:0f:26 (Lion) via lan
Mar 27 15:51:07 localhost dhcpd: DHCPREQUEST for 192.168.2.86 from 00:1c:c0:0a:0f:26 (Lion) via lan
Mar 27 15:51:07 localhost dhcpd: DHCPACK on 192.168.2.86 to 00:1c:c0:0a:0f:26 (Lion) via lanИ при попытке разрешить имя либо адрес получаю отлуп от DNS о ненайденном имени или адресе:
Код: Выделить всё
[root@area51 ~]# nslookup 192.168.2.86
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can't find 86.2.168.192.in-addr.arpa.: NXDOMAIN
[root@area51 ~]# nslookup lion.urfu
nslookup: convert UTF-8 textname to IDN encoding: label length reduced to 0 or exceeded 63 bytesПодскажите как можно реализовать динамическое обновление dns windows-клиентами (они кажется должны передавать имя компьютера?). В перспективах есть желание поднять маленький домен на самба, а может быть и не домен, а просто обозреватель сети с шарами для пользователей (с разрешением имен через dns, wins) и это было бы очень кстати. Но вот пока никак не дается этот ddns. Буду признателен за любую помощь. =)
Contacts: