Nessa configuração do
DNS vou fazer apenas a resolução de nomes em IP. Primeiro vamos criar o arquivo de zona necessária, para isso execute o seguinte comando:
# cd /etc/bind/
Agora usando o editor de texto que lhe agrada, crie um arquivo. No exemplo vou usar
meudominio.db:
# vim meudominio.db
E o edite da seguinte forma:
$TTL 86400
@ IN SOA meudominio.com.br. root.meudominio.com.br. (
2009091301 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D) ; minimum
@ NS ns1.meudominio.com.br.
www IN A 127.0.1.1
Entendendo o arquivo:
SOA - este registro define o início de uma zona para a qual o seu servidor será autoridade. A "@" no primeiro campo da primeira linha define o nome da zona. O quarto campo lista, o hostname do seu servidor DNS, o quinto campo lista o e-mail da pessoa responsável pela administração deste domínio (no formato: login.seu-dominio.com.br). O registro
SOA lista 5 parâmetros entre parênteses. São eles, em sua respectiva ordem:
Serial number - deve-se incrementar esse número sempre que atualizar o arquivo em questão, pois os servidores secundários usam esse número para determinar se seu banco de dados está desatualizado em relação ao servidor primário, indicando que ele deve atualizar seus bancos de dados para esse domínio.
Refresh time - especifica a frequência que os servidores secundários irão consultar o servidor primário para determinar se tabelas atualizadas estão disponíveis.
Retry - especifica o tempo que um servidor deverá aguardar antes que uma atualização falha sofra nova tentativa.
Expiration time - especifica o tempo que pode decorrer até que o servidor secundário considere seus dados desatualizados, sem fazer uma atualização.
Minimum - especifica o tempo padrão para o timer TTL nos registros de recursos exportados.
NS - lista um servidor de nomes para este domínio.
A- mapeamento de nomes para endereços.
PTR - mapeamento reverso ou de endereços para nomes.
CNAME - nomes canônicos (para aliases).
HINFO - informações sobre o servidor.
MX - nome do servidor de e-mail para o domínio.
Nesta linha do arquivo acima:
www IN A 127.0.1.1
coloquei esse IP por rodar na máquina local.
Feito isso vamos configurar a zona responsável por esse arquivo. Essa zona sera configurada dentro de
/etc/bind/named.conf.local.
Obs. 1: em algumas distribuições essa configuração é feita dentro de
named.conf, também podendo ser feita no
Debian Lenny, mas por questões do novo padrão do Lenny o mesmo é configurado dentro de "local", podem notar que dentro de
named.conf é feito um "include" de
named.conf.local.
Obs. 2: sempre que forem editar um arquivo no sistema, faça um backup antes, se caso der algo errado é só voltar = ). Para isso entre dentro da pasta
/etc/bind e execute o seguinte comando:
# cp named.conf.local named.conf.local.bkp
Bem, voltando!
Edite o arquivo:
# vim /etc/bind/named.conf.local
Adicione a seguinte zona!
zone "meudominio.db" {
type master;
file "/etc/bind/meudominio.db";
};
Salve e saia do arquivo com um
:x.
Entendendo o arquivo:
type master - significa que é um DNS primário.
file - é o local onde configuramos o arquivo de zona.
Obs.: sigam a risca todos os ";" e as "," senão dará erro e o Bind ficará doido procurando onde está! =P
Feito isso basta colocarmos o domínio dentro do
resolv.conf. Execute o seguinte comando para:
# vim /etc/resolv.conf
Coloque o seguinte:
domain meudominio.db
search meudominio.db
nameserver 127.0.1.1
Salve e saia do arquivo.
Agora reinicie o serviço do
bind9:
# /etc/init.d/bind9 restart
Pronto, nosso DNS está configurado, agora basta criar os virtuais hosts no Apache. Então vamos lá, está quase acabando. = )