Se alguém perguntar "por que algumas entradas permanecem em ipconfig /displaydns
mesmo depois de eu ter liberado elas com /flushdns
?", elas teriam várias respostas possíveis:
- Um programa está repetidamente resolvendo algum domínio, então suas informações são armazenadas em cache quase imediatamente de novo.
- O Resolvedor do DNS tem o tratamento de alguns nomes especiais codificados (como
localhost
). - O Resolvedor de DNS automaticamente lê seu
/etc/hosts
(na verdade,%SystemRoot%\system32\drivers\etc\hosts
) e o usa para preencher o cache do Resolver, para que esses nomes não precisem ser realmente consultados no DNS. É um bom truque evitar reler / etc / hosts toda vez que um nome precisa ser resolvido.
Se alguém perguntar "por que, depois de alterar algo no meu domínio e executar /flushdns
, ainda não vejo minhas alterações?"
É fisicamente impossível descarregar todos os registros no DNS, porque o DNS - o Sistema de Nomes de Domínio - está hospedado em muitos servidores em toda a Internet, e você teria que destruir todos eles.
Qual ipconfig
acessa é o cache local do seu computador de informações pesquisadas pelo DNS; se você esvaziar o cache do seu computador e tentar acessar qualquer domínio, o computador precisará perguntar ao servidor DNS configurado novamente.
No entanto, o servidor DNS configurado, seja ele do seu roteador, do seu ISP ou público (por exemplo, do Google), tem o seu próprio cache. Quando alguém perguntar ao servidor DNS em 8.8.8.8
sobre o domínio superuser.com
, ele também será armazenado em cache no esse servidor. Assim, em muitos casos, pode haver três, talvez até quatro camadas de cache: no Windows, no roteador / modem / gateway, no ISP e talvez em uma segunda camada mais profunda no ISP.