Hosts не работает mac os

Где находится файл hosts в Mac OS X и как его отредактировать

Большинству из нас по тем или иным причинам приходилось сталкиваться с довольно важным в любой операционной системе файлом под названием «hosts» и его редактированием. Служит этот файл для сопоставления определенных доменных имен их сетевым адресам и, в отличие от DNS, контролируется администратором каждого конкретного компьютера, т.е. локально.

И если пользователи Windows, которые уже сталкивались с этим файлом и его редактированием знакомы с этим понятием и, скоре всего, помнят путь до нужного файла наизусть (но мы, на всякий случай, напомним -Windows\system32\drivers\etc\hosts), то новые пользователи компьютеров от Apple под управлением Mac OS X (macOS) поначалу часто теряются, не обнаружив искомый файл hosts по привычному для них пути, как, впрочем, и самого пути в их Маке.

Именно о том, где находится файл hosts на Mac и как его открыть и отредактировать мы и расскажем в этой подробной инструкции ниже.

К счастью, найти и отредактировать файл hosts на Mac ничуть не сложнее, чем сделать это в операционной системе от Microsoft. Нам известно как минимум два способа, о которых и пойдет речь ниже. Вы можете воспользоваться тем из них, которых вам покажется быстрее и удобнее.

Как открыть файл hosts через терминал Mac OS

Тем пользователям техники Apple, кто не боится слова «терминал», этот способ покажется наиболее быстрым и удобным. Для просмотра и редактирования файла hosts на Mac откройте программу «Терминал» и введите в ней следующую команду.

Также вам потребуется ввести пароль администратора, если он задан на компьютере.

Если вы всё ввели правильно, перед вами откроется содержимое файла hosts вашего Мака.

Внесите необходимые изменения в этот файл (курсор мыши в терминале не работает, для перемещения между строками используйте стрелочки клавиатуры), к примеру, добавьте сайт, который вы хотите заблокировать.

После внесения всех необходимых изменений нажмите сочетание клавиш «ctrl+X» для сохранения.

Нажмите клавишу «Y» для подтверждения сохранения изменений. Вот и всё, файл hosts успешно отредактирован.

Для того, чтобы сделанные изменения сразу же вступили в силу, иногда необходимо сбросить кэш DNS вашего Mac.

Как открыть файл hosts в текстовом редакторе

Для тех пользователей Mac’ов, которые ещё не очень хорошо «дружат» с Терминалом, есть альтернативный вариант открыть и изменить файл hosts при помощи любимого текстового редактора и стандартного файлового менеджера Finder.

Для этого кликните правой кнопкой мыши (или используйте аналогичное действие трекпада) по иконке Finder на нижней панели (Dock) вашего компьютера и выберите в выпадающем меню пункт «Переход к папке. «.

В открывшемся окне введите путь, по которому находится файл hosts в компьютерах с операционной системой OS X и нажмите кнопку «Перейти». Выглядит путь следующим образом.

В результате откроется окно Finder’а в папке, в которой искомый файл и расположен. Он будет уже выделен. Просто кликните по нему правой кнопкой и откройте его с помощью вашего любимого текстового редактора (подойдет и стандартный TextEdit).

Читайте также:  Devil may cry 5 ошибка windows 10

Сам файл защищен от редактирования. Однако при попытке внести изменения вам будет предложен создать его копию — так и сделайте. Внесите необходимые изменения в копию файла и сохраните его, к примеру, на рабочем столе как файл с названием hosts. Разрешение.txt у сохраненного файла после этого удалите.

В последнем пункте этой инструкции вам нужно просто заменить старый файл hosts на свежесозданный простым перетаскиванием его с рабочего стола в папку, где находится оригинальный файл. Во всплывающем окне подтвердите действие нажатием кнопки «Заменить».

Это всё. В результате описанных действий ваш компьютер будет использовать уже новый файл hosts. Но иногда, для того, чтобы изменения вступили в силу сразу же, вам может понадобиться обновить кэш DNS. Об этом ниже.

Обновите кэш DNS

В большинстве случаев сделанные вами в файле hosts изменения будут применены незамедлительно, однако если этого почему-то вдруг не произошло — не расстраивайтесь, попробуйте сбросить кэш DNS. Для этого в терминале выполните следующую команду (потребуется ввод пароля администратора).

dscacheutil -flushcache; sudo killall -HUP mDNSResponder

После этого указанные в новом файле hosts правила точно будут работать так, как надо.

Источник

Как редактировать файл Hosts на macOS

Расскажу как редактировать файл Hosts macOS и зачем он вообще нужен. Как с его помощью блокировать сайты и менять сопоставление IP-адресов. Как восстановить оригинальную версию для отмены внесённых изменений и очистить кэш ДНС через Терминал.

