Что такое файл hosts и для чего он нужен

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

Файл hosts — это простой текстовый файл без расширения, в котором задаётся соответствие между IP-адресом и доменным именем. Он существовал задолго до появления распределённой системы DNS и до сих пор остаётся рабочим инструментом: с его помощью блокируют рекламу, тестируют сайты на новом сервере до смены DNS-записей и ограничивают доступ к нежелательным ресурсам.

Как устроен файл hosts и принцип его работы

Каждая строка файла имеет одинаковый формат: сначала указывается IP-адрес, затем через пробел или табуляцию — доменное имя. Строки, начинающиеся с символа #, считаются комментариями и системой игнорируются. Типичная запись выглядит так:

127.0.0.1 localhost

0.0.0.0 example.com

Ключевая особенность механизма — приоритет: система читает hosts раньше, чем отправляет запрос к DNS. Если домен найден в файле, внешний запрос вообще не выполняется. Это делает hosts одновременно полезным инструментом и уязвимым местом: вредоносные программы нередко прописывают туда подменённые адреса популярных сайтов.

Запись вида 0.0.0.0 сайт.ру или 127.0.0.1 сайт.ру фактически блокирует ресурс — браузер обращается по несуществующему или локальному адресу и не получает ответа. На этом принципе построены многие блокировщики рекламы и средства родительского контроля.

Где находится файл hosts в разных операционных системах

Расположение файла зависит от операционной системы, но везде он называется одинаково — hosts, без расширения. В Windows путь выглядит так:

C:\Windows\System32\drivers\etc\hosts

В системах на базе Linux и macOS файл расположен по адресу /etc/hosts. Чтобы быстро открыть нужную папку в Windows, можно вставить путь в адресную строку Проводника или выполнить команду notepad C:\Windows\System32\drivers\etc\hosts от имени администратора.

Операционная системаПуть к файлуОсобенности редактирования
Windows 10 / 11C:\Windows\System32\drivers\etc\hostsТребуются права администратора
Linux/etc/hostsРедактирование через sudo
macOS/etc/hostsРедактирование через sudo в Терминале
Android/system/etc/hostsНужен root-доступ

Обратите внимание: файл не имеет расширения .txt. Если при сохранении Блокнот добавил расширение, система перестанет видеть hosts — это одна из частых причин, почему внесённые изменения «не работают».

📊 Для чего вы используете (или планируете использовать) файл hosts?
Блокировка сайтов и рекламы
Тестирование сайта на новом сервере
Восстановление после вируса
Просто хотел разобраться, что это

Что содержит файл hosts по умолчанию

В свежей установке Windows файл почти пуст: в нём только закомментированные пояснения и, как правило, отсутствуют активные записи. В Linux обычно присутствуют строки для localhost и имени компьютера. Наличие большого количества незнакомых доменов — повод насторожиться.

Тревожные признаки, которые стоит проверить при подозрении на заражение:

  • 🚩 Записи с доменами поисковиков, соцсетей или банков, которые вы не добавляли
  • 🚩 Строки, скрытые далеко внизу за множеством пустых строк
  • 🚩 Перенаправления популярных сайтов на неизвестные IP-адреса
  • 🚩 Файл недавно изменялся, хотя вы его не редактировали
⚠️ Внимание: если в hosts обнаружились чужие записи, недостаточно просто их удалить. Сначала проверьте систему антивирусом — вредоносная программа может восстановить записи сразу после очистки файла.

Как отредактировать файл hosts в Windows

Главная сложность при редактировании — права доступа. Файл защищён системой, поэтому обычное открытие через двойной клик позволит только просмотреть содержимое, но не сохранить изменения. Порядок действий такой:

  • 📝 Откройте меню «Пуск», найдите «Блокнот», кликните по нему правой кнопкой и выберите запуск от имени администратора
  • 📂 В Блокноте нажмите «Файл» → «Открыть» и перейдите по пути C:\Windows\System32\drivers\etc
  • 👁 В поле типа файлов переключите «Текстовые документы» на «Все файлы» — иначе hosts не отобразится
  • ✏️ Внесите нужные записи и сохраните файл через Ctrl+S без изменения имени

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

