Hur man redigerar Hosts-filen på macOS (Mac OS X)

Din Macs värdfil är ett litet men viktigt textdokument som har förmågan att mappa värdnamn till specificerade IP-adresser.

Medan det moderna Internet använder en mängd olika offentliga och privata DNS-servrar för att kartlägga IP-adresser, är värdfilen ett praktiskt sätt att åsidosätta dessa DNS-servrar, vilket gör att du manuellt kan peka en webbadress till den önskade IP-adressen eller blockera åtkomst till en webbplatsen helt och hållet genom att peka på en oanvänd eller intern IP-adress.

Låt oss ta en snabb titt på hur man redigerar Mac Hosts-filen på macOS.

Hur du redigerar din Mac Hosts-fil med textredigering

Det finns två primära sätt att redigera hosts-filen i Mac OS X.

Den första är att använda TextEdit eftersom hosts-filen är ett vanligt textdokument. Du kan dock inte öppna filen direkt eftersom den finns i ett skyddat område av filsystemet. Istället måste vi kopiera filen till en oskyddad plats, som skrivbordet, redigera den och sedan kopiera tillbaka den.

  • För att hitta hosts-filen, öppna Finder, som du kan komma åt genom att klicka på skrivbordet, smiley face finderen längst ned till vänster på skärmen, eller genom att trycka på cmd + Mellanslag + Finder.
  • Välj nu rullgardinsmenyn Gå.

3. Välj sedan Gå till mapp på menyn.

4. I rutan anger du ”/private/etc/hosts” i rutan och trycker på Retur.

5. Ett nytt Finder-fönster öppnas och din Macs värdfil kommer att väljas. Klicka och dra den ut från Finder-fönstret och släpp den på skrivbordet.

För att öppna den, dubbelklicka helt enkelt och den kommer att visa filens innehåll i TextEdit (eller den textredigerare du väljer).

Blockera IP-adresser

Som standard är filen /etc/hosts relativt enkel. Den innehåller ett antal rader med beskrivande text som ”kommenteras ut” med tecknet pund eller nummer (även kallat pund eller hashtag) (#).

Alla rader som börjar med ett #-tecken är en kommentar och läses inte av filen /etc/hosts. För varje rad ignoreras all text efter pundtecknet av datorn, vilket gör det till ett bra sätt att lägga till anteckningar och beskrivningar till dina filer. Den innehåller också standard-IP-värden för localhost och broadcasthost. För att redigera filen lägger du till dina egna rader efter broadcasthost.

Förutom att testa nyutvecklade webbplatser och migrering av webbhotell, är en annan anledning att redigera värdfilen att blockera åtkomst till specifika webbplatser.

I vårt exempel kommer vi att låtsas att datorn vi använder är en enhet som vi vill använda uteslutande för arbetet, och inte tillåter oss själva att distraheras av Facebook på vår arbetsmaskin.

För att göra detta, skriv den IP-adress du vill tilldela, följt av två flikar och värdnamnet. I vårt fall vill vi blockera Facebook så vi mappar www.facebook.com till 0.0.0.0 vilket, som en ogiltig IP-adress, kommer att resultera i ett fel.

Nu när vi försöker gå till www.facebook.com från vår Mac kommer webbläsaren inte att ladda sidan, vilket förhoppningsvis uppmuntrar oss att komma tillbaka till jobbet!

Omdirigera webbadresser

Alternativt kan du ange IP-adressen för en giltig webbplats istället för 0.0.0.0, vilket kommer att resultera i att användare som försöker komma åt Facebook omdirigeras till den webbplats du väljer.

  • För att fastställa en webbplatss IP-adress kan du använda dig av kommandot dig, som är standard med macOS. För att gräva sidan via Terminal öppnar vi helt enkelt Terminal och kör sedan kommandot dig på URL, som sedan returnerar IP-adressen som utdata.
  • Skriv nu ”$ dig www.techjunkie.com + short 104.25.27.105”

Obs: Det korta alternativet + håller utdata till just den information vi behöver, vilket är IP-adressen.

3. Anteckna IP-adressen som returneras och använd den i din Mac-värdfilmappning. Till exempel returnerar The New York Times webbplats en IP-adress på 170.149.172.130. Om vi ​​mappar det till Facebook i vår värdfil, varje gång någon som använder Mac försöker gå till Facebook, kommer de att se New York Times laddas istället.

Obs: Många webbplatser tillåter inte att du mappar ett domännamn till den IP-adress som för närvarande är mappad till webbplatsen, så du får ett säkerhetsfel när du försöker.

4. Du kan lägga till så många poster i värdfilen du vill genom att ange nya mappningar på varje rad. När du har gjort dina önskade ändringar i hosts-filen, spara den på dess nuvarande plats på skrivbordet.

5. Dra och släpp sedan värdfilen från skrivbordet tillbaka till sin ursprungliga plats på /private/etc. Om du har stängt Finder-fönstret som pekar på den här katalogen, använd helt enkelt kommandot Finder > Gå > Gå till mapp, diskuterat ovan, för att öppna den igen.

6. När du släpper tillbaka hosts-filen på sin ursprungliga plats kommer macOS att fråga dig vad du ska göra med den omodifierade hosts-filen som redan finns där. Välj Ersätt och ange sedan ditt administrativa användarlösenord för att autentisera överföringen.

Med den modifierade värdfilen nu på plats, starta din webbläsare för att testa ändringarna.

Spola din DNS-cache

I de flesta fall bör den nya mappningen fungera omedelbart, men om du inte ser det korrekta beteendet kan du behöva tömma din DNS-cache, vilket tvingar webbläsaren att läsa från din hosts-fil för att fastställa mappningen.

  • För att tömma DNS-cachen på din Mac, öppna Terminal och använd följande kommando (sudo gör att du kan köra det här kommandot som administratör för din maskin):
  • Skriv nu ”sudo killall -HUP mDNSResponder” och tryck på Retur. Obs: Du måste ange ditt administratörslösenord för att utföra detta kommando.
  • För att få din Mac att rensa din DNS-cache, bekräfta sedan att den har rensat din cache genom att eka en bekräftelse, skriv in dessa två kommandon åtskilda av ett semikolon som visas här: ”sudo killall -HUP mDNSResponder;säg att DNS-cachen har tömts”

Din Mac kommer sedan genom högtalarna och säger ”DNS-cache har tömts.”

Hur du redigerar din Mac Hosts-fil i terminal med Nano

Stegen i föregående avsnitt är enkla nog, men om du vill undvika att kopiera hosts-filen kan du redigera den direkt i Terminal med hjälp av UNIX Nano Text Editor, som är inbyggd i macOS.

  • För att komma igång, starta Terminal, skriv följande kommando och tryck på Retur. Som med alla sudo-kommandon, måste du också ange ditt administratörslösenord för att köra det: ”sudo nano /private/etc/hosts”

2. Du kommer nu att se hosts-fil öppna i Nano-redigeraren eller vim eller annan valfri redigerare. För att navigera och redigera filen i Nano, använd piltangenterna på ditt tangentbord.

3. Precis som vi gjorde med TextEdit-metoden ovan kan vi lägga till, redigera eller ta bort värdnamnsmappningar efter behag. Eftersom vi lanserade Nano med sudo, kommer alla ändringar att autentiseras och sparas direkt i den ursprungliga hosts-filen, utan att behöva kopiera den utanför dess hemkatalog.

4. När du är klar med ändringarna trycker du på Ctrl-X för att avsluta redigeraren, Y för att spara och på Return för att skriva över den befintliga värdfilen.

Som vi nämnde tidigare, se till att tömma din DNS-cache om du märker att dina nya mappningar inte fungerar som de ska.

Våra exempel nämnde blockering och omdirigering av distraherande webbplatser i en arbetsmiljö, men du kan också använda dessa steg för att manuellt blockera åtkomst till skadliga webbplatser och, naturligtvis, även annan användning.

Om du någonsin gör ett misstag och du inte är säker på hur du åtgärdar det, kan du alltid återställa standardvärdens filinnehåll genom att använda en av metoderna ovan för att ange följande standardinformation:

##
# Värddatabas
#
# localhost används för att konfigurera loopback-gränssnittet
# när systemet startar. Ändra inte denna post.
##
127.0.0.1 lokal värd
255.255.255.255 broadcasthost::1 lokal värd
fe80::1%lo0 lokal värd

Slutgiltiga tankar

Att veta hur man redigerar värdfilen på macOS erbjuder ett bekvämt sätt att åsidosätta DNS-servrar och manuellt peka en webbadress till en ny IP-adress eller blockera åtkomst, och genom att följa stegen ovan kan du utföra denna uppgift mycket snabbt.

Vad är anledningen till att du vill redigera din Macs värdfil? Hur gick det till? Berätta för oss om det i kommentarerna nedan!