Come modificare il file host su macOS (Mac OS X)

Il file hosts del tuo Mac è un piccolo ma importante documento di testo che ha la capacità di mappare i nomi host a indirizzi IP specificati.

Mentre Internet moderno utilizza una varietà di server DNS pubblici e privati ​​per mappare gli indirizzi IP, il file hosts è un modo pratico per sovrascrivere quei server DNS, consentendo di puntare manualmente un indirizzo di un sito Web all’indirizzo IP desiderato o bloccare l’accesso a un sito del tutto puntando a un indirizzo IP interno o inutilizzato.

Diamo una rapida occhiata a come modificare il file hosts del Mac su macOS.

Come modificare il file host del tuo Mac con la modifica del testo

Esistono due modi principali per modificare il file hosts in Mac OS X.

Il primo è usare TextEdit poiché il file hosts è un documento di testo normale. Tuttavia, non è possibile aprire il file direttamente poiché risiede in un’area protetta del file system. Invece, dobbiamo copiare il file in una posizione non protetta, come il desktop, modificarlo e quindi copiarlo di nuovo.

  • Per trovare il file hosts, apri il Finder, a cui puoi accedere facendo clic sul desktop, il cercatore di faccine sorridente in basso a sinistra dello schermo o premendo cmd + barra spaziatrice + Finder.
  • Ora, seleziona il menu a discesa Vai.

3. Quindi, seleziona Vai alla cartella dal menu.

4. Nella casella, immettere “/private/etc/hosts” nella casella e premere Invio.

5. Si aprirà una nuova finestra del Finder e verrà selezionato il file hosts del tuo Mac. Fai clic e trascinalo fuori dalla finestra del Finder e rilascialo sul desktop.

Per aprirlo, fai semplicemente doppio clic e visualizzerà il contenuto del file in TextEdit (o nell’editor di testo di tua scelta).

Blocca indirizzi IP

