Questão Como limpar / limpar o cache do DNS no Google Chrome?


Como você provavelmente sabe, o Google Chrome tem seu próprio cache de DNS interno. Existe uma maneira de limpá-lo sem ter que esperar pelo tempo limite ou fechar o navegador?


851


origem


A única razão para eu limpar o cache DNS do Chrome é porque, se não o fizer, não consigo acessar o Google. Felizmente, o Google não é o único mecanismo de pesquisa disponível (ou eu não encontrei essa pergunta) e só tenho que lidar com o Chrome no trabalho. - Nolonar
Para mim, isso provavelmente é causado por ter um servidor DNS incorreto no resolv.conf. (Eu estou tentando acessar um servidor interno em uma VPN). As pessoas da T-com configuraram mal o DNS para responder com o site de anúncios em vez do NXDOMAIN, e as pessoas que escreveram o Chrome não se importaram em respeitar o pedido resolv.conf, mas usam o servidor DNS para funcionar. - Ketil
Relacionado: apple.stackexchange.com/questions/121425/… - Nathan Long


Respostas:


Navegar para chrome: // net-internals / # dns e pressione o botão "Limpar cache do host".


1231



Estranhamente, isso só funciona em uma direção. Eu tenho um mapeamento no arquivo hosts que mapeia um nome de domínio para a máquina local (ou seja, para 127.0.0.1), quando eu remover o mapeamento e liberar o cache DNS no Chrome, ele corretamente carrega o site da internet, mas quando eu adicione o mapeamento novamente ao arquivo de hosts, ele ainda carrega o site da Internet. Ele mostra a lista de DNS em cache vazia no Chrome depois de limpar o cache DNS (também limpou o cache do sistema operacional usando ipconfig / flushdns), ainda assim, ele carrega o site da internet! Parece um bug. - Mee
Ainda mais irritante, o Chrome mostra o endereço IP corretamente (127.0.0.1) para esse domínio na lista de cache DNS (depois de liberar e tentar carregar o site novamente), ainda carrega o site da Internet. - Mee
impressionante, existe uma lista de todas as opções do chrome: // *? - Ian
@Ian chrome: // sobre - ephemient
Não foi o suficiente para mim. Tive que "ipconfig / flushdns" no prompt de comando (encontrado na resposta abaixo) - Adam Tal


Às vezes você precisa liberar os pools de soquete após liberar o DNS:

chrome://net-internals/#sockets

141



Observe que o Chrome agora monitora hosts arquivo e autoclears o dnscache sempre que houver alguma alteração no hosts Arquivo. —Pode testar facilmente se isso funciona no seu sistema adicionando uma linha em branco após o seu hosts arquivo e a lista em chrome://net-internals/#dns O serviço dnscache do Windows também monitorará (pelo menos no 8.1) o arquivo hosts para alterações, portanto, após ter atualizado seu hosts Arquivo, Basta clicar no botão "Flush socket pools". Nada mais é necessário. - Pacerier
Sim, parece que percebi o mesmo comportamento desde 1 ano ou mais. No entanto, talvez não funcione o tempo todo, pois ainda recebo os votos positivos nessa resposta. - Bojan Hrnkas
Apenas testei no Server 2003 também. Sempre que houver alterações no arquivo hosts, o serviço dnscache automaticamente recarrega o cache sem necessidade de ipconfig /flushdns Absurdo. ipconfig /flushdns parece ser um arenque vermelho em toda esta questão. - Pacerier
Trabalhei para mim, mesmo depois de descarregar dns em cmd e fazer a resposta aceita - Rob Scott
Incrível, esta é a única solução que funciona no Chrome para Linux (Ubuntu 14.04). Na verdade, um flush de DNS não afeta nada. Tudo o que é necessário é fazer um flush de soquete. Eu considero isso um bug. - Elijah Lynn


"Navegue até chrome: // net-internals / # dns" não funciona no navegador Google Chrome, pelo menos no meu sistema. Parece que essa solução talvez funcione para o Google Chrome OS, mas não para o navegador Google Chrome em geral. Para mim o link redireciona aqui:
Os projetos do Chromium 

