On (04/10/10 15:33), Paulino Kenji Sato wrote: > 2010/10/4 Caio Abreu Ferreira <[email protected]>: > > Prezado Paulino > > > > Estou utilizando a versão stable do debian. O problema que eu estou > > enfrentando é que no log de ambos os softwares não esta aparecendo nenhum > > erro. Tanto o DNS/Bind quando o DHCP estão funcionando corretamente. Fiz > > vários testes com o aplicativo dig e o DNS respondeu corretamente, inclusive > > os dados estão sendo replicados para o servidor secundário. Já o DHCP esta > > respondendo corretamente e atribuindo IP para uma estação debian. O problema > > é que as informações do DHCP não estão sendo transferidas paro DNS. > > > > Um outro ponto de diferente que eu tenho encontrado nos textos[1] que > > eu tenho encontrado na internet é que os softwares estão funcionando em > > computadores diferentes. Os softwares precisam estar instalados no mesmo > > computador ou podem operar em computadores separados? > > > > Nunca usei em computadores diferentes, mas acredito que seja indiferente. > Verifique se o arquivo de zona esta com permissão de escrita para o > usuário que roda o bind (usualmente o bind). > > Tanto no host onde esta rodando o bind como no dhcp, tente fazer uma > atualização de zona usando o nsupdate. > crie um arquivo contendo o seguinte: > server 127.0.0.1 > zone particula.local > update delete teste.particula.local. A > update add teste.particula.local. 86400 A 192.168.0.123 > send > zone 0.168.192.in-addr.arpa > update delete 123.0.168.192.in-addr.arpa PTR > update add 123.0.168.192.in-addr.arpa 86400 PTR teste.particula.local. > send > quit > > E chame o comando: > nsupdate -y nome_chave:a_chave arquivo_acima > E verifique com o host ou o dig que o host teste foi adicionado. > > > Mas, acho que achei o seu problema. > O > include "/etc/bind/rndc.key"; > > Tanto no named.conf como no dhcpd.conf > A sintaxe da declaração da chave entre os dois parece que não são > idênticas, ou include não funciona como esperado no dhcpd.conf. > No dhcpd.conf e assim: > key nome_da_chave { > algorithm HMAC-MD5; > secret a_chave; > } > > no named.conf e > key "nome_da_chave" { > algorithm hmac-md5; > secret "a_chave"; > }; > > Existe uma pequena diferença, que quase não da para ser notada. > As aspas. > > Ou talvez não, o que me lembro que um dia tentei fazer usando o > include, mas não funcionou. > Tente por a declaração da chave dentro do dhcpd.conf e sem usar as aspas. > > Paulino Kenji Sato > http://www.nobel.com.br
Prezado Paulino
Para tentar identificar o que pode estar errado, resolvi simplificar
a situação. Montei uma nova rede virtual (vmware) com somente trẽs
computadores, gateway/server (DNS/DHCP) e client. Até goara fiz o seguinte:
# dados tecnicos
servidor DNS/DHCP 192.168.0.5
client dhcp
# aptitude install bind9 dnsutils dhcp3-server (192.168.0.5)
# named.conf.local (master)
zone "particula.local" {
type master;
file "db.particula.local";
allow-update { key "rndc-key"; };
notify no;
};
zone "0.168.192.in-addr.arpa" {
type master;
file "db.0.168.192.in-addr.arpa";
allow-update { key "rndc-key"; };
notify no;
};
include "/etc/bind/rndc.key";
# db.particula.local (192.168.0.5)
; Start of Authority (SOA) record
$TTL 900
@ IN SOA server.particula.local. root.particula.local. (
3600; serial
3600; refresh, seconds
3600; retry, seconds
3600; expire, seconds
900 ); minimum, seconds
; Name Server (NS) records.
IN NS server.particula.local.
; Mail Exchange (MX) records.
IN MX 10 server.particula.local.
; Address (A) records. (real-names of machines)
IN A 192.168.0.5
server IN A 192.168.0.5
; Aliases in Canonical Name (CNAME) records...
www IN CNAME server
ftp IN CNAME server
proxy IN CNAME server
# db.0.168.192.in-addr.arpa (192.168.0.5)
; Start of Authority (SOA) record
$TTL 900
@ IN SOA server.particula.local. root.particula.local. (
3600; serial
3600; refresh, seconds
3600; retry, seconds
3600; expire, seconds
900 ); minimum, seconds
; Name Server (NS) records.
IN NS server.particula.local.
; Addresses point to canonical names (PTR) for reverse lookups
5 IN PTR server.particula.local.
# /etc/dhcp3/dhcpd.conf (server)
# Basic stuff to name the server and switch on updating
server-identifier 192.168.0.5;
ddns-updates on;
ddns-update-style interim;
ddns-domainname "particula.local.";
ddns-rev-domainname "in-addr.arpa.";
ignore client-updates;
# This is the key so that DHCP can authenticate it's self to BIND9
include "/etc/bind/rndc.key";
# Normal DHCP stuff
option domain-name "particula.local";
option domain-name-servers 192.168.0.5;
default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.200;
option routers 192.168.0.2;
option broadcast-address 192.168.0.255;
allow unknown-clients;
zone 0.168.192.in-addr.arpa. {
primary 192.168.0.5;
key "rndc-key";
}
zone particula.local. {
primary 192.168.0.5;
key "rndc-key";
}
}
Fiz o teste com o aplicativo nsupdate mas infelizmente não deu certo.
server:~# nsupdate
> server 127.0.0.1
> zone particula.local
> update delete teste.particula.local. A
> update add teste.particula.local. 86400 A 192.168.0.123
> send
update failed: REFUSED
> quit
server:~# nsupdate
> server 192.168.0.5
> zone particula.local
> update delete teste.particula.local. A
> update add teste.particula.local. 86400 A 192.168.0.123
> send
update failed: REFUSED
> quit
Dando uma olhada no arquivo "/var/log/syslog" encontrei a seguinte
informação.
Oct 7 07:30:40 server dhcpd: Internet Systems Consortium DHCP Server V3.1.1
Oct 7 07:30:40 server dhcpd: Copyright 2004-2008 Internet Systems
Consortium.
Oct 7 07:30:40 server dhcpd: All rights reserved.
Oct 7 07:30:40 server dhcpd: For info, please visit
http://www.isc.org/sw/dhcp/
Oct 7 07:30:40 server dhcpd: Internet Systems Consortium DHCP Server V3.1.1
Oct 7 07:30:40 server dhcpd: Copyright 2004-2008 Internet Systems
Consortium.
Oct 7 07:30:40 server dhcpd: All rights reserved.
Oct 7 07:30:40 server dhcpd: For info, please visit
http://www.isc.org/sw/dhcp/
Oct 7 07:30:40 server dhcpd: Wrote 1 leases to leases file.
Oct 7 07:30:43 server /usr/sbin/cron[2532]: (CRON) INFO (pidfile fd = 3)
Oct 7 07:30:43 server /usr/sbin/cron[2533]: (CRON) STARTUP (fork ok)
Oct 7 07:30:43 server /usr/sbin/cron[2533]: (CRON) INFO (Running @reboot jobs)
Oct 7 07:30:49 server kernel: [ 18.987324] eth0: no IPv6 routers present
Oct 7 07:31:12 server dhcpd: DHCPDISCOVER from 00:0c:29:11:c8:59
(client.particula.loca) via eth0
Oct 7 07:31:13 server dhcpd: DHCPOFFER on 192.168.0.100 to 00:0c:29:11:c8:59
(client.particula.loca) via eth0
Oct 7 07:31:13 server named[2488]: client 192.168.0.5#33048: request has
invalid signature: TSIG rndc-key: tsig verify failure (BADKEY)
Oct 7 07:31:13 server dhcpd: Unable to add forward map from
client.particula.loca.particula.local. to 192.168.0.100: bad DNS key
Oct 7 07:31:13 server dhcpd: DHCPREQUEST for 192.168.0.100 (192.168.0.5) from
00:0c:29:11:c8:59 (client.particula.loca) via eth0
Oct 7 07:31:13 server dhcpd: DHCPACK on 192.168.0.100 to 00:0c:29:11:c8:59
(client.particula.loca) via eth0
Oct 7 07:35:42 server named[2488]: client 127.0.0.1#18177: update
'particula.local/IN' denied
Oct 7 07:36:28 server named[2488]: client 192.168.0.5#19344: update
'particula.local/IN' denied
Aparentemente a chave de criptografia, arquivo "/etc/bind/rndc.key"
esta com algum problema. O arquivo rndc.key foi gerado durante a instalação
do bind9 no servidor.
# cat /etc/bind/rndc.key
key "rndc-key" {
algorithm hmac-md5;
secret "73/tmttfEPSjLn0dhFCgig==";
};
--
.''`. Caio Abreu Ferreira
: :' : [email protected]
`. `'` Debian User
`- Key fingerprint = 97F8 61AC 605F 8A8B 3BA1 D479 8C9A 52E8 6478 601F
signature.asc
Description: Digital signature

