Implementando views no DNS.

Exemplo utilizado:

-- Uma view para consulta externa e outra para consulta interna.

  1. Criar o diretório local/ dentro de /var/lib/named/var/named:
    mkdir /var/lib/named/var/named/local
    
    Os arquivos de configuração das zonas privadas (consulta interna) ficarão nesta pasta. Já os arquivos das zonas públicas (consulta externa) estão situados em /var/lib/named/var/named/master. Este diretório é criado durante a instalação do BIND.
  2. Editar o arquivo /etc/named.conf:

    Inserir os seguintes trechos na configuração:

    view "private" IN {
      match-clients { 192.168.2.0/24; 127.0.0.1; };
      zone-statistics yes;
      recursion yes;
    };
    
    view "public" IN {
      match-clients { any; };
      zone-statistics yes;
      recursion yes;
    };
    

    O parâmetro match-clients indica quais IP's terão respostas das views. Neste exemplo, a view private irá responder para a rede 192.168.2.0/24 e para o IP 127.0.0.1. Já a view public irá responder para todos os outros IP's.

    Sendo assim, todas as zonas DNS que forem configuradas na view private estarão valendo para a faixa de IP especificada no parâmetro match-clients. As zonas que forem configuradas na view public valerão para os IP's restantes.

  3. Alterar o arquivo /etc/named.conf, inserindo as zonas DNS na configuração das views de acordo com o desejado. Exemplo:

    View private:

    view "private" IN {
      match-clients { 192.168.2.0/24; 127.0.0.1; };
      zone-statistics yes;
      recursion yes;
    
    zone "teste1.com.br" {
            type master;
            file "local/teste1.com.br";
            };
    
    zone "teste2.com.br" {
            type master;
            file "local/teste2.com.br";
            };
    };
    

    View public:

    view "private" IN {
      match-clients { any; };
      zone-statistics yes;
      recursion yes;
    
    zone "teste1.com.br" {
            type master;
            file "master/teste1.com.br";
            };
    
    zone "teste2.com.br" {
            type master;
            file "master/teste2.com.br";
            };
    };
    
    Como pode ser visto nas configurações acima, a view private utiliza arquivos de configuração de zona no diretório local/, já a view public utiliza o diretório master/ para guardar os arquivos.
  4. Reiniciar o DNS
IP
3.237.16.210