Na internetu se nekomunikuje s doménami, ale s IP adresami. Doménové jméno se používá jenom jako lidsky čitelný název, který si počítač převede právě na IP adresu. Soubor hosts je nejstarší způsob převodu doménových názvů na IP adresy a systém ho obvykle používá přednostně – pokud tam doménové jméno najde, dál už se ho překládat nepokouší. Aplikace ale ani nemusí používat systémové funkce a může dotaz na DNS server poslat sama, pak na ní tenhle soubor nebude mít vliv.
Souborem hosts tedy určitě nelze zablokovat nějakou doménu, maximálně jím můžete upravit překlad daného doménového jména pro aplikace, které ten soubor využívají.
Blokovat komunikaci s nějakou doménou obecně ani nelze, protože komunikace se navazuje s IP adresou a vy nevíte, jestli aplikace tu IP adresu získala tím, že si předtím přeložila nějaké doménové jméno.
Blokovat komunikaci s určitým doménovým jménem by šlo u některých protokolů, kde je doménové jméno součástí dat přenášených protokolem. To bychom ale museli vědět, o co se vlastně snažíte. Řešením by také mohlo být použít SOCKS5 proxy a zakázat navazování spojení na IP adresy, povolit jen spojení na základě DNS názvu. Ale ne každá aplikace podporuje SOCKS5 proxy.