Debian Lenny - DHCP3-server + Bind9 adicionando máquinas automaticamente

Este artigo destina-se àqueles que estão cansados dos erros e dificuldades encontradas ao tentar instalar os serviços DHCP e DNS integrados com atualização dinâmica nas tabelas. Esta documentação é destinada aos usuários de Debian Lenny, mas suas dicas podem esclarecer uma série de dúvidas dos que usam outras distribuições.

[ Hits: 60.710 ]

Por: Cleber Rocha em 20/08/2009 | Blog: http://ideiasetecnologias.blogspot.com.br/


Editando o arquivo named.conf.local



As configurações que faremos agora poderiam ser feitas diretamente no arquivo named.conf, mas por uma questão de organização da rede faremos as alterações no arquivo named.conf.local, que fora criado justamente para tratar de configurações locais do DNS. Veja:

# vi /etc/bind/named.conf.local

//
//Do any local configuration here
//

//Consider adding the 1918 zones here, if they are not used in your
//organization
//include "/etc/bind/zones.rfc1918";


include "/etc/bind/rndc.keys";

controls {
   inet 127.0.0.1 port 953
   allow {127.0.0.1;}
   keys {"rndc-key";};
};

zone "teste.local" {
   type master;
   file "/etc/bind/db.teste";
   allow-update { 192.168.0.1;key "rndc.key";};
};

zone "0.168.192.in-addr.arpa" {
   type master;
   file "/etc/bind/db.0.168.192.in-addr.arpa";
   allow-update { 192.168.0.1;key "rndc.key";};
};

Uma coisa curiosa que acontece se não colocarmos a tag controls é um erro de escrita dos arquivos .jnl, que são essenciais para a atualização dinâmica do DNS.

PS: Não esqueça de incluir os dados de seu DNS no arquivo hosts. Inclua a linha conforme o modelo abaixo:

192.168.0.1        server.teste.local     server

Mude apenas os dados para que se adaptem às suas necessidades.

Obs.: Optamos por alterar o arquivo hosts (/etc/hosts) e não o arquivo resolv.conf (/etc/resolv.conf), pois algumas vezes este arquivo é reescrito automaticamente quando temos conexões ADSL.

Página anterior     Próxima página

Páginas do artigo
   1. Entendendo a utilidade de integrar a rede
   2. Criando o arquivo dhcpd.conf
   3. Editando o arquivo named.conf.local
   4. Criando os arquivos db
   5. Criando um script simples de compartilhamento de internet
Outros artigos deste autor

Instalando scanner HP PSC 1500 series e outros no Debian Etch

Leitura recomendada

Servidor Messenger Openfire passo-a-passo no Linux

Membro da comunidade Viva O Linux na Espanha

Remastersys: Crie seu próprio Live-CD do Ubuntu Linux

O GIMP: Pincéis e texturas

PNL para Hacking

  
Comentários
[1] Comentário enviado por Credmann em 20/08/2009 - 07:04h

