Hoje vou mostrar o passo a passo para instalação e configuração de um servidor DNS.
Um servidor DNS “resolve” endereços como www.gnulinuxbrasil.com.br e direciona para o IP pertencente á este dominio.
Se você não sabe como funciona DNS imagine ter que memorizar Ips de todos os sites que você acessa? Difícil não é mesmo? Para isso usamos o DNS, digitamos o endereço do site pelo seu “nome” o servidor DNS vai até uma tabela e verificar o Ip que está atribuído a este “nome” e então busca a informação do site desejado.
Por quê utilizar um servidor DNS local?
Agora que contextualizamos sua utilidade vamos ao que interessa!.
1. Defina um ip fixo para sua maquina.
2. Edite o arquivo: sudo vi /etc/hosts e inclua ipservidor.nomedominio.com
no meu caso:
192.168.0.50 orangepiwin.gnulbr.com
3. Instale o bind9:
sudo apt update; sudo apt install bind9 -y
4. Criar as zonas de pesquisa, edite o arquivo sudo vi /etc/bind/named.conf.local e adicione:
//Zona de pesquisa direta zone "gnulbr.com" { type master; file "/etc/bind/db.gnulbr.com"; } //zona de pesquisa reversa zone "gnulbr.com" { type master; file "/etc/bind/db.reverso"; } Altere gnulbr.com para o seu dominio criado no passo 2.
5. Criar os arquivos incluídos no sudo vi /etc/bind/named.conf.local para isso vou copiar o db.local (que já vem por padrão no bind) para outro arquivo com o nome db.gnulbr.com:
cp /etc/bind/db.local /etc/bind/db.gnulbr.com cp /etc/bind/db.local /etc/bind/db.reverso
6. Editar o arquivo criado: sudo vi /etc/bind/db.gnulbr.com e deixar desta maneira:
; ; BIND data file for local loopback interface ; $TTL 604800 @ IN SOA orangepiwin.gnulbr.com. root.gnulbr.com. ( 100 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; gnulbr.com. IN NS gnulbr.com. gnulbr.com. IN A 192.168.0.50 @ IN A 127.0.0.1 @ IN AAAA ::1
Obs. altere orangepiwin = nome do seu host, gnulbr.com = nome do seu domínio, IP = 192.168.0.50 para o seu IP (passo 2).
7. Editar o arquivo criado: sudo vi /etc/bind/db.reverso e deixar desta maneira:
; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA orangepiwin.gnulbr.com. root.gnulbr.com. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; IN NS orangepiwin. 50 IN PTR orangepiwin.
8. Reinicie o serviço e veja se retorna algum erro, caso sim revise as configurações pois deve haver algo que “passou batido”:
sudo service bind9 restart ou /etc/init.d/bind9 restart.
9. Outra maneira de testar é: named-checkzone gnulbr.com /etc/bind/db.gnulbr.com a resposta deve ser:
zone gnulbr.com/IN: loaded serial 100 OK named-checkzone gnulbr.com /etc/bind/db.reverso a resposta deve ser: zone gnulbr.com/IN: loaded serial 1 OK
Qualquer dúvida deixe nos comentários ou entre em contato através das redes sociais:
Link Facebook: https://www.facebook.com/gnulinuxbr
Link WhatsApp: https://chat.whatsapp.com/LYHbESy75Q0GiORiexXKF4
Link Telegram: https://t.me/gnulinux_brasil
YouTube: https://www.youtube.com/channel/UCwyFWDqE0v7SwpZenjmzxYQ