Criando seu próprio DNS server


Se ainda não instalou instale o BIND DNS server:
sudo aptitude update
sudo aptitude install bind9

Atualize o arquivo de configuração /etc/bind/named.conf.options
sudo nano /etc/bind/named.conf.options

Tire os comentários da seção forwarders e atualize para seu servidor de DNS externo.

Exemplo:
forwarders {
xxx.xxx.xxx.xxx;
xxx.xxx.xxx.xxx;
};
No meu caso 201.6.0.112 e 201.6.0.108

Altere o arquivo de DNS das outras máquina em sua LAN:
sudo nano /etc/resolv.conf

Adicionando nameserver xxx.xxx.xxx.xxx
No meu caso o servidor é 192.168.1.10

Reinicie o servidor de DNS:
sudo /etc/init.d/bind9 restart

E teste com um comando por exemplo: dig www.zaphu.com
Executando duas vezes voce verá que o Query time: deve ter baixado de 20ms para 6ms.

Se voce espera um alto trafego no seu servidor periodicamente faça uma limpeza de cache com o comando:
sudo rndc -s localhost flush

Ou então configure a opção max-cache-size

Interessante acrescentar os seguintes parâmetros:
//por cual IP escucha BIND
listen-on { 127.0.0.1; 192.168.1.10; };
//de que hosts permitira transferencias de zonas
allow-transfer { 192.168.1.1; };
//de que hosts permitira consultas BIND
max-cache-size 20M;

Maiores detalhes no link: http://www.zytrax.com/books/dns/ch6/ e link http://www.jesuslara.com.ve/blog/2005/03/30/instalacion-de-bind-dns-en-fedora-core-desde-fuente/

Ferramentas e comandos do BIND estão no link: http://www.bind9.net/manual/bind/9.3.2/Bv9ARM.ch03.html#id2547661

  • Criando um domínio Fictício
Vamos criar um domínio fictício chamado casa.lan
Teremos 4 hosts:
IP Address hostname role alias
192.168.1.10 bug web serverDNS/mail server www
192.168.1.12 spider workstation
192.168.1.11 ant workstation
192.168.1.1 gateway workstation
192.168.1.120 phone workstation

Vamos criar as zonas no arquivo de configuração
sudo nano /etc/bind/named.conf.local

zone "casa.lan" IN {
type master;
file "/etc/bind/zones/casa.lan.db";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/rev.1.168.192.in-addr.arpa";
};


Criaremos os arquivos necessários:
sudo mkdir /etc/bind/zones
sudo nano /etc/bind/zones/casa.lan.db
sudo nano /etc/bind/zones/rev.1.168.192.in-addr.arpa

Com as seguintes configurações abaixo
  • /etc/bind/zones/casa.lan.db
;
; Zone file for linux.bogus
;
; The full zone file
;
$TTL 3D
@ IN SOA bug.casa.lan. hostmaster.casa.lan. (
199802154 ; serial, todays date + todays serial #
8H ; refresh, seconds
2H ; retry, seconds
4W ; expire, seconds
1D ) ; minimum, seconds
;
TXT "Servidor Bug do dominio casa.lan"
NS bug ; Inet Address of name server
MX 10 bug ; Primary Mail Exchanger
; NS ns.friend.bogus.
; MX 20 mail.friend.bogus. ; Secondary Mail Exchanger

localhost A 127.0.0.1

gateway A 192.168.1.1
TXT "Roteador Linksys WRT54GC"

bug A 192.168.1.10
MX 10 bug
; MX 20 mail.friend.bogus.
www CNAME bug
pop3 CNAME bug
smtp CNAME bug
imap CNAME bug
mail CNAME bug
ftp CNAME bug
ns CNAME bug
dns CNAME bug

ant A 192.168.1.11
MX 10 bug
; MX 20 mail.friend.bogus.
TXT "Computador Ant"

spider A 192.168.1.12
MX 10 bug
; MX 20 mail.friend.bogus.
TXT "Computador Spider"

phone A 192.168.1.120
TXT "Gateway VoIP Linksys SPA3201"


  • /etc/bind/zones/rev.1.168.192.in-addr.arpa
$TTL 3D
@ IN SOA bug.casa.lan. hostmaster.casa.lan. (
199802154 ; Serial, todays date + todays serial
8H ; Refresh
2H ; Retry
4W ; Expire
1D) ; Minimum TTL
NS bug.casa.lan.

1 PTR gateway.casa.lan.
10 PTR bug.casa.lan.
11 PTR ant.casa.lan.
12 PTR spider.casa.lan.
120 PTR phone.casa.lan.


E depois reiniciaremos o BIND
sudo /etc/init.d/bind9 restart

Consulte os links:
http://www.linuxbsd.com.br/portal/?q=node/47 http://torradeira.net/configurando-o-servidor-dns-usando-o-bind-9/
http://www.isc.org/sw/bind/arm95/Bv9ARM.pdf
http://www.isc.org/sw/bind/arm94/Bv9ARM.pdf
http://www.isc.org/sw/bind/FAQ.php
http://www.debian.org/doc/manuals/network-administrator/ch-bind.html
http://www.faqs.org/docs/securing/chap21sec166.html
http://tldp.org/HOWTO/DNS-HOWTO-5.html#ss5.2
Comments