Il file "hosts" è una specie di "mappa" che dice al vostro computer "dove" andare a cercare un particolare dominio web, ed ha la precedenza sui server DNS (esterni), perchè è un indirizzamento che avviene in locale, prima che l'eventuale richiesta di raggiungere un dominio "esca" dalla vostra casa attraverso la connessione ad internet.
Quando digitate un indirizzo URL, o quando selezionate un link dai "preferiti" del vostro browser, non serve che sappiate l'indirizzo IP della macchina su cui risiede quel dominio, perchè ci penserà il server DNS usato dalla vostra connessione a portarvici.
Ma se il dominio digitato o selezionato dal link è contenuto nel file hosts allora il vostro sistema operativo sarà forzato a cercarlo sull'indirizzo IP indicato nel file. Se presso tale indirizzo non viene trovato quel dominio, allora non avverrà nessuna comunicazione.
Per questo motivo, per bloccare un sito, è sufficiente attribuirgli l'indirizzo IP locale del vostro stesso PC, ovvero 127.0.0.1, anche detto indirizzo di "loopback" perchè la richiesta torna al mittente senza nemmeno raggiungere il vostro router. Semplice, no?
Per modificare il file hosts è prima necessario trovarlo. Se siete su Windows, siccome si tratta di un file di sistema e quindi nascosto, dovrete prima entrare nelle opzioni di visualizzzione delle cartelle e disattivare "Nascondi file protetti di sistema". Poi potrete fare una ricerca per un file che si chiama "hosts" e che non ha nessuna estensione.
In Windows 9x/Me si trova direttamente nella cartella "WINDOWS". In Windows XP o successivo si trova generalmente al percorso "WINDOWS\SYSTEM32\DRIVERS\ETC\". In Linux e MacOS dovrebbe trovarsi nella cartella "ETC".
Una volta trovato, apritelo con il blocco note (o altro editor di testo). Su Windows Vista e successivi potrebbero servire i privilegi di amministrazione per modificare tale file.
Ecco come appare il file hosts standard di Windows:
Come vedete, dopo le prime righe di spiegazione (precedute dal simbolo cancelletto che serve a dire al sistema di ignorare tali righe) soltanto un singolo indirizzo si trova nell'elenco, ed è quello che attribuisce l'indirizzo locale all'URL generico "localhost".
Sotto di esso potete aggiungere i domini che intendete bloccare, usando lo stesso criterio della prima riga. Se ad esempio voleste bloccare questo forum vi basterebbe scrivere "127.0.0.1 forum.chinafonini.it" sulla prima riga libera, chiudere il file salvandolo ed ecco che non potrete più visitare questo sito: il vostro browser vi direbbe che l'indirizzo è impossibile da raggiungere.
Ovviamente non ha molto senso bloccare dei siti web che potete semplicemente evitare di visitare, ma il file hosts può essere utile per bloccare invece quel traffico che avviene invece senza il vostro consenso, come può essere quello generato da una applicazione o da un virus sul vostro PC. Per questo motivo è sempre utile avere comunque un firewall che ci avvisi di tale traffico, in modo da poterlo poi bloccare.
Tanto per riprendere un esempio fatto precedentemente, se volete che Firefox la smetta di collegarsi a vostra insaputa con il dominio "sb-ssl.google.com" vi basterà quindi aprire il file hosts e aggiungere la seguente riga:
- {L_CODE}: {L_SELECT_ALL_CODE}
127.0.0.1 sb-ssl.google.com
Chiudete il file salvandolo e il gioco è fatto.