Acabei de perceber que meu entendimento do cache DNS deve ser pelo menos um pouco falho e estou procurando corrigir meu entendimento.
Quando um nome de domínio é registrado, entendo que os servidores de nomes para ele são adicionados aos servidores de nomes raiz. Também entendo que meu arquivo de zona inclui registros SOA e NS com TTLs.
Supondo que eu atualize os servidores de nomes para example.com (e não remova os servidores de nomes antigos de responder), quanto tempo antes que os servidores de nomes antigos sejam esquecidos - ou seja, quais configurações são usadas pelo DNS para armazenar em cache a resposta? [Posso conceber que seja o registro ns TTLs, mas não tenho certeza se isso está certo]. O comportamento esperado do documento RFC?
Da mesma forma, do ponto de vista recursivo do servidor, os registros SOA são usados para alguma coisa ou são puramente para lidar com transferências de zona?
Este é um equívoco comum. Os servidores de nomes raiz conhecem apenas os servidores de nomes de "domínio de nível superior" (TLD). Seus
NS
registros foram adicionados ao registro do seu TLD. O registro, por sua vez, publica essesNS
registros nos "servidores de nomes TLD" do seu TLD.Se você tiver acesso ao
dig
utilitário de linha de comando, poderá observar o caminho de delegação completo executandodig +trace example.com NS
..
representa os servidores de nomes raiz ecom.
é a zona gerenciada do registro para o TLD "ponto com".Sim. Existem dois conjuntos de
NS
registros dos quais você precisa estar ciente. O primeiro conjunto está em sua zona de autoridade. O outro conjunto está na delegação atendida pelos servidores de nomes TLD. (consulte adig +trace example.com
saída do exemplo anterior)Ao alterar seus IPs de servidor de nomes, os dados precisam continuar vivendo nos servidores antigos até que o maior desses dois conjuntos de TTLs tenha expirado. Os servidores de nomes TLD normalmente têm TTLs medidos em dias.
Se isso for confuso, pense assim: você não tem como controlar qual desses dois TTLs que os servidores da internet viram mais recentemente. Você também não tem controle sobre se os servidores DNS preferem um conjunto de
NS
registros em detrimento do outro. A única coisa que você pode fazer é garantir que esperou o maior dos dois intervalos.Os intervalos numéricos definidos no
SOA
registro são usados principalmente para comunicação entre os servidores mestre e secundário. O último campo, SOA.MINIMUM, é especial e usado por servidores DNS recursivos ao calcular por quanto tempo eles podem armazenar em cache a não existência de um registro DNS. (a fórmula émin(SOA TTL,SOA.MINIMUM)
, consulte RFC 2308 )