Parece "Esvaziar o Cache" é a melhor solução. Observe também que meu navegador diz "Preferências" em vez de "Opções"

Através da http://www.google.com/support/forum/p/Chrome/thread?tid=026b6a1d9151a6e3&hl=pt_BR 

"Vá para ferramentas -> opções -> Sob o capô -> Limpar dados de navegação e marque 'esvaziar o cache' e clique em Limpar dados de navegação. Sim, sim, eu sei, não é o cache do DNS que eu esperaria que fosse claro, mas parece que sim. E agora funciona para mim ".


46



Confirmado isso funcionou para mim, Limpar dados de navegação -> Esvaziar o cache. Nenhum outro método funcionou. Obrigado PJ. - Air
Isso funcionou para mim tanto no chrome quanto no cromo quando o /etc/resolver/foo.com estava sendo ignorado. - chovy
Parece que o Google está gradualmente fazendo alterações de nome em alguns URLs internos em diferentes versões. A partir da versão 27.0.1421.0 (184274) ... - DocSalvager
Pelo menos limpar Imagens e arquivos em cache não funcionou para mim (Chromium 33 no Ubuntu) depois de ligar o OpenVPN e, assim, mudar o meu servidor DNS ativo. (Limpar cache do host como na resposta popular não funcionou também.) Até agora eu não encontrei nada que funciona, exceto reiniciar o navegador ou digitar o endereço IP na URL. - Jesse Glick
Compensação Imagens e arquivos em cache trabalhou para mim! Nenhuma pista porque, mas aconteceu. Windows 8.1, Chrome 41.0.2272.89 m - Bing


Clicar em "limpar cache do host" em chrome://net-internals/#dns deve fazer isso para o Google Chrome, mas há outros caches DNS a considerar em sua máquina.

Janelas:

ipconfig /flushdns

OS X pré-10.7 (antes do Lion):

sudo dscacheutil -flushcache

OS X 10.7-10.9 (Leão, Leão da montanha, Mavericks):

sudo killall -HUP mDNSResponder

OS X 10.10+ (Yosemite):

sudo discoveryutil mdnsflushcache

OS X 10.11, 10.12+ (El Capitan, Sierra):

sudo killall -HUP mDNSResponder

Seu roteador pode estar armazenando em cache o DNS também (reinicie ou leia o manual). O teste final é usar escavação, mas isso usa o host DNS da sua rede, não o servidor autoritativo por padrão:

dig superuser.com

Para consultar diretamente da fonte, tente algo como:

dig superuser.com @ns1.serverfault.com

40



"sudo discoveryutil mdnsflushcache" não funcionou no El Capitan (10.11) para mim, mas "sudo killall -HUP mDNSResponder" fez, ele disse que discoveryutil não existia, talvez seja Sierra e up? - Ezra


No OS X 10.9.1 com Chrome 32, eu precisava limpar o cache do host e liberar os pools de soquete para que o Chrome atualizasse o cache do DNS:

  1. Navegar para chrome: // net-internals / # dns e clique "Limpar Cache do Host"
  2. Navegar para chrome: // net-internals / # sockets clique abd "Flush Socket Pools"

19



Eu precisava disso no Windows 8.1 também, então não é apenas o OS X. - benrick
O Chrome para Linux também precisa disso chrome://net-internals/#sockets - pengemizt
O Chrome para Linux só precisa de um flush de soquete. Nenhum DNS flush. superuser.com/a/611712/30982 - Elijah Lynn


Isso funcionou para mim: esvaziar e limpar o cache de disco

No Chrome, clique no ícone de chave inglesa e, em seguida, Opções. Vamos para Sob o capô aba. Clique no Limpar dados de navegação botão sob o Privacidade seção. Selecione apenas a caixa de seleção "Esvaziar o cache" e, em seguida, clique no Limpar dados de navegação botão.

Isso funcionou imediatamente - eu nem precisei fechar o navegador.


16



Isso parece funcionar para forçar o Chrome a reconhecer alterações no arquivo de hosts. - minamhere
Isso funcionou para mim no Mac Chrome, depois de ter tentado o chrome://net-internals/#dns truque de flush mencionado aqui, sem sucesso. - Markus Amalthea Magnuson


