BrbOS/Manual/DNS Reverso

De BrByte Wiki
< BrbOS‎ | Manual


Neste tópico, iremos demonstrar como implementar o DNS Reverso em sua rede e também como configura-lo junto ao http://registro.br.

Tendo em vista que o BrbOS já esteja instalado na sua rede, continue a ler o tópico.

Caso esteja tendo dificuldade na instalação do servidor BrbOS, siga o manual no link: https://wiki.brbyte.com/wiki/BrbOS/Manual/Instalação_do_Sistema

Como funciona o reverso

O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 177.52.72.3 para brbos.domain.com.

O reverso funciona com a declaração de Zonas para cada /24 do seu bloco de ASN.

Assim, caso tenha o bloco 177.52.72.0/21, deverá ser criado uma zona de DNS para cada /24 do bloco, ou seja

  • 177.52.72.0/21
    • 177.52.72.0/22
      • 177.52.72.0/23
        • 177.52.72.0/24 tera sua zona 72.52.177.in-addr.arpa.
        • 177.52.73.0/24 tera sua zona 73.52.177.in-addr.arpa.
      • 177.52.74.0/23
        • 177.52.74.0/24 tera sua zona 74.52.177.in-addr.arpa.
        • 177.52.75.0/24 tera sua zona 75.52.177.in-addr.arpa.
    • 177.52.76.0/22
      • 177.52.76.0/23
        • 177.52.76.0/24 tera sua zona 76.52.177.in-addr.arpa.
        • 177.52.77.0/24 tera sua zona 77.52.177.in-addr.arpa.
      • 177.52.78.0/23
        • 177.52.78.0/24 tera sua zona 78.52.177.in-addr.arpa.
        • 177.52.79.0/24 tera sua zona 79.52.177.in-addr.arpa.

Conceitos Básicos

  • O DNS reverso resolve 177.52.72.3 para brbos.domain.com (um endereço IP para um nome de servidor).
  • O caminho de uma consulta típica de DNS reverso:
    • Resolver de DNS
      • ⇒ root servers
        • ⇒ LACNIC (Orgão que distribui endereços IP na América Latina e Caribe)
          • ⇒ registro.br (responsável pela distribuição de IPs no Brasil)
            • ⇒ Provedor de acesso ou de meio físico
              • ⇒ Servidores de DNS do usuário do IP.
  • Quem quer que proveja os seus endereços IP (normalmente o seu provedor) DEVE efetuar um dos 2 procedimentos a seguir:
  1. configurar seus apontamentos de DNS reverso nos servidores deles, ou
  2. delegar a autoridade dos seus apontamentos de DNS reverso para os seus servidores de DNS.
  • Apontamentos de DNS reverso são feitos com nomes que são o endereço IP invertido com um “.in-addr.arpa” adicionado no final – por exemplo, “3.2.52.177.in-addr.arpa.”.
  • Apontamentos de DNS reverso são configurados com registros PTR (enquanto que no DNS direto usa-se registros A), feitos dessa forma:
    • registro reverso seria algo como 3.2.52.177.in-addr.arpa. INT PTR brbos.domain.com.
    • enquanto que no DNS diretos ou autoritativos, seriam assim: brbos.domain.com. IN A 177.52.72.3
  • Todos os servidores na Internet devem ter um apontamento de DNS reverso (veja RFC 1912, seção 2.1).
  • Servidores de correio eletrônico, sem DNS reverso, terão dificuldades para entregar e-mails para alguns grandes provedores.


DNS ACL

O DNS ACL (Access Control List) como diz o próprio nome é a lista de controle de acesso. Por padrão o BrbOS aceita (allow) os rages de IP para redes locais conforme RFC 1918 e negação para demais endereços devido a entrada "0.0.0.0/0 deny" (negação) Para que o reverso responda apenas as zonas locais devemos trocar a entrada "0.0.0.0/0 deny" para "0.0.0.0/0 deny_non_local" (negar não locais)

Adicione também o AS do provedor, ou seja, a range de IP publico para que os clientes e dispositivos com estes endereços também sejam aceitos como clientes do BrbOS.


Brbos manual dns reverso acl.png


  • 1 - App DNS ACL
  • 2 - Editar os ranges "0.0.0.0/0" (IPv4) e "::/0" (IPv6)
  • 3 - Ação - DENY_NON_LOCAL


Para IPv6

  •  ::/0 - deny_non_local

Adicionar Zona Reversa

Tendo com exemplo o bloco 177.52.72.0/24, abra o aplicativo DNS Zone

Clique no botão novo (Btn-novo.png).

FreeBRS APP DNS Zone ADD Rev.png
  • Nome: Informe o reverso do bloco/24 que deseja declarar, seguindo o exemplo seria 72.52.177.in-addr.arpa.
  • Tipo: Tipo da Zona de DNS, ela deverá ser informada pelo tipo estático.


Informe os dados necessários e clique em salvar (Btn-salvar.png).

