Estou tendo problemas para entender como o DNS funciona ou estou com problemas para configurar meu DNS corretamente (um não é bom). No momento, estou trabalhando com um domínio, chamarei de webdomain.com , e preciso permitir que todos os usuários internos recebam pontos para obter nossas entradas de DNS públicas, assim como o restante de o mundo. Então, além disso, desejo fornecer apenas algumas entradas de DNS de substituição para testar servidores e equipamentos que não estão disponíveis publicamente. Como exemplo:
O problema que pareço ter em cada etapa é que, se eu tiver um controlador de DNS interno que contenha uma zona para webdomain.com, então posso obter minhas entradas internas especificadas, mas nunca obtém nada do servidor DNS público. Isso é válido independentemente do tipo de servidor DNS que eu uso também - tentei um Linux Bind9 e um controlador de domínio do Windows 2008.
Acho que minha grande pergunta é: estou sendo razoável pensar que um sistema deve ser capaz de verificar meu DNS interno especificado e, no caso de não existir uma entrada solicitada, ele deve fazer o failover para o servidor de DNS público especificado? -OU- isso não é apenas o modo como o DNS funciona e estou perdido no molho?
Parece que deve ser tão simples quanto dizer ao meu servidor DNS interno para encaminhar quaisquer solicitações que ele não consiga preencher com o dotster, mas isso não parece funcionar. Isso poderia ser um problema de firewall?
Obrigado antecipadamente
ESTENDIDO
OK, então eu fiz um monte de pesquisas e tenho trabalhado nisso por algumas horas. Eu tenho isso no meu named.conf e ainda estou vendo o mesmo resultado. Chamadas internas são alimentadas, mas qualquer coisa externa (no domínio controlado por zona) é apenas descartada. Qualquer apoio seria bom! Além disso, este é um sistema operacional Ubuntu 9.04 com o qual estou trabalhando.
Code removed because it was wrong.
O caminho correto - adicionado após a pergunta encerrada
Bem, graças ao pessoal aqui no serverfault, eu agora tenho isso funcionando perfeitamente no meu servidor e de uma forma muito mais sucinta. Aqui está como você faz isso. A partir de uma instalação básica do bind9, edite seu arquivo named.conf.local e adicione uma zona para cada subdomínio que você deseja redirecionar:
/etc/bind/named.conf
// WEBDOMAIN.COM ENTRIES
zone "test.webdomain.com" {
type master;
file "/etc/bind/zones/test.webdomain.com";
};
zone "alpha.webdomain.com" {
type master;
file "/etc/bind/zones/alpha.webdomain.com";
};
zone "beta.webdomain.com" {
type master;
file "/etc/bind/zones/beta.webdomain.com";
};
// INTERNETSITE.COM ENTRIES
zone "internal.internetsite.com" {
type master;
file "/etc/bind/zones/internal.internetsite.com";
};
zone "dev.internetsite.com" {
type master;
file "/etc/bind/zones/dev.internetsite.com";
};
Edite seu arquivo /etc/bind/named.conf.options e adicione todos os encaminhadores que você deseja usar no local correto:
/etc/bind/named.conf.options
options {
directory "/var/cache/bind";
forwarders {
208.67.222.222;
208.67.220.220;
8.8.8.8;
8.8.4.4;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
Crie uma nova pasta chamada zones em / etc / bind / zones / e adicione um novo arquivo para EACH das zonas criadas acima que correspondam ao atributo 'file' acima. Usando test.webdomain.com como um exemplo:
/etc/bind/zones/test.webdomain.com
$TTL 604800
@ IN SOA test.webdomain.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS test.webdomain.com.
test.webdomain.com. IN A 10.0.1.20
Onde 10.0.1.20 é o endereço IP do registro A para o qual você deseja que este (sub) domínio seja encaminhado. Ao fazer isso, o registro de test.webdomain.com é autoritativo apenas para o subdomínio e o DNS global fornecerá outros subdomínios ou domínios raiz, como de costume.