Após a interrupção do Dyn na sexta-feira, estamos pensando em adicionar um provedor de DNS autoritativo secundário. Gostaríamos de entender o impacto no mundo real caso um dos provedores tenha uma interrupção.
Por exemplo, se nossos registros NS fossem parecidos com
ns1.provider-a.com
ns1.provider-b.com
ns2.provider-a.com
ns2.provider-b.com
e o provedor-a ou provedor-b sofreu uma interrupção, o que os usuários experimentariam no pior caso (sem cache)? Eu esperaria algo como maior latência obtendo uma resposta válida (caso o resolvedor primeiro tente alcançar um servidor inativo) ou talvez uma falha de resolução 50% do tempo. Se o comportamento for dependente de implementação, qualquer compreensão do que é a disseminação de vários comportamentos seria muito útil.
Resumindo, ele deve funcionar da maneira que você precisa.
O DNS autoritativo foi projetado para ser rápido e tolerante a falhas. Os resolvedores recursivos são escritos para obter uma resposta autoritativa válida de seu pool de servidores o mais rápido possível, o que inclui a suposição de que um ou mais podem ser lentos, irresponsáveis ou mal configurados (
SERVFAIL
respostas). Um ou mais servidores inutilizáveis podem causar uma sobrecarga leve (insignificante) na obtenção de uma resposta, mas uma vez que a resposta foi obtida, ela pode ser armazenada em cache pelo tempo especificado no TTL desse registro. Somente os usuários que fizeram a requisição quando o registro não estava em cache veriam o pequeno atraso, e as demais requisições seriam atendidas imediatamente.O cache negativo de falhas de comunicação é opcional e frequentemente implementado (consulte RFC 2308 §7 ), mas não renderá muito em termos de backoff. As falhas só podem ser armazenadas por no máximo cinco minutos, e só podem ser lembradas por consulta . (
<query name, type, class, server IP address>
) Como dito anteriormente, isso não deve representar um problema, e menciono esse detalhe principalmente para evitar confusão.O maior problema que você terá é a sincronização. Você deve monitorar todos esses servidores autoritativos para o número de série fora de sincronia. Os resolvedores recursivos vão confiar no primeiro de seus servidores que retorna uma resposta autoritativa. Se um servidor retornar,
NXDOMAIN
mas os outros não, a inexistência desse registro pode ser armazenada em cache por muito mais tempo do que cinco minutos, dependendo de como seuSOA
registro está configurado.Para resumir, é muito importante que você saiba a diferença entre cache negativo de servidores que não respondem/configurados incorretamente e servidores que respondem corretamente. Servidores que são funcionais e estão respondendo, mas servindo uma cópia obsoleta da zona, podem e irão causar muito mais danos do que suas contrapartes não funcionais nesta configuração. Se você puder evitar cair nessa armadilha, a nova configuração deve ser sólida em seu cenário de falha proposto.
(advertência: estou assumindo que o Provedor A e o Provedor B são provedores com redundância geográfica que sabem o que estão fazendo. Qualquer pessoa que pretenda assumir uma dessas funções internamente deve ler o BCP 16 na íntegra e garantir que tenha um especialista em DNS em seu emprego. Um administrador de servidor que leu um livro sobre isso uma vez está brincando com fogo.)