Caso queria saber mais informações das zonas, acesse BrbOS/Aplicativos/DNS_Zone#Informações das zonas detalhadas.


Adicionar SOA

Após ter uma zona de reveso criada, você precisará ter um SOA (Start of authority), que é o principal registro, o registro que define mutas das características de uma zona. Contém o nome da zona e o nome do servidor que é a autoridade para a referida zona, ou seja, o servidor DNS onde está a zona foi criada originalmente. Contém também a definição de outras características básicas da zona. É sempre o primeiro registro da zona, pois é criado durante a criação da zona. Define características tais como o número serial da zona (que é um indicativo se houve ou não alterações na zona. Este número é utilizado para controlar a replicação entre a zona primária e as zonas secundárias), o valor do TTL para os demais registros da zona e assim por diante.

Para adicionar um registro de SOA, clique no botão novo (Btn-novo.png).

FreeBRS APP DNS Zone ADD RevSOA.png


  • FQDN: nome do registro de DNS a ser cadastrado, para o reverso o nome é constituido do endereço IP ao contrário seguido de .in-addr.arpa., nesse exemplo 72.52.177.in-addr.arpa.
  • TTL: Time to Live, é o tempo que os servidores de cache irão manter armazenada essa zona, quanto maior o valor, mais tempo será necessário para os servidores sincronizarem as alterações efetuadas na zona de DNS.
  • Tipo: É o tipo do registro na zona de DNS, nesse exemplo informe o tipo SOA
  • Valor: é a informação do registro a ser cadastrado, no caso do exemplo e para o SOA, os valores são '[name server] [e-mail] [serial] [refresh] [retry] [expiry] [minimum], seguindo o exemplo o valor poderia ser: brbos.domain.com. softov.brbyte.com. 2016111203 3600 800 86400 30, aonde:
    • name server: O dominio do servidor de dns, seguido de ponto;
    • e-mail do contato de DNS, esse valor o @ é trocado por . (ponto) e com outro ponto no final, no exemplo softov@brbyte.com, se torna softov.brbyte.com.;
    • serial: O número de revisão do arquivo de zona. Esse número aumenta cada vez que um record é alterado na zona;
    • refresh: O tempo, em segundos, que um servidor DNS secundário espera antes de consultar sua origem da zona para tentar renová-la;
    • retry: O tempo, em segundos, que um servidor secundário espera antes de tentar novamente uma transferência de zona falha;
    • expire: O tempo, em segundos, antes que o servidor secundário pare de responder às consultas depois de transcorrido um intervalo de atualização no qual a zona não foi renovada ou atualizada;
    • minimum: O menor tempo de vida (TTL) da zona e o intervalo máximo para armazenar respostas negativas em cache.


Informe os dados necessários, e clique em salvar (Btn-salvar.png).


Adicionar PTR

Após a criação do SOA, você deverá criar um registro de PTR (Pointer), que é utilizado em zonas reversas, para fazer o mapeamento reverso, ou seja, o mapeamento de um número IP para um nome.

Para esse exemplo, iremos criar um PTR para o IP 177.52.72.55 e 177.52.72.56.

Assim, os registro seriam algo como:

  • 55.72.52.177.in-addr.arpa. 300 IN PTR client-55.cgr.brbyte.com.
  • 56.72.52.177.in-addr.arpa. 300 IN PTR client-56.cgr.brbyte.com.
FreeBRS APP DNS Zone ADD RevPTR.png


Teste DNS Linux e Windows

Para realizar teste, em outra máquina podemos realizar as consultas de teste utilizando o IP do BrbOS como servidor de resolução.

  • Em sistemas LINUX OU UNIX utilize o comando "host <domínio> <IP servidor DNS>"
  • No Window o "nslookup <domínio> <IP servidor DNS>"


- EXEMPLO de consulta do reverso dos IPs 177.52.72.55 e 177.52.72.56, usando o BrbOS no IP 177.52.72.3 como servidor e um FreeBSD como cliente.

A consulta deverá retornar algo similar a imagem a seguir:

FreeBRS APP DNS Zone ADD RevCheck.png
Brbos reverso nslookup.png


Adicionar PTR em Lote

Como cada /24 é constituido de 256 IPs (0 até 255), existe a possibilidade de criar os 256 registros automaticamente, para isso clique na opção gerar (Btn-gerar.png).

Essa opção apresenta alguns campos a mais que o simples cadastro de um registro e alguns campos passam a ter valor dinâmico antes da inserção. Assim, para seguir o exemplo do /24 temos que criar uma zona para cada IP que vai de 177.52.72.0 até 177.52.72.255. Ou seja, para cada entrada de reverso de 0.72.52.177.in-addr.arpa. até 255.72.52.177.in-addr.arpa.

  • IP Begin: começo do range de IPS que deseja utilizar como base para a criação
  • IP End: final do range de IPS que deseja utilizar como base para a criação
  • FQDN: na geração o sistema passa a ter 4 campos, são eles $1, $2, $3 e $4, que são respectivamente cada parte do IP, para geração do reverso informar $4.$3.$2.$1.in-addr.arpa
  • Valor: da mesma forma que o FQDN o valor passa a ter os 4 campos ($1 a $4), sendo trocados pela parte respectiva do IP a ser processado, nesse caso você poderá informar o valor que mais se adequará ao modo que deseja que seus reversos sejam apresentados e ao dominio que o reverso aponta.