Per impostazione predefinita, il file /etc/hosts è relativamente semplice. Contiene un numero di righe di testo descrittivo che sono “commentate” con il cancelletto o il numero (chiamato anche cancelletto o hashtag) (#).

  Come ottenere Google Assistant su macOS

Qualsiasi riga che inizia con un segno # è un commento e non viene letta dal file /etc/hosts. Per ogni riga, qualsiasi testo dopo il cancelletto viene ignorato dal computer, rendendolo un buon modo per aggiungere note e descrizioni ai tuoi file. Contiene anche valori IP predefiniti per localhost e broadcasthost. Per modificare il file, aggiungerai le tue righe dopo broadcasthost.

Oltre a testare siti Web di nuova concezione e migrazioni di hosting Web, un altro motivo per modificare il file hosts è bloccare l’accesso a siti Web specifici.

Nel nostro esempio, faremo finta che il computer che stiamo utilizzando sia un dispositivo che vogliamo utilizzare esclusivamente per lavoro, senza lasciarci distrarre da Facebook sulla nostra macchina di lavoro.

Per fare ciò, digita l’indirizzo IP che desideri assegnare, seguito da due schede e dal nome host. Nel nostro caso, vogliamo bloccare Facebook, quindi mapperemo www.facebook.com a 0.0.0.0 che, come indirizzo IP non valido, risulterà in un errore.

Ora, ogni volta che proviamo ad andare su www.facebook.com dal nostro Mac, il browser Web non riuscirà a caricare la pagina, incoraggiandoci, si spera, a tornare al lavoro!

Reindirizzare gli indirizzi web

In alternativa, puoi inserire l’indirizzo IP di un sito valido invece di 0.0.0.0, il che farà sì che gli utenti che tentano di accedere a Facebook vengano indirizzati al sito di tua scelta.

  • Per determinare l’indirizzo IP di un sito Web, puoi utilizzare il comando dig, che viene fornito di serie con macOS. Per scavare nel sito tramite Terminale, apriamo semplicemente Terminale e quindi eseguiamo il comando dig sull’URL, che restituirà l’indirizzo IP come output.
  • Ora, digita “$ dig www.techjunkie.com + short 104.25.27.105”

Nota: l’opzione + short mantiene l’output solo sulle informazioni di cui abbiamo bisogno, che è l’indirizzo IP.

3. Prendere nota dell’indirizzo IP restituito e utilizzarlo nella mappatura dei file host del Mac. Ad esempio, il sito Web del New York Times restituisce un indirizzo IP di 170.149.172.130. Se lo mappiamo a Facebook nel nostro file hosts, ogni volta che qualcuno che usa il Mac tenta di andare su Facebook, vedrà invece il caricamento del New York Times.

  Come eseguire i comandi del terminale da uno script su macOS

Nota: molti siti Web non ti consentono di mappare un nome di dominio all’indirizzo IP attualmente mappato sul sito, quindi riceverai un errore di sicurezza quando provi.

4. Puoi aggiungere tutte le voci che desideri al file hosts inserendo nuove mappature su ciascuna riga. Dopo aver apportato le modifiche desiderate al file hosts, salvalo nella posizione corrente sul desktop.

5. Quindi, trascina e rilascia il file hosts dal desktop nella sua posizione originale in /private/etc. Se hai chiuso la finestra del Finder che punta a questa directory, usa semplicemente il comando Finder > Vai > Vai alla cartella, discusso sopra, per riaprirla.

6. Quando rilasci il file hosts nella sua posizione originale, macOS ti chiederà cosa fare con il file hosts non modificato che è già lì. Scegli Sostituisci, quindi inserisci la password dell’utente amministrativo per autenticare il trasferimento.

Con il file hosts modificato ora attivo, avvia il browser Web per testare le modifiche.

Svuota la tua cache DNS

Nella maggior parte dei casi, la nuova mappatura dovrebbe funzionare immediatamente, ma se non vedi il comportamento corretto, potrebbe essere necessario svuotare la cache DNS, costringendo il browser a leggere dal file hosts per determinare la mappatura.

  • Per svuotare la cache DNS sul tuo Mac, apri Terminale e usa il comando seguente (sudo ti consente di eseguire questo comando come amministratore della tua macchina):
  • Ora, digita “sudo killall -HUP mDNSResponder” e premi Invio. Nota: per eseguire questo comando dovrai inserire la tua password di amministratore.
  • Per fare in modo che il tuo Mac svuoti la cache DNS, quindi conferma di aver svuotato la cache facendo eco a una conferma, inserisci questi due comandi separati da un punto e virgola come mostrato qui: “sudo killall -HUP mDNSResponder; dire che la cache DNS è stata svuotata”

Il tuo Mac passerà quindi attraverso gli altoparlanti dicendo “La cache DNS è stata svuotata”.

  Come disattivare l'audio di un'app su macOS

Come modificare il file host del tuo Mac nel terminale con Nano

I passaggi nella sezione precedente sono abbastanza semplici, ma se vuoi evitare di copiare il file hosts puoi modificarlo direttamente nel Terminale usando UNIX Nano Text Editor, che è integrato in macOS.

  • Per iniziare, avvia Terminal, digita il seguente comando e premi Invio. Come con tutti i comandi sudo, dovrai anche inserire la tua password di amministratore per eseguirlo: “sudo nano /private/etc/hosts“

2. Ora vedrai il file hosts apri nell’editor Nano o in vim o in un altro editor a tua scelta. Per navigare e modificare il file in Nano, usa i tasti freccia sulla tastiera.

3. Proprio come abbiamo fatto con il metodo TextEdit sopra, possiamo aggiungere, modificare o rimuovere le mappature dei nomi host a piacimento. Poiché abbiamo lanciato Nano utilizzando sudo, tutte le modifiche verranno autenticate e salvate direttamente nel file hosts originale, senza la necessità di copiarlo al di fuori della sua home directory.

4. Quando hai finito di apportare modifiche, premi Control-X per uscire dall’editor, Y per salvare e Invio per sovrascrivere il file hosts esistente.

Come accennato in precedenza, assicurati di svuotare la cache DNS se noti che i tuoi nuovi mapping non funzionano correttamente.

I nostri esempi hanno menzionato il blocco e il reindirizzamento di siti che distraggono in un ambiente di lavoro, ma puoi anche utilizzare questi passaggi per bloccare manualmente l’accesso a siti Web dannosi e, naturalmente, anche altri usi.

Se commetti un errore e non sei sicuro di come risolverlo, puoi sempre ripristinare il contenuto del file hosts predefinito utilizzando uno dei metodi sopra per inserire le seguenti informazioni predefinite:

##
# Database host
#
# localhost viene utilizzato per configurare l’interfaccia di loopback
# all’avvio del sistema. Non cambiare questa voce.
##
127.0.0.1 host locale
255.255.255.255 host di trasmissione::1 host locale
fe80::1%lo0 host locale

Pensieri finali

Sapere come modificare il file hosts su macOS offre un modo conveniente per sovrascrivere i server DNS e indirizzare manualmente l’indirizzo di un sito Web a un nuovo indirizzo IP o bloccare l’accesso e, seguendo i passaggi descritti sopra, puoi eseguire questa attività molto rapidamente.

Qual è il motivo per cui stai cercando di modificare il file hosts del tuo Mac? Come ha funzionato? Per favore, raccontacelo nei commenti qui sotto!