Як редагувати файл Hosts в macOS (Mac OS X)

| | 0 Comments| 2:14 AM
Categories:

Файл hosts вашого Mac — це невеликий, але важливий текстовий документ, який має можливість зіставляти імена хостів із зазначеними IP-адресами.

Хоча сучасний Інтернет використовує різноманітні публічні та приватні DNS-сервери для відображення IP-адрес, файл hosts є зручним способом замінити ці DNS-сервери, дозволяючи вручну вказати адресу веб-сайту на потрібну IP-адресу або заблокувати доступ до сайту взагалі, вказуючи на невикористану або внутрішню IP-адресу.

Давайте швидко розглянемо, як редагувати файл хостів Mac на macOS.

Як редагувати файл хостів Mac за допомогою текстового редагування

У Mac OS X є два основних способи редагування файлу hosts.

Перший – це використання TextEdit, оскільки файл hosts є звичайним текстовим документом. Однак ви не можете відкрити файл безпосередньо, оскільки він знаходиться в захищеній області файлової системи. Замість цього нам потрібно скопіювати файл у незахищене місце, наприклад на робочий стіл, відредагувати його, а потім скопіювати назад.

  • Щоб знайти файл hosts, відкрийте Finder, до якого ви можете отримати доступ, клацнувши на робочому столі, пошук смайликів у нижньому лівому куті екрана або натиснувши cmd + пробіл + Finder.
  • Тепер виберіть спадне меню Go.

3. Потім виберіть у меню Перейти до папки.

4. У полі введіть «/private/etc/hosts» і натисніть «Повернути».

5. Відкриється нове вікно Finder і буде вибрано файл hosts вашого Mac. Клацніть і перетягніть його з вікна Finder і опустіть на робочий стіл.

Щоб відкрити його, просто двічі клацніть, і він відобразить вміст файлу в TextEdit (або текстовому редакторі на ваш вибір).

Блокувати IP-адреси