Tanto quanto eu posso encontrar, nas versões recentes do Chrome (estou em 26.0.1410.43), não há maneira (confiável) de fazê-lo, pelo menos não em um Mac. Nenhuma das sugestões nesta página funcionou para mim.

Minha situação é que eu adicionei um anfitriões entrada de arquivo, mas o Chrome ainda está indo para o endereço IP retornado pelo DNS. O Firefox funciona corretamente.

Na verdade, o chrome://net-internals/#dns página é simplesmente mentir sobre o endereço IP para mim. Ele mostra o IP da entrada de hosts, mas claramente não é de onde ele está realmente obtendo o site.


10



Mesmo problema aqui. Eu tentei limpar o cache, limpar o cache DNS interno, ipconfig flush dns e ainda está carregando um site local do domínio ao vivo. Se eu abri-lo em "Incognito" ele funciona, ou no Firefox funciona, mas o Chrome normal recusa para redefinir seu DNS - andrewtweber


Eu sei que esta é uma pergunta antiga, mas fiquei irritado com as mesmas que as outras: mesmo depois de limpar o cache, ainda pode demorar um ou dois minutos para que as novas alterações de DNS sejam acionadas.

Existem algumas maneiras de contornar isso. Depois de limpar o cache DNS através de chrome: // net-internals / # dns (ou usando uma extensão que atinja o mesmo resultado):

  1. Abra uma janela anônima e os novos mapeamentos de DNS para o domínio entrarão em vigor imediatamente.

  2. Limpe o cache do navegador. Isso é complicado se você usa seu navegador para navegação regular. Você pode executar uma instância separada do navegador como outro usuário e limpar o cache nessa conta não interferirá no seu cache de navegação normal. Eu não tentei isso, mas deveria funcionar.

  3. Pressione CTRL + F5. Eu tive que manter CTRL + F5 pressionado por cerca de um segundo, que recarregou consecutivamente a página algumas vezes. Este é um comportamento estranho, mas funciona e é igualmente eficaz. Esta é a minha abordagem preferida.

Idealmente, deve haver um plug-in que possa limpar o DNS e o cache (especificamente apenas o cache de documentos e não o cache de cookies), mas ainda não encontrei nada desse tipo.

ATUALIZAÇÃO: No OSX, o aplicativo Gas Mask é excelente para alternar entre arquivos de hosts e, junto com a solução alternativa 2, é bastante eficaz.


9



Refrescante não ajudará nem um pouco. Os soquetes TCP ativos ainda estarão ativos. Você pode esperar (1-2 minutos) ou lavar manualmente eles. - Pacerier


Chrome_Hosts_Flush_Util:

É para resolver o problema que o Chrome não pode usar os hosts corretos depois de modificar o arquivo hosts por causa do Chrome usando pools de soquete.

O Chrome mantém conexões longas no pool de conexões para acelerar. Quando o Google Chrome descobre que uma solicitação pode reutilizar uma conexão no pool de conexão, ela não passará pelo DNS novamente. Assim, sempre percebemos que o Chrome não responderá a uma alteração de host imediatamente.

O Chrome forneceu uma interface para liberar o conjunto de conexões na guia chrome: // net-internals / # sockets, mas acho irritante ter que ir primeiro para a guia e clicar em um pequeno botão com um trackpad.

Descobri que, ao clicar no botão do conjunto de soquetes de descarga, o Chrome executa dois métodos-chave de JavaScript.

g_browser.sendFlushSocketPools();
g_browser.checkForUpdatedInfo(false);

Então, eu encapsulo esses dois métodos em um script AppleScript que pode ser convertido em um aplicativo OS X ou fluxo de trabalho Alfred, ambos podem ser chamados facilmente.


6



Oi Boreas320, você pode fornecer um resumo do que seu link fornece em sua resposta no caso de ficar desatualizado? As respostas que são apenas / principalmente um link são desencorajadas, pois podem ficar obsoletas. - bertieb
Acima! Idéia maravilhosa! Obrigado! No entanto, não funcionou para mim até eu substituir o javascript com document.getElementById ('sockets-view-flush-button'). Click (); - i_a