Nossa empresa controla um domínio chamado foobar.com
, que é usado para vários serviços públicos (por exemplo, www.foobar.com
direciona para o nosso site). O domínio tem registros DNS públicos em um serviço DNS.
Temos alguns dispositivos de rede internos que esperávamos atribuir nomes para o uso de subdomínios do foobar.com
TLD.
Como o Bind9 pode ser configurado como tal:
- Primeiro, verifique se um servidor DNS público definiu um domínio para algum endereço IP
- Se não, verifique um servidor DNS interno se ele definiu o domínio para algum endereço IP interno
- Se isso falhar, falhe na pesquisa "normalmente".
Atualmente, nossa configuração funciona incorretamente em uma base "on / off", por exemplo, ele lê o DNS público ou o DNS privado, não ambos. Isso faz com que seja inutilizável, pois queremos acessar os registros DNS públicos e privados ao mesmo tempo.
Os servidores DNS são gerenciados separadamente e o DNS privado está em um dispositivo local com o Bind9 instalado.
Eu tentei o seguinte:
-
Tem algo parecido com isso nos registros de DNS particulares
IN NS privatens.foobar.com ; the private (local) DNS
IN NS publicns.foobar.com ; the public DNS
-
Defina o encaminhamento em named.conf.options
para servidores DNS públicos
options {
forwarders { ... };
forward first;
};
-
Faça malabarismos com prioridade dentro de resolv.conf
Nada disso parece funcionar. Exemplos:
www.foobar.com
aponta para um servidor da web usando o DNS público. printer.office.foobar.com
é um CNAME para unique1.foobar.com
, que é um registro A para 192.168.5.10
. Quero que as consultas em www.foobar.com
funcionem com o DNS público e as consultas printer.office.foobar.com
funcionem com o DNS privado.
Agora todas as consultas para printer.office.foobar.com
funcionam, mas todas as consultas para www.foobar.com
resultam em uma resposta NXDOMAIN e param lá.
É possível ler duas zonas diferentes para um único domínio (por exemplo, foobar.com
) ou simplesmente ignorar o outro?
EDITAR:
Para tornar o problema mais claro, criei este super diagrama interessante da nossa rede e das coisas externas:
Qualquer coisa dentro da laranja é a nossa rede privada, sem acesso de fora. As coisas dentro de verde são servidores públicos com nomes de domínio definidos para eles. 192.168.5.1
é nosso roteador, 192.168.5.5
é nosso servidor DNS privado e ns1.dnsprovider.com
é algum servidor DNS fornecido por terceiros.
Supondo que eu sou o usuário em 192.168.5.100
, quero que o seguinte aconteça:
- Ao consultar
user1.foobar.com
, obtenho os resultados DNS de privns.foobar.com/192.168.5.5
.
- Ao consultar
www.foobar.com
ou sub.foobar.com
, obtenho os resultados de DNS de ns1.dnsprovider.com