За замовчуванням файл /etc/hosts є відносно простим. Він містить ряд рядків описового тексту, які «прокоментовані» знаком фунта або числа (також званого фунтом або хештегом) (#).

Будь-який рядок, який починається зі знака #, є коментарем і не читається файлом /etc/hosts. Для кожного рядка будь-який текст після знака фунта ігнорується комп’ютером, що робить його хорошим способом додавати примітки та описи до ваших файлів. Він також містить значення IP за замовчуванням для localhost і broadcasthost. Щоб відредагувати файл, ви додасте власні рядки після broadcasthost.

  Як увімкнути інформаційну панель у macOS Mojave

Окрім тестування нещодавно розроблених веб-сайтів та міграції веб-хостингу, ще однією причиною редагування файлу hosts є блокування доступу до певних веб-сайтів.

У нашому прикладі ми зробимо вигляд, що комп’ютер, який ми використовуємо, є пристроєм, який ми хочемо використовувати виключно для роботи, не дозволяючи собі відволікатися на Facebook на нашій робочій машині.

Для цього введіть IP-адресу, яку потрібно призначити, а потім дві вкладки та ім’я хоста. У нашому випадку ми хочемо заблокувати Facebook, тому ми зіставимо www.facebook.com на 0.0.0.0, що, як недійсна IP-адреса, призведе до помилки.

Тепер, коли ми намагаємося перейти на www.facebook.com з нашого Mac, веб-браузер не зможе завантажити сторінку, сподіваючись, що спонукає нас повернутися до роботи!

Перенаправити веб-адреси

Крім того, ви можете ввести IP-адресу дійсного сайту замість 0.0.0.0, що призведе до того, що користувачі, які намагатимуться отримати доступ до Facebook, будуть спрямовані на сайт, який ви вибрали.

  • Щоб визначити IP-адресу веб-сайту, ви можете використовувати команду dig, яка є стандартною для macOS. Щоб копати сайт через термінал, ми просто відкриваємо термінал, а потім запускаємо команду dig на URL-адресі, яка потім повертає IP-адресу як вихід.
  • Тепер введіть “$ dig www.techjunkie.com + короткий 104.25.27.105”

Примітка. Опція + короткий зберігає вихід лише в потрібну інформацію, якою є IP-адреса.

3. Зверніть увагу на отриману IP-адресу та використовуйте її для зіставлення файлів хостів Mac. Наприклад, веб-сайт The New York Times повертає IP-адресу 170.149.172.130. Якщо ми зіставимо це з Facebook у нашому файлі hosts, щоразу, коли хтось, хто використовує Mac, спробує перейти до Facebook, замість цього завантажиться The New York Times.

Примітка. Багато веб-сайтів не дозволяють зіставити доменне ім’я з IP-адресою, яка в даний момент зіставлена ​​з сайтом, тому під час спроби ви отримаєте помилку безпеки.

  Переглядайте фільми тижня iTunes із панелі меню в macOS

4. Ви можете додати скільки завгодно записів до файлу hosts, ввівши нові зіставлення в кожному рядку. Після того, як ви внесли потрібні зміни до файлу hosts, збережіть його в поточному місці на робочому столі.

5. Потім перетягніть і скиньте файл hosts зі свого робочого столу назад у вихідне розташування /private/etc. Якщо ви закрили вікно Finder, яке вказує на цей каталог, просто скористайтеся командою Finder > Go > Go to Folder, описаною вище, щоб знову відкрити його.

6. Коли ви скинете файл hosts назад у вихідне розташування, macOS запитає вас, що робити з незміненим файлом hosts, який уже там. Виберіть «Замінити», а потім введіть пароль адміністратора, щоб підтвердити передачу.

Маючи модифікований файл hosts, запустіть веб-браузер, щоб перевірити зміни.

Очистіть кеш DNS

У більшості випадків нове зіставлення має запрацювати негайно, але якщо ви не бачите правильної поведінки, вам може знадобитися очистити кеш DNS, змусивши браузер читати з вашого файлу hosts, щоб визначити зіставлення.

  • Щоб очистити кеш DNS на вашому Mac, відкрийте термінал і скористайтеся такою командою (sudo дозволяє запустити цю команду як адміністратор вашого комп’ютера):
  • Тепер введіть «sudo killall -HUP mDNSResponder» і натисніть Return. Примітка: вам потрібно буде ввести пароль адміністратора, щоб виконати цю команду.
  • Щоб ваш Mac очистив кеш DNS, а потім підтвердьте, що він очищений кеш, повторивши підтвердження, введіть ці дві команди, розділені крапкою з комою, як показано тут: «sudo killall -HUP mDNSResponder;скажімо, кеш DNS очищено»

Після цього через динаміки з’явиться повідомлення: «Кеш DNS очищено».

Як відредагувати файл хостів Mac у терміналі за допомогою Nano

Дії в попередньому розділі досить прості, але якщо ви хочете уникнути копіювання файлу hosts, ви можете редагувати його безпосередньо в терміналі за допомогою текстового редактора UNIX Nano, вбудованого в macOS.

  • Щоб почати, запустіть Terminal, введіть таку команду та натисніть Return. Як і для всіх команд sudo, вам також потрібно буде ввести пароль адміністратора для його виконання: «sudo nano /private/etc/hosts»
  Як зупинити автоматичне розархівування файлів у Safari на macOS

2. Тепер ви побачите файл hosts відкрийте в редакторі Nano або vim або іншому редакторі на ваш вибір. Щоб переміщатися та редагувати файл у Nano, використовуйте клавіші зі стрілками на клавіатурі.

3. Так само, як ми зробили з методом TextEdit вище, ми можемо додавати, редагувати або видаляти зіставлення імен хостів за бажанням. Оскільки ми запустили Nano за допомогою sudo, будь-які зміни будуть перевірені та збережені безпосередньо в оригінальному файлі hosts, без необхідності копіювати його за межі домашнього каталогу.

4. Коли ви закінчите вносити зміни, натисніть Control-X, щоб вийти з редактора, Y, щоб зберегти, і Return, щоб перезаписати існуючий файл хостів.

Як ми згадували раніше, не забудьте очистити кеш DNS, якщо ви помітили, що ваші нові зіставлення не працюють належним чином.

У наших прикладах згадується блокування та переспрямування сайтів, що відволікають увагу в робочому середовищі, але ви також можете скористатися цими кроками, щоб вручну заблокувати доступ до шкідливих веб-сайтів і, звичайно, також інші види використання.

Якщо ви коли-небудь зробили помилку і не знаєте, як це виправити, ви завжди можете відновити вміст файлу hosts за замовчуванням, скориставшись одним із вищенаведених методів, щоб ввести таку інформацію за замовчуванням:

##
# База даних хоста
#
# localhost використовується для налаштування інтерфейсу зворотного зв’язку
# під час завантаження системи. Не змінюйте цей запис.
##
127.0.0.1 локальний хост
255.255.255.255 broadcasthost::1 localhost
fe80::1%lo0 локальний хост

Останні думки

Знання того, як редагувати файл hosts в macOS, пропонує зручний спосіб замінити сервери DNS і вручну вказати адресу веб-сайту на нову IP-адресу або заблокувати доступ, і, дотримуючись наведених вище кроків, ви можете дуже швидко виконати це завдання.

З якої причини ви хочете відредагувати файл hosts вашого Mac? Як це вийшло? Будь ласка, розкажіть нам про це в коментарях нижче!