ipconfig /flushdns

☑️ Проверка после редактирования hosts

Выполнено: 0 / 5
⚠️ Внимание: перед любыми правками сделайте копию исходного файла — просто скопируйте его на рабочий стол. Если что-то пойдёт не так, вы сможете вернуть исходное состояние одним действием.

Практические сценарии использования

Зачем обычному пользователю вообще лезть в системный файл? Сценариев несколько, и все они вполне легальны и полезны.

Первый сценарий — блокировка сайтов. Запись 127.0.0.1 unwanted-site.com запретит доступ к ресурсу во всех браузерах сразу. Способ подходит для ограничения доступа к развлекательным сайтам на рабочем или детском компьютере, хотя опытный пользователь легко обойдёт такую защиту.

Второй сценарий — работа веб-разработчика. Когда сайт переносится на новый хостинг, DNS-записи обновляются не мгновенно. Прописав в hosts новый IP-адрес сервера, вы увидите сайт на новом месте сразу, пока остальные посетители ещё попадают на старый. После завершения миграции запись нужно удалить.

Третий сценарий — ускорение доступа к часто посещаемым ресурсам за счёт прямого указания IP. На практике выигрыш незначителен, а при смене адреса сервером запись станет вредной, поэтому такой приём сегодня почти не используется.

Как восстановить файл hosts по умолчанию

Если после экспериментов или действий вредоносного ПО перестали открываться сайты, самое надёжное решение — вернуть файл к исходному состоянию. Проще всего удалить все добавленные записи, оставив только комментарии, либо заменить содержимое стандартным шаблоном:

# Copyright (c) Microsoft Corp.

This is a sample HOSTS file used by Microsoft TCP/IP for Windows.

127.0.0.1 localhost

Альтернативный вариант — удалить файл целиком: Windows корректно работает и без hosts, а при необходимости его можно создать заново пустым. После восстановления обязательно выполните ipconfig /flushdns и перезагрузите компьютер, чтобы исключить влияние закэшированных записей.

Почему изменения в hosts иногда не срабатывают

Чаще всего мешают три вещи: файл сохранён с расширением .txt, браузер или система используют закэшированный DNS-ответ, либо запись добавлена с опечаткой в домене. Проверьте имя файла в свойствах, очистите кэш командой ipconfig /flushdns и перезапустите браузер. Также некоторые браузеры с функцией DNS-over-HTTPS могут обходить системные настройки — проверьте этот параметр в настройках браузера, если он есть в вашей версии.

Если проблема с доступом к сайтам сохраняется даже после полной очистки файла, причина, скорее всего, не в hosts: проверьте настройки прокси, DNS-серверы в свойствах сетевого адаптера и наличие сомнительных расширений в браузере.

Часто задаваемые вопросы

Можно ли удалить файл hosts совсем?

Да, система продолжит работать — разрешение имён полностью возьмёт на себя DNS. Однако некоторые программы и локальные службы могут рассчитывать на наличие записи 127.0.0.1 localhost, поэтому безопаснее не удалять файл, а очистить его содержимое.

Почему Блокнот не даёт сохранить изменения в hosts?

Файл находится в защищённой системной папке. Запустите Блокнот от имени администратора через контекстное меню и только потом открывайте в нём hosts — тогда сохранение пройдёт без ошибок.

Как понять, что файл hosts изменён вирусом?

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

Работает ли блокировка через hosts во всех браузерах?

Да, правила hosts действуют на уровне системы, поэтому затрагивают все браузеры и программы. Исключение — приложения, которые используют собственные механизмы DNS (например, DNS-over-HTTPS): они могут игнорировать системные записи.

Чем отличаются записи 127.0.0.1 и 0.0.0.0 при блокировке?

Обе блокируют доступ к сайту. Адрес 127.0.0.1 перенаправляет запрос на локальный компьютер, а 0.0.0.0 — на несуществующий адрес. Второй вариант обычно отрабатывает быстрее, так как система сразу отклоняет соединение.