O que é delegação de DNS?

17

Em uma resposta à minha pergunta anterior , notei estas linhas:

It's normally this last stage of delegation that is broken with most home user setups. They have gone through the process of buying a domain with a registrar/service provider, but have then failed to configure the domain to point the delegation to their own name servers. You actually have to tell the registrar where your nameservers are before they can put glue records in place to get your step of the delegation to work.

O que é uma delegação de DNS? Como funciona? Uma explicação completa para o domínio hipotético abc.com seria útil.

    
por Nishan 12.08.2013 / 08:08

3 respostas

20

Em termos físicos, a delegação é muito semelhante a como um gerente delegará a responsabilidade das tarefas a sua equipe. Os resultados são os mesmos, porém mais de uma pessoa esteve envolvida no processo. O gerente recebe a solicitação de trabalho, transfere a responsabilidade para outro membro da equipe e o membro da equipe ou o gerente retorna com os resultados do trabalho. Tudo isso com a ressalva de que o trabalho que o membro da equipe faz é realmente correto e é o que o solicitante original solicitou (ou que o solicitante realmente solicitou algo que era válido em primeiro lugar!).

Com delegação de DNS, é bem parecido. Quando os servidores de nomes com são solicitados a localizar a autoridade da zona example.com , eles freqüentemente delegam esse trabalho para servidores de nome separados (na verdade, na grande maioria dos casos, eles de fato, delegar a resposta a outros servidores de nomes). Quando você registra um domínio pela primeira vez, digamos, nosso domínio example.com , isso geralmente é feito por meio de um terceiro chamado registrador. É uma prática comum dos registradores colocar seus servidores de nomes para a delegação e servir uma zona padrão desses servidores de nomes. Essa zona padrão inclui os requisitos básicos para atender a essa zona na Internet (os registros SOA , NS e A associados a esses registros NS).

Obviamente, se você quiser assumir o controle da autoridade do domínio, peça ao registrador para delegar o domínio ao seu servidor de nomes. Diferentes registradores referem-se a esse processo de diferentes maneiras: "alterar servidores de nomes", "usar DNS de terceiros", "adicionar registros de colagem" e assim por diante. O mecanismo por baixo permanece o mesmo. Você fornece, geralmente, 2 ou mais "nomes de servidores de nomes" (por exemplo, ns0.example.com e ns1.example.com ) e os endereços IP nos quais ns0 e ns1 são. Eles então processam a solicitação e a delegação é direcionada para longe do seu registrador para os servidores de nomes fornecidos por você.

Em termos técnicos, é nesse momento que você precisa garantir que seus servidores de nomes estejam funcionando, atendendo ao domínio example.com , com um mínimo de SOA (início do registro de autoridade) , 1 ou mais NS registros e A registros (os IPs) dos quais esses registros NS são resolvidos:

example.com.   IN SOA ns0.example.com. hostmaster.example.com. ( 10 3600 900 604800 7200 )
           IN NS  ns0.example.com.
           IN NS  ns1.example.com.
ns0        IN A   192.0.2.8
ns1        IN A   192.0.2.44

(Eu escolhi valores arbitrários compartilhados para os valores SOA, os nomes para os registros NS e os IPs para os quais os servidores de nomes resolvem). Todos terão que refletir a zona para a qual você está servindo.

Este serviço DNS tem que ser visível de em qualquer lugar na internet, e não deve ser firewall (isto é, a porta 53 udp e a entrada tcp devem ser permitidas). Além disso, seu provedor de serviços não deve bloquear essa porta (que alguns provedores bloqueiam o tráfego de entrada destinado a essas portas).

Devido a minha comparação original, os servidores de nomes com são os gerentes DNS que estão delegando a zona example.com aos servidores de nomes (os membros da equipe) para fazer o trabalho de fornecer as informações básicas da zona ( SOA , NS , A ). Você também pode servir qualquer registros adicionais, como registros do servidor de e-mail MX , ou podem ser um registro A do seu endereço www.example.com .

