Servidor DNS com Bind9: não é possível resolver registros DNS em arquivos de zona direta e reversa

2

Olá a todos :) Eu tentei configurar meu próprio servidor DNS com bind9, mas embora eu tenha tentado vários tutoriais, ainda recebo o mesmo erro. O início bind9 funciona bem, mas quando eu uso nslookup ou dig contra host1 (que existe no arquivo de zona direta) ele nunca consegue resolver o endereço IP. Eu tenho o mesmo problema com o arquivo de zona reversa, usando o endereço IP como o argumento em vez de host1 . Se eu procurar, por exemplo, microsoft.com, receberei uma resposta.

Exemplo:

nslookup host1.dirks.crtn
;; Got SERVFAIL reply from 192.168.56.2, trying next server
;; Got SERVFAIL reply from 192.168.56.2, trying next server
server 127.0.0.1
address 127.0.0.1#53

** server can't fint host1.dirks.crtn.dirks.crtn: SERVFAIL

Eu também tentei host1 :

nslookup host1
;; Got SERVFAIL reply from 192.168.56.2, trying next server 
server: 192.168.56.2
address 192.168.56.2#53

** server can't find host1: NXDOMAIN

Com microsoft.com:

nslookup microsoft.com
server: 192.168.56.2
address: 192.168.56.2#53

Non-authoritative answer:
name: microsoft.com
address: 134.170.188.221
name: microsoft.com
address 134.170.185.46

Meus arquivos atuais:

Arquivo /etc/bind/named.conf.options:

options {
directory "/var/cache/bind";
recursion yes;

  forwarders {
  8.8.8.8;
  8.8.4.4;
  };
  allow-query {
  192.168.56.0/24;
  };
  allow-transfer {
  192.168.56.0/24;
  };
};

Arquivo /etc/bind/named.conf.local:

zone "dirks.crtn" {
type master;
file "etc/bind/zones/dirks.crtn.db";
};

zone "56.168.192.in-addr.arpa" {
type master;
file "etc/bind/zones/rev.56.168.192.in-addr.arpa";
};

Arquivo de zona de encaminhamento - /etc/bind/zones/dirks.crtn.db:

$ORIGIN .
$TTL 907200          ; 1 week 3 days 12 hours

dirks.crtn           IN SOA filtjener.dirks.crtn. webmaster.dirks.crtn. (
       1263527838    ; serial
       10800         ; refresh
       3600          ; retry (1 hour)
       604800        ; expire (1 week)
       38400         ; minimum (10 hours 40 minutes)
)
; name server - NS records
        NS   filtjener.dirks.crtn.
; name server - A records
filtjener.dirks.crtn.      A    192.168.56.2

$ORIGIN dirks.crtn.
host1   A   192.168.56.21
host2   A   192.168.56.22
host3   A   192.168.56.23

Arquivo de zona reversa - /etc/bind/zones/rev.56.168.192.in-addr.arpa:

$TTL 907200     ; 1 week 3 days 12 hours

@ IN SOA filtjener.dirks.crtn. webmaster.dirks.crtn. (
     1263187356    ; serial
     10800         ; refresh (3 hours)
     3600          ; retry (1 hour)
     60400         ; expire (1 week)
     38400         ; minimum (10 hours 40 minutes)
)

         NS filtjener.dirks.crtn.
; PTR records
21      PTR      host1.dirks.crtn.
22      PTR      host2.dirks.crtn.
23      PTR      host3.dirks.crtn.

Arquivo /etc/resolvconf/resolv.conf.d/head:

search dirks.crtn
nameserver 192.168.56.2

Arquivo / etc / network / interfaces:

auto lo
iface eth1 inet static
address 192.168.56.2
netmask 255.255.255.0

Eu verifiquei os arquivos:

sudo named-checkconf

sudo named-chekckzone rev.56.168.192.in-addr.arpa /etc/bind/zones/rev.56.168.192.in-addr.arpa
zone rev.56.168.192.in-addr.arpa/IN: loaded serial 1263187356
OK

sudo named-checkzone dirks.crtn /etc/bind/zones/dirks.crtn.db
zone dirks.crtn/IN: loaded serial 1263527838
OK

e reiniciou o bind9:

sudo /etc/init.d/bind9 restart
* Stopping domain name service... bind9 [ok]
waiting for pid 2765 to die

* starting domain name service... bind9 [ok]

Estou usando o VirtualBox e, como não consegui copiar e colar do VirtualBox, pode haver pequenos erros nos arquivos.

Alguém sabe o que eu posso estar fazendo errado aqui? :) Agradeço qualquer ajuda:)

    
por Madde 15.04.2015 / 23:18

2 respostas

1

Portanto, o encaminhamento está funcionando bem. As coisas nos seus arquivos de configuração parecem um pouco estranhas para mim. Observe que nunca consegui fazer as coisas funcionarem com $ORIGIN . Tenho certeza que de alguma forma isso funciona, só não para mim.

Para dirks.crtn.db try:

$TTL 38400
@      IN SOA filtjener.dirks.crtn. webmaster.dirks.crtn. (
       1263527838    ; serial
       10800         ; refresh
       3600          ; retry
       604800        ; expire
       38400 )       ; Negative Cache TTL
       IN  A  192.168.56.2
;
; name server - NS records
@      IN  NS   filtjener.dirks.crtn.
; name server - A records
filtjener IN   A    192.168.56.2

host1   IN A   192.168.56.21
host2   IN A   192.168.56.22
host3   IN A   192.168.56.23

Para rev.56.168.192.in-addr.arpa try:

$TTL 38400

@ IN SOA filtjener.dirks.crtn. webmaster.dirks.crtn. (
     1263187356    ; serial
     38400         ; refresh
     3600          ; retry 1 hour
     60400         ; expire 1 week
     38400 )       ; negative cache TTL
;
@    IN   NS    filtjener.dirks.crtn.
2    IN   PTR   filtjener.dirks.crtn.
21   IN   PTR   host1.dirks.crtn.
22   IN   PTR   host2.dirks.crtn.
23   IN   PTR   host3.dirks.crtn.

Você não precisa usar sudo com named-checkzone e observe que, para a verificação de zona reversa, o comando é:

named-checkzone 56.168.192.in-addr.arpa rev.56.168.192.in-addr.arpa

referência

    
por Doug Smythies 16.04.2015 / 00:37
1

Então eu finalmente encontrei a resposta para o meu próprio problema em /etc/bind/named.conf.local eu esqueci de adicionar "/" na frente de "etc".

do meu jeito:

zone "dirks.crtn" {
type master;
file "etc/bind/zones/dirks.crtn.db";
};

maneira correta:

zone "dirks.crtn" {
type master;
file "/etc/bind/zones/dirks.crtn.db";
};

Eu me sinto meio idiota, mas pelo menos sou capaz de resolver endereços e nomes de host.

    
por Madde 17.04.2015 / 01:26