O mesmo pode ser feito no Ubuntu. Mas com uma única diferença: o AppArmour só permite que o Bind escreva em `/var/cache/bind/'. Assim sendo:

zone "teste.local" {
type master;
file "/var/cache/bind/db.teste";
allow-update { 192.168.0.1;key "rndc.key";};
};

zone "0.168.192.in-addr.arpa" {
type master;
file "/var/cache/bind/db.0.168.192.in-addr.arpa";
allow-update { 192.168.0.1;key "rndc.key";};
};

[2] Comentário enviado por acollucci em 20/08/2009 - 08:40h

Cara vou aplicar isso hoje, estava procurando uma conf desse tipo para o debian lenny, favoritos valeu!!!


[3] Comentário enviado por ErhnamDjinm em 20/08/2009 - 09:05h

Uma informação importante.
Caso trabalhem em redes classe A ou B, no arquivo de zona reversa do Bind, o IP deve aparecer todo invertido.
Por exemplo, ao invés de

$ORIGIN 0.168.192.in-addr.arpa.
1 PTR server.teste.local.

Deve ficar

$ORIGIN 168.192.in-addr.arpa.
1.0 PTR server.teste.local.

[4] Comentário enviado por cl2b2r em 20/08/2009 - 10:30h

E na rede "A" ficaria:

$ORIGIN 168.in-addr.arpa.
1.0.192 PTR server.teste.local.

ou

$ORIGIN 10.in-addr.arpa.
1.0.0 PTR server.teste.local.

Certo? Quase não trabalho com rede "A" ou "B". Então fica aí a pergunta.

[5] Comentário enviado por acollucci em 26/08/2009 - 11:33h

Opa so tem dois errinhos de digitação no dhcpd.conf o certo é rndc.key e nao o rdc.key na linha do include.

e no named.conf.local, e rndc.key e nao rndc.keys. Mas ja ajudou d+ valeu!!!!!

[6] Comentário enviado por cl2b2r em 26/08/2009 - 13:17h

Valeu pela correção! Este tipo de coisa pode realmente impedir o servidor de funcionar.

[7] Comentário enviado por renanpro03 em 07/06/2010 - 15:23h

Olá Amigo!
Mto bom seu tutorial, consegui configurar certinho como explicou mas estou tendo um erro quando mando o WEBMIN verificar as configurações do DNS
Ele retorna essa msg.

Os seguintes erros foram encontrados no arquivo /etc/bind/named.conf de configuração do BIND ou arquivos referenciados pela zona ..


/etc/bind/db.100.168.192.in-addr.arpa:3: ignoring out-of-zone data (1)
zone 100.168.192.in-addr.arpa/IN: has 0 SOA records
zone 100.168.192.in-addr.arpa/IN: has no NS records
zone 100.168.192.in-addr.arpa/IN: not loaded due to errors.
_default/100.168.192.in-addr.arpa/IN: bad zone

Já verifiquei o named.conf, creio que seja algum erro no db, mas conferi já varias vezes e esta tudo ok... alguem poderia me ajudar ?

[8] Comentário enviado por cl2b2r em 07/06/2010 - 20:21h

Renan
Te enviei um email que pode ajudar a solucionar o problema, tenta seguir o que está lá.

Boa sorte! ;)

[9] Comentário enviado por red_slack em 16/08/2010 - 23:05h

ta dando esse erro e não inicia o bind
Stoppong domain name service...: bind9rncd: connect failed: 127.0.0.1#953 connection refused.
Starting domain name service...: bind9 failed!

o failed bem vermelhão... o dhcp ta rodando normal o problema é só esse ai do bind, alguem poderia da uma dica do que seja...

cl2b2r, você tem o conteudo do email enviado para o Renan?? é possivel me enviar ele também?
ailton_fernandez@yahoo.com.br
Desde já obrigado

[10] Comentário enviado por acollucci em 17/08/2010 - 08:34h

oi red_slack

eu ja havia postado a solução para esse problema antes

veja

dhcpd.conf o certo é rndc.key e nao o rdc.key na linha do include.

e no named.conf.local, e rndc.key e nao rndc.keys.

tenta corrigir isso.

até!

[11] Comentário enviado por red_slack em 17/08/2010 - 09:47h

olá acollucci, tranquilo??

Me atentei só no include do dhcpd, não tinha visto esse ai do named um "s" a mais faz diferença e muito.. heheh muito obrigado cara

[12] Comentário enviado por acollucci em 17/08/2010 - 11:07h

tranquilo! Precisando e so falar!

[13] Comentário enviado por cl2b2r em 17/08/2010 - 19:21h

Oi red slack
Realmente o acollucci tem razão! Eu na hora de postar errei na digitação de uma letra e por isso está dando este erro. Faz a modificação que deverá funcionar. Depois posta o resultado aqui valeu? ;)

[14] Comentário enviado por red_slack em 17/08/2010 - 21:41h

Hoje foi um dia meio corrido para mim, não deu para testar todas as estações, mas em duas funcionaram normalmente, se funcionou em duas é para funcionar em todas, certo??? Um detalhe que queria fazer é que todas as estações ficassem configuradas em DHCP e pegasse o mesmo IP, não sei como nessas duas esta funcionando assim 192.168.10.1 e 192.168.10.41, reiniciei varias vezes e mesmo no limite dos 10 minutos (600s) renova o IP para o mesmo isso é otimo, isso via cabo, agora aqui em casa que uso via Wireless meu IP é o 10.249 e só pega o 10.4, não entendi isso, alguma explicação logica?

##############
###dhcpd.conf####
##############
ddns-update-style none;
ddns-updates on;
ddns-domainname "teste.local";
ddns-rev-domainname "10.168.192.in-addr.arpa";

include "/etc/bind/rndc.key";

zone teste {
primary 127.0.0.1;
key rndc-key;
}
zone 10.168.192.in-addr.arpa {
primary 127.0.0.1;
key rndc-key;
}

option domain-name "teste.local";
option domain-name-servers 208.67.222.222,208.67.220.220;

default-lease-time 600;
max-lease-time 7200;

authoritative;

log-facility local7;

subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.1 192.168.10.249;
option routers 192.168.10.250;
}
################################

###################
####named.conf.local####
###################
include "/etc/bind/rndc.key";

zone "teste.local" {
type master;
file "/etc/bind/db.teste";
allow-update { 192.168.10.250;key "rndc.key";};
};

zone "10.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.10.168.192.in-addr.arpa";
allow-update { 192.168.10.250;key "rndc.key";};
};
#################################

###########
###db.teste###
###########
$ORIGIN .
$TTL 43200 ; 12 hours
teste.local IN SOA server.teste.local. root.teste.local. (
1 ; serial
28800 ; refresh ( 8 hours )
14400 ; retry ( 4 hours )
3600000 ; expire ( 5 weeks 6 days 16 hours )
86400 ; minimum ( 1 day )
)
NS server.teste.local.
$ORIGIN teste.local.
server A 192.168.10.250
=======================================

##########################
####db.10.168.192.in-addr.arpa####
##########################
$ORIGIN .
$TTL 43200 ; 12 hours
1 IN SOA server.teste.local. root.teste.local. (
1 ; serial
28800 ; refresh ( 8 hours )
14400 ; retry ( 4 hours )
3600000 ; expire ( 5 weeks 6 days 16 hours )
86400 ; minimum ( 1 day )
)
NS server.teste.local.
$ORIGIN 10.168.192.in-addr.arpa.
1 PTR server.teste.local.
==================================================

No local desse TESTE não poderia colocar o nome da empresa??? isso aparece onde??? e como ficaria a sintatese????

Vocês já colocaram o NoCatAuth pra rodar??? já estou com ele instalado porém não configurado e to com umas duvidas, a primeira ele funciona com o Squid + Transparent???

Por enquanto é só depois vem mais .... hehheheh

[15] Comentário enviado por red_slack em 18/08/2010 - 09:44h

SIm, toda a rede cabeada pega o DHCP com o IP destinado a essa maquina, porém toda a rede wireless pega ip's aleatorios.
criei /etc/ethers com todos os IP/MAC, vocês poderia me ajudar com mais esse assunto?? Como uso exatamente o ARP?

[16] Comentário enviado por acollucci em 19/08/2010 - 09:02h

Opa

No lugar do TESTE, vc deve colocar o dominio da empresa, ou o nome dela etc..

Quanto a renovação de IP, o Windows (nao tenho essa informação sobre os demais SOs) tenta sempre renovar com o mesmo ip anterior, caso ele nao esteja disponivel ele pega outro.

Para fixar um IP no DHCP

use:

host NOME_DO_HOST {
hardware ethernet XX:XX:XX:XX:XX:XX; #MAC DO HOST
fixed-address XXX.XXX.XXX.XXX; #IP DO HOST
}

quanto as outras perguntas seja mais especifico, pq nao consegui entender rsrs. e tipo use o menu embaixo da pagina contribuir com pergunta, pq se vc fizer pergunta pelo artigo, so quem ja comentou ou quem estiver lendo o artigo na hora vai saber... A não ser claro que a pergunta seja referente ao artigo.

att,

[17] Comentário enviado por fagl22 em 20/09/2010 - 14:19h

Prezado cl2b2r,

Gostaria de sua ajuda por gentiliza para solicionar este impasse q estou tendo:

O Primeiro é esse logo abaixo informado pelo comando TAIL:

dhcpd self-test failed. Please fix the config file.
The error was:
Internet Systems Consortium DHCP Server V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Can't open /etc/bind/rndc.key: No such file or directory

E o Segundo é que esta dando esse erro quando eu comento da linha do include "/etc/bind/rndc.key" até antes do option domain-name "teste.local" pelo TAIL ele informa o seguinte:

Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Internet Systems Consortium DHCP Server V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Wrote 0 leases to leases file.

No subnet declaration for 1 (0.0.0.0).
** Ignoring requests on 1. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface 1 is attached. **

Agradeço desde já a sua atenção;
Atenciosamente,
Fábio

[18] Comentário enviado por R.S.P Andre em 28/11/2010 - 12:57h

Cara gostaria de lhe agradecer pelo excelente artigo.
Acabei de testar e implantar e esta 100%.

Meus parabéns pelo artigo que esta muito bem explicado.

ABS


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts