“Cache Negativo” (“negative caching”)
Situação na qual os computadores usam e consultam respostas negativas de cache DNS por um período limitado de tempo. Um servidor DNS dá uma resposta negativa diretamente após uma consulta de nome, quando não forem encontrados registros do nome de domínio DNS solicitado. O uso desse tipo de armazenamento em cache pode ajudar a acelerar a resposta a consultas sucessivas do mesmo nome.
Cache negativo é um recurso opcional da especificação DNS que lida com o armazenamento em cache da não existência de um RRset ou de um nome de domínio. Um RRset é um conjunto de registros DNS que têm o mesmo nome, tipo e classe. Por exemplo, se você consultar o nome www.exemplo.com.br e receber uma resposta NXDOMAIN, isso significa que o nome não existe no DNS. Essa resposta virá com um registro SOA, que contém o TTL (tempo de vida) do cache negativo (tradicionalmente conhecido como campo MINIMUM). Esse TTL indica por quanto tempo os clientes podem armazenar em cache a informação de que o nome não existe, evitando consultas desnecessárias ao servidor DNS.
Por outro lado, se você consultar o nome www.exemplo.com.br e receber uma resposta SERVFAIL, isso significa que houve um erro no servidor DNS ou na rede. Nesse caso, o cache negativo não deve ser usado, pois pode ser que o nome exista, mas não foi possível obter a resposta. A RFC 2308 recomenda que as respostas SERVFAIL não sejam armazenadas em cache por mais de 5 minutos.
O cache negativo é útil porque reduz o tempo de resposta para consultas negativas e diminui a carga nos servidores DNS. No entanto, ele também pode causar problemas se o TTL for muito longo ou se houver mudanças no DNS que não sejam refletidas no cache. Por isso, é importante configurar o cache negativo adequadamente e monitorar o seu funcionamento.
: RFC 2308 - Negative Caching of DNS Queries (DNS NCACHE) - https://datatracker.ietf.org/doc/rfc2308/
: RFC 2181 - Clarifications to the DNS Specification - https://datatracker.ietf.org/doc/rfc2181/