Eu suponho que com o arquivo hosts você está falando sobre / etc / hosts ou é um equivalente específico, se não, minha resposta não terá qualquer valor.
Primeiro, você tem sorte, pois não se importa (ou, corretamente, sabe) nada sobre protocolos. o arquivo hosts é apenas sobre nomes de host (ou domínios).
Em segundo lugar, você é azar. Não há como recuperar todos os hosts existentes em um domínio específico. Na verdade, os nomes podem ser dinâmicos e não precisam existir antes de serem consultados.
Para bloquear qualquer coisa por trás de example.com, você tem duas opções:
-
Execute seu próprio servidor DNS local, com um registro para * .foobar.com. e recursing everthing else para o DNS real.
-
Sniff no tráfego de DNS, grep em todas as solicitações de foobar.com. e adicione dinamicamente todos os rótulos encontrados dessa maneira no seu arquivo de hosts. este só terá efeito depois de algum tempo, por isso não é à prova de bala, e será muito difícil de corrigir.
2.) é besteira.
1.) é a maneira de fazer isso. É o jeito que todos na necessidade usam.
A execução de seu próprio DNS não é ciência de foguetes, e há muitos recursos amigáveis na rede. Tente pesquisar por "bind howto".
Mas, tire um minuto e reconsidere seus objetivos.
Se você quiser proibir algum programa de telefonar para casa, uma quantidade moderada de farejamento de tráfego provavelmente revelará qualquer nome de host que ele usar e você poderá colocá-lo no arquivo de hosts manualmente.
Por outro lado, se você quiser impedir que os usuários (humanos) assistam ao youporn, não se preocupe, eles provavelmente são mais espertos do que você e irão contornar suas ações mais rápido do que você pode implantá-los.