Um guia completo para redefinir o arquivo hosts do Windows para o estado padrão, remover redirecionamentos indesejados, corrigir erros de permissão e verificar se a resolução de nomes voltou a funcionar corretamente.
O arquivo hosts é um pequeno arquivo de sistema em texto simples que o Windows consulta antes de usar os servidores DNS. Ele pode associar um nome de domínio a um endereço IP específico. Por exemplo, uma linha no arquivo hosts pode forçar example.com a abrir a partir de um IP escolhido ou bloquear um domínio apontando-o para 127.0.0.1.
Como o arquivo hosts é verificado no início do processo de resolução de nomes, entradas incorretas ou maliciosas podem impedir a abertura de sites, redirecionar navegadores para endereços errados, bloquear atualizações de antivírus ou interferir na ativação de programas e serviços online.
Você deve redefinir ou restaurar o arquivo hosts quando problemas de acesso a sites forem causados por mapeamentos locais incorretos. Isso é especialmente útil após a remoção de malware, depois de usar scripts de bloqueio de anúncios ou após editar manualmente o arquivo para testes.
O arquivo hosts do Windows fica armazenado na seguinte pasta:
O arquivo se chama hosts e normalmente não tem extensão. Ele não deve se chamar hosts.txt, hosts.ini ou hosts.bak se você quiser que o Windows o utilize.
hosts.txt se o tipo de arquivo estiver definido como Documentos de Texto (*.txt). Ao salvar, escolha Todos os Arquivos (*.*) e use exatamente o nome hosts.
Um arquivo hosts limpo do Windows pode conter apenas comentários e os exemplos padrão de localhost. Linhas que começam com # são comentários e são ignoradas pelo Windows.
# Copyright (c) Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost
Você também pode usar uma versão mínima e limpa do arquivo hosts, sem mapeamentos ativos:
# localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost
Antes de editar o arquivo hosts, crie um backup. Isso é útil se o arquivo contiver entradas personalizadas legítimas para um servidor local, ambiente de desenvolvimento, intranet, máquina virtual ou domínio de teste.
C:\Windows\System32\drivers\etc.hosts_backup ou hosts_original_backup.Este é o método mais fácil para a maioria dos usuários. O requisito principal é abrir o Bloco de Notas com direitos de administrador, pois o arquivo hosts fica em uma pasta protegida do sistema.
C:\Windows\System32\drivers\etc.Depois de salvar o arquivo, prossiga para a seção de limpeza do cache DNS abaixo. Sem limpar o cache DNS, o Windows ou o navegador pode continuar usando resultados armazenados temporariamente.
Se o arquivo hosts estiver muito danificado, renomeado ou difícil de editar manualmente, você pode substituí-lo usando um Prompt de Comando elevado.
cd /d C:\Windows\System32\drivers\etc copy hosts hosts.bak attrib -r -s -h hosts type nul > hosts
Depois, adicione o conteúdo padrão mínimo:
echo # localhost name resolution is handled within DNS itself. > hosts echo # 127.0.0.1 localhost >> hosts echo # ::1 localhost >> hosts
type nul > hosts limpa o arquivo hosts atual. Faça um backup primeiro se talvez precisar das entradas personalizadas antigas.
O PowerShell é conveniente se você quiser substituir o conteúdo do arquivo de forma controlada. Execute-o como administrador e grave um arquivo hosts padrão limpo.
$hostsPath = "$env:SystemRoot\System32\drivers\etc\hosts" Copy-Item $hostsPath "$hostsPath.bak" -ErrorAction SilentlyContinue @" # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost "@ | Set-Content -Path $hostsPath -Encoding ASCII
Isso cria um backup chamado hosts.bak na mesma pasta e grava um arquivo hosts limpo, sem redirecionamentos ativos.
Se o Windows não permite salvar as alterações, a causa mais comum é falta de privilégios de administrador, atributo somente leitura, proteção do antivírus ou salvamento do arquivo com a extensão errada.
| Problema | O que fazer |
|---|---|
| O Bloco de Notas informa acesso negado | Feche o Bloco de Notas e abra-o novamente com Executar como administrador. |
| O arquivo é salvo como hosts.txt | Escolha Todos os Arquivos (*.*) e nomeie o arquivo exatamente como hosts. |
| O arquivo está como somente leitura | Abra um terminal elevado e execute attrib -r C:\Windows\System32\drivers\etc\hosts. |
| O software de segurança bloqueia alterações | Permita a alteração temporariamente somente se tiver certeza de que a edição é legítima. |
| Você não consegue ver o arquivo | Altere o filtro da janela Abrir de Documentos de Texto para Todos os Arquivos. |
Depois de redefinir o arquivo hosts, limpe o cache do resolvedor DNS do Windows. Isso força o Windows a descartar consultas de domínio armazenadas em cache e ler informações novas novamente.
ipconfig /flushdns
Se a operação for concluída com sucesso, o Windows exibirá uma mensagem informando que o cache do resolvedor DNS foi liberado com êxito.
Também é útil fechar e abrir novamente o navegador. Alguns navegadores mantêm seu próprio cache DNS ou pool de conexões por um curto período.
Depois de restaurar o arquivo, teste se os sites são resolvidos normalmente. Você pode usar ping, nslookup e testes no navegador.
Abra o Prompt de Comando e execute:
ping example.com
Se o arquivo hosts não contiver nenhuma entrada ativa para o domínio, o Windows deverá resolvê-lo por DNS em vez de usar uma substituição local do hosts.
Entradas ativas são linhas que não começam com # e não estão vazias. Você pode analisá-las manualmente ou usar o PowerShell:
Get-Content "$env:SystemRoot\System32\drivers\etc\hosts" | Where-Object { $_ -and $_ -notmatch '^\s*#' }Se o comando não retornar nada, não há mapeamentos ativos no arquivo hosts.
Nem toda entrada no hosts é maliciosa. Desenvolvedores, administradores, ferramentas de bloqueio de anúncios e ambientes de teste local podem usar o arquivo de forma intencional. No entanto, algumas entradas são um sinal de alerta.
hosts.txt não funcionará como o arquivo hosts do Windows.
ipconfig /flushdns e reiniciar o navegador é suficiente. Reinicie o Windows apenas se o problema continuar ou se outro aplicativo mantiver o estado antigo da rede.
127.0.0.1, 0.0.0.0 ou outro endereço inacessível. Por isso, restaurar o arquivo hosts pode corrigir sites que estão bloqueados apenas em um PC com Windows.
hosts.txt, esquecer de executar o Bloco de Notas como administrador, cache DNS do navegador, digitar o domínio incorretamente ou colocar um # no início da linha, o que a transforma em comentário.
A forma mais confiável de restaurar o arquivo hosts é abrir o Bloco de Notas como administrador, abrir C:\Windows\System32\drivers\etc\hosts, substituir entradas suspeitas pelo conteúdo limpo padrão, salvar o arquivo sem extensão e depois executar ipconfig /flushdns.
Se sites estão bloqueados, redirecionados ou se comportam de forma diferente apenas em um computador Windows, o arquivo hosts é um dos primeiros locais a verificar. Redefini-lo para um estado padrão limpo remove substituições locais de domínio e ajuda a restaurar a navegação normal baseada em DNS.