Система доменных имён DNS

Когда вы вводите доменное имя (адрес) сайта, который хотите посетить в адресную строку браузера, незаметно происходит много событий скрытых от глаз.

Каждый сайт, каждая служба, почти каждое устройство, подключённое к интернету, имеет уникальный числовой IP-адрес, который его идентифицирует.

Существует система доменных имён (DNS), которая преобразует эти IP-адреса в более узнаваемые и запоминающиеся для людей имена. Например, название сайта macnoob.ru выглядит гораздо приятнее IP 5.101.115.179.

Когда вы впервые вводите адрес сайта, Mac проверяет связь с DNS-сервером (это происходит автоматически через интернет-провайдера), чтобы узнать TCP/IP адрес сервера, к которому вы пытаетесь подключиться.

При этом Mac создаёт скрытый файл кеша, чтобы запомнить это сопоставление на случай, если вы заново решите посетить тот же сайт.

Система доменных имён и связанный с ней кеш позволяют компьютеру на macOS узнать, как открыть нужный сайт в интернете.

Но есть ещё файл, который может быть очень полезным. Он называется Hosts, и его можно использовать для принудительного переопределения информации DNS.

Редактирование файла Host

Существует несколько причин изменить файл Hosts вместо того, чтобы просто позволить DNS делать своё дело:

  • Тестирование сайта на сервере, прежде чем его смогут увидеть другие пользователи интернета.
  • Для блокировки или обхода программ-шпионов обнуляя их IP-адреса. Для этого достаточно указать IP 0.0.0.0, а затем имя домена, который вы хотите заблокировать.
  • Устранение последствия работы вирусов-вымогателей, которые блокируют выход в интернет.

Самый популярный способ работы с файлом Host — использовать стандартное приложение Терминал, которое находится в папке «Утилиты» каждого Mac.

Также можно открыть Терминал используя поиск Spotlight или через Launchpad.

Чтобы открыть файл Hosts запустите Терминал и в окне приложения введите команду открытия текстового редактора Nano:

Читайте также:  Satvision ��� mac os

После ввода команды нажмите клавишу «Ввод», введите свой пароль администратора и снова нажмите «Ввод».

Процесс ввода пароля администратора визуально никак не отображается — это нормально. Просто введите пароль на клавиатуре, нажмите «Ввод» и всё сработает.

Теперь вы находитесь в текстовом редакторе Nano и должны увидеть что-то похожее на это:

Мышь и трекпад здесь не работают, можно использовать только клавиатуру Mac.

Прежде чем изменить Hosts на Mac, сделайте копию файла из /private/etc/hosts . Это может понадобиться, если у вас там прописаны дополнительные сопоставления. В моём случае это IP 10.221.55.3 для виртуальной машины с Windows 10.

Чтобы сопоставить новое устройство или домен с нужным IP-адресом, переместите курсор с помощью клавиш со стрелками на любую строчку после строк, закомментированных символами # .

Например, если вы сопоставляете IP-адрес с доменом, введите IP, нажмите пробел и введите имя домена.

И наоборот, если вы хотите заблокировать какой-либо сайт, используйте 127.0.0.1 для его сопоставления с локальным компьютером.

Например, чтобы заблокировать посещение сайта macnoob.ru на Mac, нужно сделать так:

После внесения изменений нажмите сочетание клавиш Control+O, чтобы применить их.

После этого нажмите Control+X и «Ввод» для выхода из редактора.

Чтобы увидеть изменения, осталось очистить кеш ДНС. Для этого введите команду:

sudo killall -HUP mDNSResponder

Это очистит кеш DNS на Mac и операционная система увидит внесённые изменения в файле Hosts.

В нашем случае, при попытке открыть сайт macnoob.ru, которому мы сопоставили локальный IP 127.0.0.1, увидим в браузере такое сообщение:

Важно не забыть, что вы редактировали Hosts, потому как позже может потребоваться отменить внесённые изменения.

Альтернативным способом редактирования файла Hosts на Mac служит текстовый редактор TextEdit. Скопируйте файл из /private/etc/hosts и внесите изменения. После чего замените им оригинал (редактировать оригинал не получится).

Как восстановить файл Hosts на Mac

Когда потребуется отменить изменения и восстановить нормальную работу ДНС на Mac, просто замените текущую версию на ранее созданную копию или вставьте в него значения по умолчанию.

Для этого откройте Finder и введите в поиске «Hosts»:

Либо пройдите к его расположению на диске в папке /private/etc/hosts .

