Para a questão de C:\windows\system32\drivers\etc\hosts
:
- Concordo com o comentário de @DavidPostill, que explica a necessidade de atualizar o cache de nomes local com ipconfig /flushdns
Mas, infelizmente, desde que eu me lembre, você não pode bloquear domínios inteiros dessa maneira: somente hosts específicos, não domínios inteiros (desculpe, nenhuma interpretação de expressão regular).
Em outras palavras, acho que você pode bloquear (depois de atualizar o cache de nomes, com o comando acima ou automaticamente após uma reinicialização) www.google.com
mas não google.com
porque o destino é considerado literalmente, como um todo; Portanto, a última regra se aplica somente a uma solicitação de conexão direcionada exclusivamente a google.com
.
Sua meta de bloquear domínios inteiros pode ser obtida teoricamente de diversas maneiras (talvez além de conjuntos de segurança de rede proprietários), mesmo que você não possua um servidor separado; dois destes:
-
Execução de um servidor DNS local (mesmo na mesma máquina com Windows XP ou em outra máquina que você pode vincular à rede local, executando Linux ou Windows) e instruindo-o a redirecionar para outro host qualquer solicitação dirigida para domínios proibidos e encaminhar qualquer outra coisa para DNS externo (ISP?). Veja BIND , um servidor DNS muito popular e de código aberto.
Você serviço de DNS local se tornará o servidor DNS padrão na configuração de rede do Windows, que é imutável por usuários sem privilégios. Se "solicitações incorretas" forem redirecionadas para o host local, essa solução terá o efeito de levar ao status "página de carregamento de erro". -
Executando um servidor proxy local configurado para redirecionar para uma página de erro cada solicitação originalmente direcionada para os domínios proibidos.
Cada navegador diferente não requer muito trabalho para ser configurado, de maneira livre de adulterações, para não se conectar diretamente à Web, mas sim para conectar-se ao servidor proxy local. Melhor é se você pode executar o servidor proxy em um ambiente de rede local onde você pode proibir (via regras de firewall / roteamento) acesso direto à web, exceto o próprio servidor proxy. Um bom proxy de código aberto, que funciona bem mesmo no Windows XP, é o squid .
Se as "solicitações incorretas" forem gerenciadas por um proxy, essa solução terá o efeito de levar a uma página de erro amigável (personalizável).
Ambos BIND e squid estão muito bem documentados na net.
Se você pode nos dizer mais sobre sua configuração (uma única máquina? Ou rede local, feita por quais máquinas? Qualquer servidor próximo? Configurável roteador?) Talvez possamos ajudá-lo melhor ...