Гид по технологиям

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

8 min read Администрирование Обновлено 14 Dec 2025
Редактирование файла hosts: Windows, macOS, Linux
Редактирование файла hosts: Windows, macOS, Linux

Кратко

Файл hosts перенаправляет доменные имена на IP-адреса локально, минуя внешний DNS. На Windows файл находится в C:\Windows\System32\drivers\etc\hosts, на macOS и Linux — в /etc/hosts. Для внесения изменений требуется запуск текстового редактора с правами администратора (Windows) или sudo (macOS, Linux). Учтите, что современные браузеры с DNS over HTTPS могут игнорировать локальный hosts.

Быстрая навигация

  • Что такое файл hosts и зачем он нужен
  • Как редактировать hosts на Windows 10/11
  • Как редактировать hosts на Windows 8/8.1
  • Как редактировать hosts на Windows 7
  • Как редактировать hosts в Ubuntu и других дистрибутивах Linux
  • Как редактировать hosts на macOS
  • Почему hosts может не блокировать подключения
  • Практическое руководство, сценарии, чеклисты и отладка

Папка System32 в Windows 10

Что такое файл hosts и зачем он нужен

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

Пример записи:

127.0.0.1 localhost # loopback

Краткое определение: hosts — локальная переадресация доменов на IP-адреса без обращения к внешним DNS-серверам.

Когда полезно изменить hosts:

  • Блокировка доступа к сайтам (локально на машине);
  • Переадресация тестового домена на локальный сервер при разработке;
  • Быстрая проверка разрешения имён без изменения DNS-записей у регистратора;
  • Устранение проблем с DNS-публикациями во время миграции.

Важно: изменения в hosts действуют только на уровне хоста и не влияют на других клиентов сети.

Общие правила синтаксиса

  • IP-адрес и имя хоста разделяются пробелом или табуляцией.
  • Комментарии начинаются с «#» и игнорируются.
  • Можно указать несколько имён через пробел для одного IP.
  • IPv4 и IPv6 записываются отдельно (например, 127.0.0.1 и ::1).

Пример блокировки сайта:

0.0.0.0 www.facebook.com
# или
127.0.0.1 www.facebook.com

Рекомендации по безопасности и устойчивости

  • Делайте резервную копию файла hosts перед изменениями: сохраните копию с датой.
  • Не удаляйте системные записи (например, localhost), если не уверены в последствиях.
  • Для массовых развёртываний используйте системную политику (GPO на Windows) или конфигурационные инструменты (Ansible/Chef/Puppet).

Редактирование файла hosts на Windows 10 и Windows 11

На Windows файл hosts есть по умолчанию, но он защищён правами системы. Чтобы изменить файл, необходимо запустить текстовый редактор с правами администратора.

  1. Нажмите «Пуск», введите “notepad” (или другой текстовый редактор).
  2. Правой кнопкой мыши по приложению → «Запуск от имени администратора».

Открытие меню «Пуск» и запуск Блокнота от имени администратора

  1. В редакторе: Файл → Открыть → перейдите в папку:
C:\Windows\System32\drivers\etc
  1. В диалоге открытия файлов смените фильтр на “Все файлы (.)”, иначе файл hosts не отобразится (у него нет расширения).

Открытие файла hosts в Блокноте; выбрана опция Все файлы

  1. Внесите изменения и сохраните. Если сохранение не выполняется, убедитесь, что редактор запущен от имени администратора.

Пример: блокировка Facebook

0.0.0.0 www.facebook.com

После сохранения проверьте доступ в браузере. Если сайт не блокируется, см. раздел «Почему hosts может не блокировать подключения».

Редактирование файла hosts на Windows 8 и 8.1

Процесс аналогичен Windows 10/11:

  1. Откройте меню поиска, найдите Notepad.
  2. Правой кнопкой мыши → Запуск от имени администратора.
  3. Файл → Открыть → C:\Windows\System32\drivers\etc → фильтр “Все файлы”.

Запуск Блокнота с правами администратора в Windows 8

Открытие файла hosts в папке C:WindowsSystem32driversetc

Если появляется ошибка прав доступа — повторите шаги и убедитесь, что редактор запущен именно с повышенными правами.

Редактирование файла hosts на Windows 7

В Windows 7 можно открыть файл двумя способами:

Способ A — через интерфейс

  1. Найдите Notepad, правый клик → Запуск от имени администратора.
  2. Откройте C:\Windows\system32\drivers\etc\hosts (фильтр “Все файлы”).

Способ B — через окно Выполнить (быстро)

  1. Нажмите Win+R, введите:
notepad c:\windows\system32\drivers\etc\hosts
  1. Подтвердите UAC при запросе — это откроет Notepad с правами администратора и сразу загрузит файл.

