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 korzysta z różnych publicznych i prywatnych serwerów DNS do mapowania adresów IP, plik hosts jest wygodnym sposobem na obejście tych serwerów DNS, umożliwiając ręczne wskazanie adresu strony internetowej na żądany adres IP lub zablokowanie dostępu do całej witryny, wskazując na nieużywany lub wewnętrzny adres IP.
Rzućmy okiem na to, jak edytować plik hosts Mac w systemie macOS.
Spis treści:
Jak edytować plik hostów Mac za pomocą edycji tekstu
Istnieją dwa podstawowe sposoby edytowania pliku hosts w systemie Mac OS X.
Pierwszym z nich jest użycie 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.
- Aby znaleźć plik hosts, otwórz Finder, do którego możesz uzyskać dostęp, klikając pulpit, wyszukiwarkę buźki w lewym dolnym rogu ekranu lub naciskając cmd + spację + Finder.
- Teraz wybierz menu rozwijane Idź.
3. Następnie wybierz z menu Idź do folderu.
4. W polu wpisz „/private/etc/hosts” i naciśnij Return.
5. Otworzy się nowe okno Findera i zostanie wybrany plik hosts komputera Mac. Kliknij i przeciągnij go z okna Findera i upuść na pulpicie.
Aby go otworzyć, po prostu kliknij dwukrotnie, a wyświetli zawartość pliku w TextEdit (lub wybranym edytorze tekstu).
Blokuj adresy IP
Domyślnie plik /etc/hosts jest stosunkowo prosty. Zawiera wiele wierszy tekstu opisowego, które są „zakomentowane” znakiem krzyżyka lub liczby (zwanej również krzyżykiem 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 localhost i broadcasthost. 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 określonych 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 nam rozpraszać się Facebookiem na naszej maszynie do pracy.
Aby to zrobić, wpisz adres IP, który chcesz przypisać, a następnie dwie zakładki i nazwę hosta. W naszym przypadku chcemy zablokować Facebooka, więc zmapujemy www.facebook.com na 0.0.0.0, co jako nieprawidłowy adres IP spowoduje błąd.
Teraz za każdym razem, gdy próbujemy przejść do www.facebook.com z naszego komputera Mac, przeglądarka internetowa nie załaduje strony, co miejmy nadzieję zachęci nas do powrotu do pracy!
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 zostaną przekierowani do wybranej witryny.
- Aby określić adres IP witryny, możesz użyć polecenia dig, które jest standardem w systemie macOS. Aby przekopać witrynę za pośrednictwem Terminala, po prostu otwieramy Terminal, a następnie uruchamiamy polecenie kopania na adresie URL, który zwróci adres IP jako wynik.
- Teraz wpisz „$ dig www.techjunkie.com + short 104.25.27.105”
Uwaga: opcja + short zachowuje dane wyjściowe tylko dla potrzebnych informacji, czyli adresu IP.
3. Zanotuj zwracany adres IP i używaj 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ś korzystający z Maca spróbuje przejść do Facebooka, zobaczy zamiast tego wczytanie The New York Times.
Uwaga: wiele witryn nie pozwala na mapowanie nazwy domeny na adres IP aktualnie mapowany na witrynę, więc przy próbie pojawi się błąd zabezpieczeń.
4. Możesz dodać dowolną liczbę wpisów do pliku hosts, wprowadzając nowe mapowania w każdym wierszu. Po wprowadzeniu żądanych zmian w pliku hosts zapisz go w bieżącej lokalizacji na pulpicie.
5. Następnie przeciągnij i upuść plik hosts z pulpitu z powrotem do jego pierwotnej lokalizacji w /private/etc. Jeśli zamknąłeś okno Findera wskazujące ten katalog, po prostu użyj Findera> Idź> Idź do folderu, omówione powyżej, aby je ponownie otworzyć.
6. Po upuszczeniu pliku hosts z powrotem w jego oryginalnej lokalizacji, macOS zapyta, co zrobić z niezmodyfikowanym plikiem hosts, który już tam jest. Wybierz opcję Zamień, a następnie wprowadź hasło administratora, aby uwierzytelnić transfer.
Po wprowadzeniu zmodyfikowanego pliku hosts uruchom przeglądarkę internetową, aby przetestować zmiany.
Opróżnij pamięć podręczną DNS
W większości przypadków nowe mapowanie powinno działać natychmiast, ale jeśli nie widzisz prawidłowego zachowania, konieczne może być opróżnienie pamięci podręcznej DNS, zmuszając przeglądarkę do odczytu z pliku hosts w celu określenia mapowania.
- Aby opróżnić pamięć podręczną DNS na komputerze Mac, otwórz Terminal i użyj następującego polecenia (sudo umożliwia uruchomienie tego polecenia jako administrator komputera):
- Teraz wpisz „sudo killall -HUP mDNSResponder” i naciśnij Return. Uwaga: Aby wykonać to polecenie, musisz wprowadzić hasło administratora.
- Aby komputer Mac wyczyścił pamięć podręczną DNS, a następnie potwierdź wyczyszczenie pamięci podręcznej, powtarzając potwierdzenie, wprowadź te dwa polecenia oddzielone średnikiem, jak pokazano tutaj: „sudo killall -HUP mDNSResponder; powiedzmy, że pamięć podręczna DNS została opróżniona”
Twój Mac przejdzie przez głośniki, mówiąc „Pamięć podręczna DNS została opróżniona”.
Jak edytować plik hostów Mac w terminalu za pomocą Nano
Kroki opisane w poprzedniej sekcji są dość łatwe, ale jeśli chcesz uniknąć kopiowania pliku hosts, możesz go edytować bezpośrednio w Terminalu za pomocą edytora tekstu UNIX Nano wbudowanego w system macOS.
- Aby rozpocząć, uruchom Terminal, wpisz następujące polecenie i naciśnij Return. Podobnie jak w przypadku wszystkich poleceń sudo, aby je wykonać, musisz również wprowadzić hasło administratora: „sudo nano /private/etc/hosts”
2. Zobaczysz teraz plik hosts otwórz w edytorze Nano, vimie lub innym wybranym przez siebie edytorze. Aby nawigować i edytować plik w Nano, użyj klawiszy strzałek na klawiaturze.
3. Podobnie jak w przypadku powyższej metody TextEdit, możemy dowolnie dodawać, edytować lub usuwać mapowania nazw hostów. Ponieważ uruchomiliśmy Nano za pomocą 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, pamiętaj o opróżnieniu pamięci podręcznej DNS, jeśli zauważysz, że nowe mapowania nie działają poprawnie.
Nasze przykłady wspominały o blokowaniu i przekierowywaniu rozpraszających witryn w środowisku pracy, ale możesz również użyć tych kroków, aby ręcznie zablokować dostęp do złośliwych witryn i oczywiście również do innych zastosowań.
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:
##
# Baza danych hosta
#
# localhost służy do konfiguracji interfejsu pętli zwrotnej
# podczas uruchamiania systemu. Nie zmieniaj tego wpisu.
##
127.0.0.1 host lokalny
255.255.255.255 host rozgłoszeniowy::1 host lokalny
fe80::1%lo0 lokalny host
Końcowe przemyślenia
Wiedza o tym, jak edytować plik hosts w systemie macOS, oferuje wygodny sposób zastępowania serwerów DNS i ręcznego wskazywania adresu witryny internetowej na nowy adres IP lub blokowania dostępu, a wykonując czynności opisane powyżej, możesz wykonać to zadanie bardzo szybko.
Jaki jest powód, dla którego chcesz edytować plik hosts komputera Mac? Jak to poszło? Opowiedz nam o tym w komentarzach poniżej!