Uso o Chromium e tenho problemas com o DNS não sendo armazenado em cache pelo tempo que eu esperaria. Pegue o domínio example.com. De acordo com as configurações de DNS, esse domínio deve ser armazenado em cache por outros 26151 segundos:
$ dig example.com
;; ANSWER SECTION:
example.com. 26151 IN A 93.184.216.34
No entanto, quando abro example.com no Chromium e abro chrome: // net-internals / # dns, o IP é esquecido em um minuto!
Por que o Chromium não adere ao TTL da configuração de DNS do domínio? Como forçá-lo a armazenar em cache os dados DNS até que eles expirem?
Respostas:
O Chromium / Chrome não armazena em cache as solicitações de DNS por mais de um minuto.
Curiosamente, da bugs-chromium - Edição 164026 - DNS TTL não aceito em 21 de abril de 2011
Resposta no ticket de 4 de dezembro de 2012:
O bilhete foi encerrado em 10 de outubro de 2013 como:
Esse é um problema conhecido há anos; o resolvedor DNS interno ignora o TTL dos registros DNS e armazena em cache apenas solicitações de DNS por 1 minuto.
Os usuários solicitam há anos, um recurso para alterar esse comportamento padrão, e o Google nunca criou um.
No passado, era possível desativar o resolvedor DNS interno
chrome://flags
, hoje em dia que funcionalmente não está mais exposto.Então, resumindo, é um recurso, por exemplo, ele faz isso por design.
(Inicialmente, escrevi que nunca poderia ser alterado, o que obviamente não é verdade. Uma pessoa realmente determinada pode recompilar o Chromium ou invadir os binários do Chrome.).
Portanto, como um adendo: existem muitas evidências documentadas que os engenheiros do Google não pretendem respeitar o TTL padrão nas respostas DNS recebidas no Chrome / ium.
Do cache negativo de consultas DNS (DNS NCACHE)
Embora esteja implícito que um resolvedor pode / deve impor um limite máximo ao cache da resposta DNS, o limite de 1 minuto no Google Chrome pode ser muito baixo.
PS: Na verdade, descobri a resposta para algo que me incomoda há anos enquanto recuperava as estatísticas do Chrome para responder a essa pergunta: Chrome: solicitações de DNS com nomes aleatórios de DNS: malware?
PPS No código abaixo, parece que as respostas negativas não são armazenadas em cache (TTL = 0).
De https://chromium.googlesource.com/chromium/src/net/dns/host_resolver_impl.cc
fonte
dougblack.io
portanto, talvez as regras completas sejam um pouco mais complicadas. mas 99 dos cem domínios se comportam como você descreveu.