![Команда для запуска Блокнота с открытием hosts] (https://static1.howtogeekimages.com/wordpress/wp-content/uploads/2010/08/sshot20100831194119.png)

Пример редактирования и результата (скриншоты демонстрируют блокировку сайта в браузерах):

![Пример блокады Facebook в браузере] (https://static1.howtogeekimages.com/wordpress/wp-content/uploads/2010/08/sshot20100831205644.png)

Совет: если изменения не вступили в силу, закройте и откройте браузер, очистите кэш DNS (ipconfig /flushdns в Windows), проверьте прокси-настройки.

Редактирование файла hosts в Ubuntu и большинстве Linux-дистрибутивов

В Linux файл hosts находится в /etc/hosts и защищён системными правами. Откройте редактор с sudo.

Пример с Vim:

sudo vim /etc/hosts

Если Vim отсутствует, установите его через менеджер пакетов (например, sudo apt install vim).

Запуск редактора с sudo в терминале Linux

В файле вы увидите записи для IPv4 и отдельный блок для IPv6 (::1). В большинстве типовых задач достаточно править секцию IPv4.

После правки сохраните файл и проверьте результат при помощи ping или через браузер. Если браузер использует DNS over HTTPS, hosts может быть проигнорирован — см. отдельный раздел.

Запись в файле hosts, блокирующая facebook

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

На macOS путь тот же: /etc/hosts. Запустите терминал и отредактируйте файл с sudo и удобным редактором, например nano или vi:

sudo nano /etc/hosts
# или
sudo vi /etc/hosts

Запуск vi с правами sudo на Mac

Пример: перенаправление facebook на 0.0.0.0

0.0.0.0 www.facebook.com

После изменения сохраните файл и при необходимости сбросьте кэш DNS (в macOS команды зависят от версии, например sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder для более новых версий). Проверьте в браузере.

Пример для macOS Ventura: файл hosts с записью блокировки

Safari не может подключиться к сайту после блокировки

Почему файл hosts может не блокировать подключения

  1. DNS over HTTPS (DoH): многие браузеры (и некоторые ОС) могут использовать зашифрованный DNS, отправляя запросы на внешние DNS-серверы, минуя системный resolver.
  2. Браузер использует собственный DNS-сервис: если браузер настроен на использование встроенного DNS (например, публичного сервера), он не учитывает локальный hosts.
  3. Кеширование DNS: система или браузер могут держать старые записи в кэше.
  4. Неправильно заданный IP или опечатка в имени хоста.
  5. Использование прокси или VPN, которые перенаправляют DNS-вопросы на удалённый сервер.

Проверочные шаги:

  • Выполните ipconfig /flushdns (Windows) или sudo dscacheutil -flushcache (macOS) и перезапустите браузер.
  • Отключите прокси и VPN и проверьте снова.
  • В браузере отключите DoH в настройках или установите его так, чтобы он использовал системный DNS.
  • Убедитесь, что запись в hosts корректна и файл действительно сохранён.

Отладка и команды для проверки

Windows:

ipconfig /flushdns
nslookup www.example.com
ping www.example.com

Linux/macOS:

sudo systemd-resolve --flush-caches  # systemd-based
ping www.example.com
dig +short www.example.com @127.0.0.1

Если ping возвращает IP из записи hosts — переадресация работает.

Альтернативные подходы и когда hosts не подходит

  • Сценарии, когда hosts не подходит:

    • Нужно централизованно управлять блокировками на уровне сети (используйте DNS-сервер, прокси или firewall).
    • Необходимо блокировать доступ для большого числа устройств — hosts действует только локально.
    • Браузеры с DoH игнорируют локальные переадресации.
  • Альтернативы:

    • Локальный DNS-сервер (Pi-hole, bind) — централизованная блокировка и учёт трафика.
    • Брандмауэр/маршрутизатор — блокировка по IP/портам на уровне сети.
    • Родительский контроль и профиль безопасности в ОС.

Практическое SOP: пошаговое руководство для администратора

  1. Сделать резервную копию текущего hosts:
# Windows PowerShell
copy C:\Windows\System32\drivers\etc\hosts C:\Windows\System32\drivers\etc\hosts.backup.%date:~10,4%-%date:~4,2%-%date:~7,2%

# Linux / macOS
sudo cp /etc/hosts /etc/hosts.bak.$(date +%F)
  1. Открыть редактор с правами администратора (или sudo).
  2. Добавить запись(и) в нижней части файла, избегая удаления системных строк.
  3. Сохранить файл и применить очистку DNS-кэша.
  4. Проверить результат командой ping/nslookup/dig.
  5. При проблемах — откатить резервную копию.

Чеклист для ролей

Администратор сети:

  • Разработать политику управляемых блокировок (централизованный DNS, если нужно).
  • Обеспечить бекапы и журнал изменений hosts.

Разработчик:

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

Пользователь ПК:

  • Всегда делайте копию файла перед изменением.
  • Помните, что изменения действуют только на данной машине.

Ментальные модели и эвристики

  • «hosts = локальная таблица адресов»: думайте о hosts как о маленьком локальном DNS только для этой машины.
  • «Если не работает — проверь DoH и VPN»: чаще всего проблема в том, что запросы утекают наружу.
  • «Для масштабного блока — DNS, для одиночного компьютера — hosts»: подберите инструмент по масштабу задачи.

Примеры записей и шаблоны

Блокировка одиночного сайта:

0.0.0.0 example.com
0.0.0.0 www.example.com

Переадресация тестового домена на локальную машину (разработка):

127.0.0.1 myapp.local

Несколько имён для одного IP:

192.168.1.10 staging.example.com test.example.com

Возврат к заводскому виду (удаление пользовательских записей): удалить строки, добавленные вами, и сохранить файл.

Критерии приёмки

  • Файл сохранён и доступен на чтение для системных служб.
  • При проверке ping/nslookup возвращается нужный IP.
  • После очистки кэша браузер отражает изменения.
  • Нет побочных эффектов: системные записи вроде localhost не удалены.

Решение проблем: пошаговая отладка

  1. Убедитесь, что файл сохранён в правильном месте и без расширения.
  2. Очистите DNS-кэш (ipconfig /flushdns или эквивалент).
  3. Отключите VPN/прокси и временно отключите DoH в браузере.
  4. Проверьте права доступа к файлу (на Windows: должен быть доступен для чтения пользователю и изменяем только при запуске «от имени администратора»).
  5. Проверьте, что не заданы правила в локальном firewall, которые могут отражать поведение.

Decision tree для выбора метода блокировки (Mermaid)

flowchart TD
  A[Нужно ли блокировать/переадресовывать домен?] --> B{Это только для одной машины?}
  B -- Да --> C[Использовать hosts]
  B -- Нет --> D{Нужно ли централизованное управление?}
  D -- Да --> E[Настроить локальный DNS 'Pi-hole/Bind']
  D -- Нет --> F[Использовать брандмауэр или маршрутизатор]
  C --> G{Browser использует DoH?}
  G -- Да --> H[Отключить DoH или настроить браузер на системный DNS]
  G -- Нет --> I[hosts должен работать]

Частые ошибки и как их избежать

  • Ошибка: не выбираете “Все файлы” при открытии в Windows — hosts не виден. Решение: смените фильтр в диалоге открытия.
  • Ошибка: опечатка в имени хоста. Решение: проверяйте имена через ping.
  • Ошибка: браузер использует DoH. Решение: временно отключить DoH, проверить результат.
  • Ошибка: забыли сохранить файл с правами администратора. Решение: запустите редактор с повышением прав.

Примечания по приватности и безопасности

  • Файл hosts не отправляет данные в сеть — он локален. Однако запись туда может быть результатом вредоносного ПО. Если вы внезапно видите неизвестные записи, проверьте систему антивирусом.
  • Для корпоративной среды предпочтительнее централизованные механизмы управления (DNS, firewall), они позволяют аудит и контроль версий.

Локальные альтернативы и подводные камни

  • На домашних роутерах некоторые прошивки позволяют редактировать локальную таблицу переадресации — это удобнее для всей сети, но требует аккуратности.
  • Pi-hole и похожие решения хорошо подходят для блокировки рекламы и трекинга на уровне сети.

Короткое резюме

Файл hosts — простой и полезный инструмент для локальной переадресации доменов, разработчиков и быстрого тестирования. Для правок требуется запуск редактора с повышенными правами. Современные технологии, такие как DNS over HTTPS и VPN, могут обойти hosts, поэтому для надёжной и централизованной фильтрации лучше использовать DNS-сервисы или сетевые средства.

Важно: всегда делайте резервную копию и документируйте изменения.

Полезные команды и шаблоны на одной странице

  • Резервное копирование:
# Windows PowerShell
copy C:\Windows\System32\drivers\etc\hosts C:\Windows\System32\drivers\etc\hosts.bak

# macOS / Linux
sudo cp /etc/hosts /etc/hosts.bak
  • Очистка DNS-кэша:
# Windows
ipconfig /flushdns

# macOS
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

# Linux (systemd-resolved)
sudo systemd-resolve --flush-caches
  • Проверка:
ping example.com
nslookup example.com
dig example.com

Если нужно, могу подготовить готовые шаблоны hosts для разработки, тестирования и домашней блокировки рекламы, а также инструкции по массовому развёртыванию через Ansible или GPO.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как сохранить PDF из Safari на iPhone или iPad
How-to

Как сохранить PDF из Safari на iPhone или iPad

Как проверить звонок 911 на телефоне
Мобильные телефоны

Как проверить звонок 911 на телефоне

Рождественская открытка в Photoshop — пошагово
Дизайн

Рождественская открытка в Photoshop — пошагово

Как выгнать воду из Apple Watch
Гаджеты

Как выгнать воду из Apple Watch

Как играть в игры Nintendo Switch офлайн
Gaming

Как играть в игры Nintendo Switch офлайн

Сортировка фото по лицам в Windows — руководство
Windows

Сортировка фото по лицам в Windows — руководство