Primeiro, você precisa de um servidor DNS. BIND éumexemplodeservidoramplamenteusadoepadrão.
Abaixoestáumexemplopara:
- rededenominada
local.example.com
- comendereçosIP
192.168.0.0
- enetmask
255.255.255.0
(24bits)
Paraoservidor:
- chamado
ns1
- comonúmeroIP
192.168.0.1
Epara2servidoresDNSexternosde:
- 1.2.3.4
- 1.2.3.5
Altereessesvaloresdeacordocomsuaestruturaderede.
1.InstalaroBIND
sudoapt-getinstallbind9
2.Adicioneseudomíniolocal
NoarquivodeconfiguraçãoBINDsde/etc/named.conf.local
addconfigparaconsultasdenome(nomeparaonúmeroIP):
zone"local.example.com" {
type master;
file "/etc/bind/db.local.example.com";
allow-query { 192.168.0.0.0/24; 127.0.0.1; };
};
E para consultas inversas (números IP para nomes):
zone "0.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192.168.0";
allow-query { 192.168.0.0/24; 127.0.0.1; };
};
Crie dois arquivos de configuração para sua rede. Em /etc/bind/db.local.example.com
, coloque:
$TTL 604800
@ IN SOA local.example.com. hostmaster.example.com. (
1503281 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.local.example.com.
ns1 IN A 192.168.0.1
;
; Local computers
comp1 IN A 192.168.0.101
comp2 IN A 192.168.0.102
comp3 IN A 192.168.0.103
Em /etc/bind/db.192.168.0
put:
$TTL 604800
@ IN SOA v1.local.example.com. hostmaster.example.com. (
1503281 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.
1 IN PTR ns1.local.example.com.
; Local computers
101 IN PTR comp1.local.example.com.
102 IN PTR comp2.local.example.com.
103 IN PTR comp3.local.example.com.
Observe o parâmetro Serial
: ele pode conter qualquer número e deve ser alterado toda vez que você fizer alterações no seu arquivo de configuração. Neste exemplo, ele é construído a partir da data e do número exclusivo (YYMMDDN).
3. Resoluções externas
Seu servidor precisa resolver outras consultas, configurar servidores DNS externos em /etc/bind/named.conf.options
como "encaminhadores":
options {
forwarders {
1.2.3.4;
1.2.3.5;
};
[...]
}
4. Carregar configuração
Você pode recarregar a configuração por:
sudo service bind9 reload
Verifique /var/log/syslog
se não houver erros ao carregar suas novas configurações.
5. Uso
Agora você deve poder consultar seu servidor DNS em localhost
e em clientes de 192.168.0.0/24
network. Eles precisam ser configurados para usar este servidor ( 192.168.0.1
) e este nome de domínio ( local.example.com
) - por exemplo. com configuração DHCP ou estaticamente em /etc/network/interfaces
, assim:
auto eth0
iface eth0 inet static
address 192.168.0.101
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.1
dns-search local.example.com
Para testar seu DNS na máquina do cliente (antes de alternar permanentemente), você pode tentar:
host comp1 192.168.0.1