Когда сайт внезапно перестаёт открываться или, наоборот, открывается «не тот» ресурс, первым делом стоит проверить содержимое файла hosts — именно лишние или изменённые строки в нём чаще всего перенаправляют запросы на чужие серверы. Стандартный пример файла hosts в Windows выглядит как набор закомментированных строк с пояснениями и, возможно, одной-двумя рабочими записями, указывающими на локальный адрес 127.0.0.1.
Файл hosts — это простой текстовый файл без расширения, который операционная система проверяет до обращения к DNS-серверу. Если в нём есть запись для домена, компьютер использует указанный в файле IP-адрес, игнорируя ответ DNS. Это делает hosts удобным инструментом для блокировки сайтов, тестирования веб-проектов и диагностики сети, но также — мишенью для вредоносных программ, подменяющих адреса банков и популярных сервисов.
Где находится файл hosts в разных системах
Расположение файла зависит от операционной системы, но принцип его работы везде одинаков. В Windows путь выглядит так: C:\Windows\System32\drivers\etc\hosts. Обратите внимание: файл не имеет расширения, и рядом может лежать файл hosts.ics или резервные копии — редактировать нужно именно файл без расширения.
В Linux и macOS файл расположен по адресу /etc/hosts. Для его редактирования потребуются права администратора (root или sudo), как и в Windows, где Блокнот нужно запускать от имени администратора.
Стандартный пример содержимого файла hosts
Чистый файл hosts в Windows 10 и 11 состоит только из комментариев — строк, начинающихся с символа #. Рабочих записей по умолчанию нет либо их минимум. Типичный пример выглядит так:
# Copyright (c) 1993-2009 Microsoft Corp.
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
# 127.0.0.1 localhost
::1 localhost
В Linux стандартное содержимое обычно включает рабочие записи для локального хоста и имени компьютера:
127.0.0.1 localhost
127.0.1.1 my-pc
::1 localhost ip6-localhost ip6-loopback
Строка 127.0.1.1 с именем компьютера встречается в дистрибутивах вроде Ubuntu и нужна для корректной работы некоторых системных служб. Удалять её без необходимости не стоит.
Синтаксис записей: как правильно заполнить файл
Каждая рабочая строка файла hosts состоит из IP-адреса, пробела (или табуляции) и имени хоста. Порядок строгий: сначала адрес, затем домен. Комментарий можно добавить в конце строки после символа #.
Примеры корректных записей:
127.0.0.1 blocked-site.com
127.0.0.1 www.blocked-site.com
192.168.1.50 myserver.local
0.0.0.0 ads-tracker.example.com
Несколько важных правил, которые нужно соблюдать:
- 📌 Каждая запись пишется на отдельной строке — объединять несколько доменов через запятую нельзя.
- 📌 Домены с
wwwи без — это разные имена, блокировать придётся оба варианта отдельно. - 📌 Протокол (
http://,https://) и пути страниц в hosts не указываются — только само доменное имя. - 📌 Символ
#в начале строки полностью отключает запись, превращая её в комментарий.
⚠️ Внимание: запись вида 127.0.0.1 site.com не «стирает» сайт из интернета, а лишь перенаправляет обращения на ваш же компьютер. Если на нём не запущен веб-сервер, браузер покажет ошибку соединения — это и есть ожидаемый эффект блокировки.
Практические примеры использования файла hosts
Чаще всего файл hosts применяют для трёх задач. Первая — блокировка нежелательных сайтов: запись 127.0.0.1 unwanted-site.com делает ресурс недоступным во всех браузерах системы сразу, без установки сторонних программ. Метод работает на уровне всей системы, но опытный пользователь может его обойти, отредактировав файл обратно.
Вторая задача — локальная разработка. Веб-разработчики направляют домен тестового проекта на локальный сервер, например 127.0.0.1 myproject.test, и работают с сайтом по красивому адресу до его публикации в интернете. Третий сценарий — доступ к сайту по новому IP до обновления DNS-записей: запись 203.0.113.10 mysite.com заставит компьютер обращаться к указанному серверу напрямую, минуя глобальный DNS.
Как отредактировать файл hosts: пошаговая инструкция
В Windows последовательность действий такая. Откройте меню «Пуск», найдите Блокнот, кликните по нему правой кнопкой мыши и выберите «Запуск от имени администратора». Затем через меню «Файл → Открыть» перейдите в папку C:\Windows\System32\drivers\etc, переключите фильтр типов файлов на «Все файлы (.)» и откройте hosts.
Добавьте нужные строки в конец файла и сохраните через Ctrl+S. Если сохранение не удаётся — почти всегда причина в том, что редактор запущен без прав администратора. В Linux достаточно выполнить в терминале команду:
sudo nano /etc/hosts
☑️ Проверка после редактирования hosts
После сохранения изменения обычно подхватываются сразу, но иногда требуется сбросить DNS-кэш. В Windows для этого в командной строке от имени администратора выполните:
ipconfig /flushdns
Почему изменения в hosts не срабатывают
Наиболее частые причины — файл случайно сохранён как hosts.txt, запись закомментирована символом #, опечатка в домене, браузер использует собственный DNS-over-HTTPS (DoH), игнорирующий системные настройки, либо не очищен DNS-кэш. Проверьте также, что вы редактируете файл именно на том компьютере, где тестируете результат.
Файл hosts и безопасность: на что обратить внимание
Поскольку hosts имеет приоритет над DNS, вредоносные программы нередко вписывают в него строки вида «популярный банк → IP злоумышленника». Пользователь вводит привычный адрес, а попадает на поддельную страницу. Поэтому при подозрении на заражение или странном поведении браузера стоит открыть файл и проверить, нет ли в нём рабочих записей с известными доменами, которых вы не добавляли сами.
Некоторые антивирусы, наоборот, сами записывают в hosts адреса опасных ресурсов для их блокировки — такие строки обычно сопровождаются комментарием с названием защитного ПО. Удалять их не нужно. Если сомневаетесь в происхождении записи, поищите домен в поисковике или временно закомментируйте строку символом # и проверьте, что изменилось.
⚠️ Внимание: перед любыми правками сделайте резервную копию файла — просто скопируйте его в другую папку. Это позволит вернуть исходное состояние одним действием, если что-то пойдёт не так.
Типичные ошибки при работе с hosts
Даже опытные пользователи периодически сталкиваются с ситуацией, когда правило вроде бы добавлено, но ничего не работает. Ниже — сравнение распространённых ошибок и способов их устранения.
| Ошибка | Симптом | Решение |
|---|---|---|
| Файл сохранён как hosts.txt | Записи игнорируются системой | Сохранить без расширения, включив отображение расширений в Проводнике |
| Нет прав администратора | Ошибка при сохранении | Запустить редактор от имени администратора |
| Указан домен с протоколом | Правило не срабатывает | Убрать http:// и слеши, оставить только домен |
| Забыт вариант с www | Сайт открывается по адресу с www | Добавить вторую строку с www-доменом |
| Не очищен DNS-кэш | Старое поведение сохраняется | Выполнить ipconfig /flushdns |
Отдельно стоит упомянуть браузеры с включённым DNS-over-HTTPS: в этом режиме браузер может разрешать домены через собственный защищённый канал, минуя системный резолвер, и записи hosts для него не сработают. Если правило корректно, но сайт всё равно открывается, проверьте настройки DoH в используемом браузере.
Часто задаваемые вопросы
Файла hosts нет в папке etc — это нормально?
Да, в некоторых конфигурациях Windows файл может отсутствовать, и система работает без него корректно. При необходимости его можно создать вручную: обычный текстовый файл без расширения с нужными записями.
Можно ли заблокировать через hosts отдельную страницу сайта?
Нет. Файл hosts работает только на уровне доменных имён и IP-адресов. Заблокировать конкретную страницу или раздел сайта с его помощью невозможно — для этого используются фильтры на уровне браузера, роутера или прокси.
Действует ли hosts на все браузеры сразу?
Да, записи применяются на уровне операционной системы, поэтому затрагивают все программы, использующие системный DNS-резолвер. Исключение — приложения с собственным механизмом DNS-over-HTTPS, которые могут обходить системные настройки.
Как вернуть файл hosts к исходному состоянию?
Достаточно удалить все добавленные рабочие строки, оставив только комментарии, либо восстановить файл из заранее созданной резервной копии. После этого выполните очистку DNS-кэша командой ipconfig /flushdns.
Чем отличаются записи 127.0.0.1 и 0.0.0.0 при блокировке?
Адрес 127.0.0.1 перенаправляет запрос на локальный компьютер — если на нём запущен веб-сервер, вместо блокировки может открыться его страница. Адрес 0.0.0.0 указывает на «никуда», и соединение обрывается сразу. Для блокировки чаще используют именно 0.0.0.0, чтобы избежать лишних обращений к локальному серверу.