Скопируйте его (в оригинал внести изменения нельзя) и откройте в текстовом редакторе TextEdit. Теперь удалите всё содержимое и вставьте значение по умолчанию:

##
# 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

Нажмите «Сохранить», закройте файл и замените им оригинал в папке /private/etc/hosts .

Когда macOS спросит, хотите ли вы заменить файл, подтвердите своё решение, введите пароль администратора и перезагрузите Mac.

На этом всё, если появились вопросы — задавайте их в комментариях, постараемся помочь.

Источник

Почему Safari игнорирует мой файл /etc /hosts?

Я добавил некоторые домены для блокировки ( 127.0.0.1 mydomain.com ) в мой файл /etc/hosts , и по какой-то причине Safari, похоже, игнорирует их.

  • отключить расширения Safari,
  • очистка кеша ( sudo dscacheutil -flushcache ),
  • перезапуск Safari и Mac в целом.

Chrome уважает изменения /etc/hosts , но Safari этого не делает. Приложен пример моего файла /etc/hosts .

Я запускаю Safari 6.0.4 с Mountain Lion 10.8.3

12 ответов

У меня была такая же проблема, и это было вызвано наличием действительно длинных строк в файле моих хостов (несколько узлов сопоставлены с тем же IP-адресом, указанным в той же строке). Я исправил это, разделив это на несколько строк.

Читайте также:  Linux http server php

У меня была аналогичная проблема. Каждая часть программного обеспечения на моем Mac удостоила мою запись файла /etc /hosts, когда файл моих хостов был символически связан (aliased) с другим файлом, за исключением Safari. Когда ваш файл hosts является символической ссылкой, Safari игнорирует его.

Мое решение состояло в том, чтобы сделать /etc /hosts жесткой ссылкой. К счастью, файл hosts, который я постоянно обновляю, находится в одной файловой системе. Если это не так, вы сражаетесь.

Плохое Safari . плохо.

У меня была немного другая версия той же проблемы, и я подумал, что упомянул, что сработало для меня.

Я разрабатываю веб-сайты. Для этого у меня есть полная копия каждого сайта, работающего в моей локальной сети. Когда я хочу работать локально, я всегда добавлял запись для «example.com» в свой локальный файл /etc /hosts и всегда всегда переопределял DNS, позволяя мне получить доступ к локальной копии веб-сайта в любой браузер, включая Safari и Firefox. Я могу работать, не затрагивая фактический сайт, а затем загружать изменения, когда они завершены.

Тем не менее, в последнее время эта техника перестала работать как для Safari, так и для Firefox, но не для Chrome, поэтому я некоторое время ограничивался использованием Chrome для локальной разработки. Я искал Google и пробовал все предлагаемые исправления — CR в конце файла hosts, только одну запись в строке, различные изменения конфигурации Firefox, используя «about: config» и т. Д. Ничего не работало.

Затем я пробовал эту простую вещь: помимо размещения версии IPV4 в файле /etc /hosts, я также поставил версию IPV6.

Как только я добавил запись IPV6, Firefox и Safari начали атаковать правильный (локальный) сервер.

Существуют различные веб-сайты, которые будут переводить IPV4-адреса на IPV6; просто выполните поиск Google на «ipv4 на ipv6».

Я потратил довольно много времени на OS X El Captain 10.11.4 для блокировки сайтов с использованием файла /etc /hosts вместо использования Parental Control в настройках системы. В конце он просто работал следующим образом:

Я попробовал много вариантов, но я всегда отображал 0.0.0.0 ( 0.0.0.0 website.com ). Это никогда не срабатывало ни в каких вариациях.

В отличие от некоторых предложений в Интернете это бесполезно:

  • Не было необходимости блокировать IPv6, например fe80::1%lo0 www.website.com или ::1 website.com
  • Не нужно было dscacheutil -flushcache , но просто сделайте это в случае.
  • Неважно, если вы вставляете его в начало или конец файла hosts
  • Браузеру, похоже, ответили иначе: Chrome и Safari немедленно заблокировали его, как только был сохранен правильный файл hosts , Firefox продолжал игнорировать его на некоторое время (неясно, если перезапустить его было достаточно).
    • Попробуйте использовать New Private Window или перезапустите браузер для его тестирования.
  • Не добавляйте http:// или https:// в начале адреса
  • Никаких других команд не было.
  • Не отключать (= прокомментировать, добавив в начале строки # ), которые уже находятся в файле hosts.

Полезные проверки

Проверьте, распознает ли система ваше перенаправление dscacheutil -q host -a name website.com — он должен отображать:

Проверьте правильность синтаксиса файла hosts : cat -vet /etc/hosts . Это показывает невидимые символы:

Источник

Оцените статью