FreeBRS APP DNS Zone ADD RevGenerate.png



Reverso IPv6

Para IPv6 é necessário efetuar os cadastros de PTR manualmente, deve-se criar uma zona estática contendo o reverso do seu bloco, criar um registro SOA e então o reverso de acordo com o IP que deseja.

As informações são as mesmas do IPv4, mas devem ser feitas manualmente para IPv6.

As diferenças:

  • IPv4 exige que zona seja /24, enquanto o IPv6 exite que ela seja /48
  • IPv4 o registro PTR é .in-addr.arpa.
  • IPv6 o registro PTR é .ip6.arpa.


Exemplo ZONA:

   0.0.0.0.0.8.b.0.4.0.8.2.ip6.arpa. static

Exemplo REGISTRO:

   2.0.0.0.d.d.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.0.4.0.8.2.ip6.arpa. IN PTR fbrs1.brbyte.com.

O reverso do IPv6 não é feito para todos os IPs, mesmo por que o sistema precisaria de muita memória e processamento para armazenar todos os registros.

O Ipv6 não necessita de todos os registros, somente do ns1 e ns2 para o seu /32

Nosso bloco, por exemplo, 2804:b80::/32

Criamos uma zona para ele.

   0.8.b.0.4.0.8.2.ip6.arpa. static

E um registro SOA

Brbos reverso ipv6 soa.png


  • Necessário estar cadastrado o ACL para permitir requisições de zonas.
   ::/0 - deny_non_local
  • Os registros precisam ser do tamanho do seu bloco.

Sobre a delegação, deve-se entrar no registro.br e delegar o domínio.

Para fazer o reverso, do IPv4 e do IPv6, é necessário ter dois servidores, respondendo por IPs diferentes, não pode ser NAT, ou seja com IPs públicos.

É necessário um domínio apontando para cada servidor. Ex: ns1.provedor.com.br e ns2.provedor.com.br

Para o IPv4 é necessário declarar o reverso de cada bloco /24. Para o IPv6 é necessario declarar o reverso de cada bloco /32.

Assim, cada servidor tem que ter as mesmas configurações.

Após isso, deve-se ir ao registro.br, em numeração de delegar o bloco para o domínio dos servidores aonde o reverso esta configurado.


Cadastro no Registro.br

Após efetuar a declaração do reverso e ter seu autoritativo funcionando, você deverá delegar seu servidor no http://registro.br.

No seu servidor, você terá que ter algo similar a imagem a seguir, com as zonas de reverso e autoritativo (caso utilize) devidamente cadastradas.

FreeBRS APP DNS Zone FreeBRS2.png


Tendo o sistema configurado, acesse o registro.br e vá até a opção Númeração e selecione o bloco do seu ASN que deseja delegar.

FreeBRS APP DNS Zone Rev RegistroBR Num.png


Vá até a opção delega e informe o dominio dos servidores que irá utilizar para delegação do reverso.

FreeBRS APP DNS Zone Rev RegistroBR DelForm.png


Se estiver tudo OK, você verá uma tela com informações similar a imagem.

FreeBRS APP DNS Zone Rev RegistroBR DelOK.png


Agora é só esperar a delegação de DNS que pode demorar entre minutos e algumas tantas horas dependendo do servidor.


Servidores Slave

Os servidores secundários (slaves) são cópias exatas, sem alteração de registros, tento todos os registros exatamente iguais incluindo os registros SOA e seu serial devem ser exatamente iguais.


Mini-Curso Reverso

Video


Reverso Local

Utiliza-se com muita frequencia a configuração dos registros de reverso (PTR) dos enderços (IP) "locais", para o traceroute, reconhecendo com mais facilidade os dispositivos da rede.

Como podemos ver na imagem em exemplo os endereços utilizados na rede local conforme RFC 1918 temos a esquerda o "traceroute" do Windows (tracert) sem as configurações de reverso para a rede local e a direita o resultado do "traceroute" com o "reverso local" dos dispositivos, sendo o 192.168.144.1 um Switch Cisco que encontra-se no setor de "suporte", saindo da sala do suporte este se conecta a um Mikrotik com endereço 10.5.5.6 sendo o MK-Principal responsável por todo o escritório, este MK por sua vez conecta-se ao dispositivo de IP .1 do back-bone (192.168.190.1) nomeado no verso como backbone-1.dominio.com.br.


Brbos manual dns reverso tracert.png


Video