Jak edytować plik hosts w systemie macOS (Mac OS X)

Jak edytować plik hosts w systemie macOS (Mac OS X)

Plik hostów komputera Mac to mały, ale ważny dokument tekstowy, który umożliwia mapowanie nazw hostów na określone adresy IP.

Podczas gdy współczesny Internet wykorzystuje wiele publicznych i prywatnych serwerów DNS do rozwiązywania adresów IP, plik hosts jest wygodnym sposobem na obejście tych serwerów DNS, umożliwiając ręczne wskazanie adresu witryny internetowej na żądany adres IP lub zablokowanie dostępu do witryny , wskazując na nieużywany lub wewnętrzny adres IP.

Rzućmy okiem na to, jak edytować plik hosts Mac w systemie macOS.

Jak edytować plik hostów Mac za pomocą edycji tekstu

Istnieją dwa główne sposoby edytowania pliku hosts w systemie Mac OS X.

Po pierwsze, z TextEdit, ponieważ plik hosts jest zwykłym dokumentem tekstowym. Nie można jednak otworzyć pliku bezpośrednio, ponieważ znajduje się on w chronionym obszarze systemu plików. Zamiast tego musimy skopiować plik do niezabezpieczonej lokalizacji, takiej jak pulpit, edytować go, a następnie skopiować z powrotem.

  1. Aby znaleźć plik hosts, otwórz Finder, do którego można uzyskać dostęp, klikając pulpit, wyszukiwarkę emoji w lewym dolnym rogu ekranu lub naciskając cmd + spację + Finder .
  2. Teraz wybierz menu rozwijane Idź.

3. Następnie wybierz z menu Przejdź do folderu .

4. W polu wpisz „/private/etc/hosts” i kliknij „Zwróć” .

5. Otworzy się nowe okno Findera i zostanie wybrany plik hosts komputera Mac. Kliknij i przeciągnij go z okna Findera na pulpit.

Blokuj adresy IP