Se esse servidor de nomes não fizer o trabalho, retornar os resultados errados ou tiver um terceiro (firewall / ISP) bloqueando o trabalho, você não terá o DNS em funcionamento e as interrupções de delegação.

Também vale a pena observar que o domínio NÃO precisa ser delegado a servidores de nomes no mesmo domínio, portanto, ns0.example.net e ns0.example.org podem ser ambos servidores de nomes válidos que poderiam ter example.com delegado a eles. Desde que ambos os servidores de nomes tenham servido o domínio example.com .

    
por 13.08.2013 / 00:50
4

A delegação em termos de DNS significa que o servidor de nomes na hierarquia acima de você responderá a todas as solicitações ao seu domínio com uma NS de resposta.

Então, no caso de abc.com você faria:

$ dig com.
=>
com.        896 IN  SOA a.gtld-servers.net.  ...

Em seguida, consulte esse servidor de nomes especificamente para abc.com :

$ dig abc.com @a.gtld-servers.net.
=>
;; AUTHORITY SECTION:
abc.com.    172800  IN  NS  sens01.dig.com.
abc.com.    172800  IN  NS  sens02.dig.com.
abc.com.    172800  IN  NS  orns01.dig.com.
abc.com.    172800  IN  NS  orns02.dig.com.

Os registros de cola significam que, além dos nomes de host de seus servidores de nome, a autoridade .com também sabe sobre seus endereços IP.

Se os registros de cola estiverem configurados, a consulta acima também fornecerá A/AAAA de respostas para cada um dos servidores de nomes.

    
por 12.08.2013 / 09:14
4

Dentro do seu domínio, você pode definir os hosts como quiser, por exemplo, mymailserver . Para se conectar ao seu servidor de e-mail, eu preciso usar o DNS para determinar seus endereços IP e para isso preciso saber onde na árvore de nomes eu devo procurar mymailserver .

Parece complicado, mas é exatamente isso que usamos para usar o "nome de domínio totalmente qualificado" (FQDN). Se você definir um host mymailserver no seu domínio abc.com. , esse host terá o FQDN mymailserver.abc.com. . Com essa informação, posso resolver esse nome para o endereço IP correto.

Você não precisa criar todos os hosts do formulário <hostname>.abc.com. , você também pode ramificar conforme desejar. Você pode ter servers.abc.com. e colocar todos os seus servidores lá, por exemplo, mymailserver.servers.abc.com. . Você pode fazer isso porque o domínio abc.com. foi delegado para você. O que significa que você é a autoridade para solicitar qualquer domínio e nome de domínio que termine com abc.com. . Portanto, você pode definir subdomínios de hosts e ramos para o conteúdo do seu coração.

Delegação significa que um proprietário de domínio fornece controle total sobre uma filial para outra pessoa. Assim como o proprietário de com. delegou o subdomínio abc.com. a você, você pode ramificar subdomínios, por exemplo, def.abc.com. e delegá-lo para mim. Dentro do meu domínio eu posso fazer / definir o que eu quiser / como sem ter que perguntar ou dizer a você ou até mesmo os com. proprietários sobre.

Como isso funciona? Você simplesmente coloca uma informação em seus registros DNS que diz "para informações sobre def.abc.com , por favor, pergunte ao servidor DNS hisdnsserver.def.abc.com. ". Obviamente, para consultar esse servidor, é necessário conhecer o endereço IP de hisdnsserver.def.abc.com. . É para isso que servem os registros de cola. Na verdade, você coloca 2 informações, uma delas é justa, e a outra é o endereço IP de hisdnsserver.def.abc.com. . Dessa forma, você fornece a qualquer pessoa uma pergunta sobre def.abc.com. com informações suficientes para indicá-las à autoridade desse subdomínio.

Por que os programas perguntaram sobre def.abc.com. em primeiro lugar? Porque você é a autoridade para abc.com. e a autoridade para com. deu ao solicitante duas informações sobre yourdnsserver e abc.com. ...

    
por 12.08.2013 / 09:07