Servidor DNS usando BIND9 para LAN [DEBIAN]

2

Estou tentando configurar o servidor DNS da LAN usando o BIND9 no DEBIAN.

Contexto: máscara de rede: 255.255.0.0, IP da rede: 10.1.xxx.xxx
Sou proprietário de um domínio público example.com , gerenciado por NS externo e meu objetivo é gerenciar todos os subdomínios lan.example.com , por exemplo endereço node1.lan.example.com é um computador com IP 10.1.1.1

Configuração atual
/etc/bind/named.conf:

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones";

/etc/bind/named.conf.options:

options {
    directory "/var/cache/bind";
    forwarders {
        EXTERNAL_DNS_NAMESERVERS;
    };
    dnssec-validation auto;
    recursion yes;
    allow-query { 10/24; 127.0.0.1; };
    allow-recursion { 10/24; 127.0.0.1; };
    auth-nxdomain no;    # conform to RFC1035
    listen-on-v6 { any; };
    listen-on port 53 { 127.0.0.1; 10.1.0.2; } ;
};

/etc/bind/named.conf.local:

zone "lan.example.com" {
    type master ;
    allow-query { 10/24; 127.0.0.1; };
    file "/etc/bind/zone.lan.example.com" ;
};
zone "0.1.10.in-addr-arpa" {
    type master ;
    notify no ;
    allow-query { 10/24; 127.0.0.1; };
    file "/etc/bind/zone.0.1.10.in-addr.arpa" ;
} ; 
zone "2.1.10.in-addr-arpa" {
    type master ;
    notify no ;
    allow-query { 10/24; 127.0.0.1; };
    file "/etc/bind/zone.2.1.10.in-addr.arpa" ;
} ; 

/etc/bind/named.conf.default-zones:

zone "." {
    type hint;
    file "/etc/bind/db.root";
};
zone "localhost" {
    type master;
    file "/etc/bind/db.local";
};

zone "127.in-addr.arpa" {
    type master;
    file "/etc/bind/db.127";
};

zone "0.in-addr.arpa" {
    type master;
    file "/etc/bind/db.0";
};

zone "255.in-addr.arpa" {
    type master;
    file "/etc/bind/db.255";
};

/etc/bind/zone.lan.example.com:

; zone.lan.example.com BIND9 configuration file.
;
$TTL 604800
@   IN  SOA ns.lan.example.com. root.localhost. (
    201212041   ; serial no. (increment by +1 after every edit!)
    604800      ; refresh
    86400       ; retry after failure
    2419200 ; expired
    604800); TTL negative cache
;
@   IN  NS  ns.lan.example.com.
@   IN  A   127.0.0.1
;
; A records - Local machines and addresses:
; Servers:
router  IN  A   10.1.0.1    ; Router
ns      IN  A   10.1.0.2    ; NS Server
server  IN  A   10.1.0.2    ; Server
media   IN  A   10.1.0.3    ; Media Server

;
; Workstations:
node1   IN  A   10.1.1.1    ; node1

Problema:

client 10.1.0.1#50808: query (cache) 'a.root-servers.net/A/IN' denied
client 10.1.0.2#59641: query (cache) 'example.com/A/IN' denied
client MY_EXTERNAL_IP#37853: query 'server.lan.example.com/A/IN' denied
client MY_EXTERNAL_IP#56367: query (cache) 'superuser.com/A/IN' denied

Quando tento cavar server.lan.example.com no servidor de nomes ns.lan.example.com, tudo funciona, se eu tentar fazer isso de outra máquina, ele falhará.

Como posso resolver isso?

Obrigado antecipadamente

    
por petlack 24.03.2013 / 13:01

2 respostas

2

Você configurou o BIND para permitir consultas de 10/24 . Não tenho certeza se o BIND aceita isso como uma máscara de rede válida, mas se isso acontecer, expandirá para 10.0.0.0/24 ou 10.0.0.0/255.255.255.0 , que não corresponde a 10.1.0.1 . (Você mixou /24 com 10.0.0.0/8 ?)

De acordo com a sua nota máscara de rede: 255.255.0.0, IP da rede: 10.1.xxx.xxx , a rede correta deve ser 10.1.0.0/16 .

    
por 24.03.2013 / 13:11
0

A resposta anterior resolveu o problema para o apresentador inicial, mas para outro modo mais generalizado de fazer isso, você pode usar as ACLs internas "localnets" e "localhost", por exemplo:

allow-recursion { localnets; } ;

localhost é bastante autoexplicativo (exceto que, além de 127.0.0.1 ou :: 1, inclui o endereço configurado de cada interface de rede que o BIND está usando (portanto, 127.0.0.1 mais todos os endereços atribuídos ao host local).

localnets é baseado na configuração de suas interfaces locais e é derivado de seus endereços e máscaras de rede.

Se o seu servidor tem uma interface que não é no espaço de endereçamento privado, mas é roteavel pela Internet, então você provavelmente não quer usar "localnets"

    
por 02.05.2013 / 07:05