Domyślnie plik /etc/hosts jest stosunkowo prosty. Zawiera kilka wierszy tekstu opisowego, które są „zakomentowane” znakiem krzyżyka lub cyfry (nazywanym również hashtagiem lub hashtagiem) (#).

Każda linia rozpoczynająca się znakiem # jest komentarzem i nie jest odczytywana przez plik /etc/hosts. W każdym wierszu każdy tekst po znaku krzyżyka jest ignorowany przez komputer, dzięki czemu jest to dobry sposób na dodawanie notatek i opisów do plików. Zawiera również domyślne wartości IP dla hosta lokalnego i hosta rozgłoszeniowego. Aby edytować plik, dodasz własne wiersze po broadcasthost.

Oprócz testowania nowo opracowanych stron internetowych i migracji hostingu, kolejnym powodem edycji pliku hosts jest zablokowanie dostępu do niektórych stron internetowych.

W naszym przykładzie będziemy udawać, że używany przez nas komputer jest urządzeniem, którego chcemy używać wyłącznie do pracy, nie pozwalając, by Facebook na naszej maszynie do pracy rozpraszał nas.

Aby to zrobić, wprowadź adres IP, który chcesz przypisać, a następnie dwie karty i nazwę hosta. W naszym przypadku chcemy zablokować Facebooka, dlatego zmapujemy www.facebook.com na 0.0.0.0, co jako nieprawidłowy adres IP spowoduje błąd.

Przekieruj adresy internetowe

Alternatywnie możesz wprowadzić adres IP prawidłowej witryny zamiast 0.0.0.0, co spowoduje, że użytkownicy próbujący uzyskać dostęp do Facebooka będą przekierowywani na wybraną przez Ciebie witrynę.

  1. Aby określić adres IP witryny, możesz użyć polecenia dig, które jest standardem w systemie macOS. Aby przekopać witrynę przez terminal, po prostu otwieramy terminal, a następnie uruchamiamy polecenie dig na adresie URL, który następnie zwraca adres IP jako wyjście.
  2. Teraz wpisz „ $ dig www.techjunkie.com + short 104.25.27.105

Notatka. Parametr +short zapisuje na wyjściu tylko te informacje, których potrzebujemy, a mianowicie adres IP.

3. Zapisz zwrócony adres IP i użyj go w mapowaniu plików hostów Mac. Na przykład witryna The New York Times zwraca adres IP 170.149.172.130. Jeśli zmapujemy to na Facebooka w naszym pliku hosts, za każdym razem, gdy ktoś używający komputera Mac spróbuje przejść do Facebooka, zamiast tego zobaczy ładowanie The New York Times.

4. Możesz dodać dowolną liczbę wpisów do pliku hosts, wprowadzając nowe mapowania w każdym wierszu. Po dokonaniu niezbędnych zmian w pliku hosts zapisz go w bieżącej lokalizacji na pulpicie.

5. Następnie przeciągnij plik hosts z pulpitu z powrotem do jego pierwotnej lokalizacji w /private/etc . Jeśli zamknąłeś okno Findera, które wskazywało na ten katalog, po prostu użyj Findera> Idź> Idź do folderu polecenie powyżej, aby otworzyć je ponownie.

6. Gdy przeciągniesz plik hosts z powrotem do jego pierwotnej lokalizacji, macOS zapyta, co zrobić z niezmodyfikowanym plikiem hosts, który już istnieje. Wybierz Zamień , a następnie wprowadź hasło administratora do uwierzytelniania migracji.

Teraz, gdy zmodyfikowany plik hosts jest na miejscu, uruchom przeglądarkę internetową, aby zweryfikować zmiany.

Opróżnij pamięć podręczną DNS

W większości przypadków nowe mapowanie powinno działać od razu, ale jeśli nie widzisz prawidłowego zachowania, może być konieczne opróżnienie pamięci podręcznej DNS przez odczytanie przez przeglądarkę pliku hosts w celu określenia mapowania.

  1. Aby wyczyścić pamięć podręczną DNS na komputerze Mac, otwórz terminal i użyj następującego polecenia (sudo pozwala uruchomić to polecenie jako administrator na komputerze):
  2. Teraz wpisz „ sudo killall -HUP mDNSResponder” i naciśnij klawisz „ Return ”. Notatka. Aby uruchomić to polecenie, musisz wprowadzić hasło administratora.
  3. Aby komputer Mac wyczyścił pamięć podręczną DNS, a następnie ponownie potwierdził, że wyczyścił pamięć podręczną, wprowadź te dwa polecenia oddzielone średnikiem, jak pokazano tutaj: „ sudo killall -HUP mDNSResponder;say DNS cache has been flushed

Następnie komputer Mac zabrzmi przez głośniki i powie „Pamięć podręczna DNS wyczyszczona”.

Jak edytować plik hostów Mac w terminalu za pomocą Nano

Kroki opisane w poprzedniej sekcji są dość proste, ale jeśli chcesz uniknąć kopiowania pliku hosts, możesz go edytować bezpośrednio w terminalu za pomocą edytora tekstu UNIX Nano wbudowanego w macOS.

  1. Aby rozpocząć, uruchom Terminal, wpisz następujące polecenie i naciśnij klawisz Enter. Podobnie jak w przypadku wszystkich poleceń sudo, aby je wykonać, musisz również wprowadzić hasło administratora "sudo nano /private/etc/hosts:
Edytuj plik hostów Nano

2. Teraz zobaczysz plik hosts otwarty w Nano , vimie lub innym wybranym edytorze. Użyj klawiszy strzałek na klawiaturze , aby nawigować i edytować plik w Nano .

3. Podobnie jak w przypadku powyższej metody TextEdit, możemy dowolnie dodawać, edytować lub usuwać mapowania nazw hostów. Ponieważ rozpoczęliśmy Nano z sudo, wszelkie zmiany zostaną uwierzytelnione i zapisane bezpośrednio w oryginalnym pliku hosts, bez konieczności kopiowania go poza jego katalog domowy.

4. Po zakończeniu wprowadzania zmian naciśnij Control-X , aby wyjść z edytora, Y , aby zapisać, i Return , aby nadpisać istniejący plik hosts.

Jak wspomnieliśmy wcześniej, wyczyść pamięć podręczną DNS, jeśli zauważysz, że nowe mapowania nie działają poprawnie.

Nasze przykłady wspominają o blokowaniu i przekierowywaniu rozpraszających witryn w środowisku produkcyjnym, ale możesz również użyć tych kroków, aby ręcznie zablokować dostęp do złośliwych witryn i oczywiście w innych celach.

Jeśli kiedykolwiek popełnisz błąd i nie wiesz, jak go naprawić, zawsze możesz przywrócić domyślną zawartość pliku hosts, korzystając z jednej z powyższych metod, aby wprowadzić następujące domyślne informacje:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost::1 localhost
fe80::1%lo0 localhost

Końcowe przemyślenia

Wiedza o tym, jak edytować plik hosts w systemie macOS, oferuje wygodny sposób na obejście serwerów DNS i ręczne skierowanie witryny do nowego adresu IP lub zablokowanie dostępu, a wykonując powyższe kroki, możesz wykonać to zadanie bardzo szybko.

Jeśli jesteś użytkownikiem komputera Mac i uważasz ten artykuł za pomocny, możesz zapoznać się z innymi przewodnikami TechJunkie, w tym Jak znaleźć dokładny model procesora komputera Mac i Jak zresetować DNS na komputerze Mac Mojave.

Jaki jest powód, dla którego próbujesz edytować plik hosts komputera Mac? Jak to działało? Opowiedz nam o tym w komentarzach poniżej!

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *