Файл hosts на Android: назначение, расположение и редактирование

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

В отличие от Windows, где hosts правится обычным Блокнотом, на Android файл защищён системным разделом. Для полноценного редактирования требуются root-права, а без них доступны лишь обходные варианты — например, приложения, работающие через локальный VPN-интерфейс. Ниже разберём, как устроен файл, чем отличаются способы его изменения и как не «отрезать» себе интернет ошибочной записью.

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

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

На практике пользователи Android редактируют hosts в нескольких ситуациях:

  • 🚫 Блокировка рекламных и трекинговых доменов на уровне всей системы, без отдельного блокировщика в браузере.
  • 🔒 Запрет доступа к нежелательным сайтам — например, на детском или корпоративном устройстве.
  • 🛠️ Перенаправление домена на тестовый сервер при разработке и отладке приложений.
  • 🌐 Обход некорректных DNS-записей, когда домен должен открываться с конкретного IP-адреса.
  • 🧪 Диагностика сетевых проблем: проверка, связана ли ошибка открытия сайта с DNS или с самим сервером.

Каждая строка файла имеет простой формат: сначала IP-адрес, затем через пробел — домен. Классический пример блокировки выглядит так:

127.0.0.1 example.com

127.0.0.1 www.example.com

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

Где находится файл hosts на Android

Стандартный путь к файлу — /system/etc/hosts. По сути это символическая ссылка, которая в современных версиях Android ведёт в раздел /system/etc/, доступный только для чтения при обычной загрузке. Именно поэтому просто открыть файл текстовым редактором и сохранить изменения не получится — система вернёт ошибку записи.

Посмотреть содержимое файла без root-прав можно. Для этого подойдёт терминальный эмулятор или файловый менеджер с поддержкой системных каталогов. Команда просмотра в терминале:

cat /system/etc/hosts

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

Как отредактировать hosts с root-правами

Полноценное редактирование возможно только при наличии root-доступа, поскольку раздел /system смонтирован в режиме чтения. Общий порядок действий выглядит так: получить root, перемонтировать системный раздел на запись, внести изменения и вернуть безопасный режим. Конкретные шаги различаются в зависимости от способа рутирования и версии Android, поэтому сверяйтесь с инструкцией для вашей модели.

Через терминал процедура обычно выглядит следующим образом:

su

mount -o rw,remount /system

echo "127.0.0.1 unwanted-site.com" >> /system/etc/hosts

mount -o ro,remount /system

Альтернатива — файловые менеджеры с поддержкой root (например, MiXplorer, Root Explorer) или специализированные редакторы hosts из магазинов приложений. Они выполняют те же операции, но через графический интерфейс, что снижает риск опечатки в командах.

☑️ Безопасное редактирование hosts

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

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

Редактирование hosts без root: что реально работает

Без root-прав изменить сам файл /system/etc/hosts нельзя — это ограничение на уровне прав файловой системы, и обойти его штатными средствами не получится. Однако существует рабочая альтернатива: приложения, создающие локальный VPN-интерфейс и фильтрующие домены по собственному списку, аналогичному hosts.

Такие инструменты перехватывают DNS-запросы внутри устройства и блокируют или перенаправляют заданные домены, не трогая системный раздел. Известные примеры этого подхода — AdAway в режиме без root, DNS66, Blokada и подобные. Они поддерживают импорт готовых hosts-списков для блокировки рекламы и трекеров.

📊 Как вы используете hosts на Android?
Блокирую рекламу и трекеры
Перенаправляю домены для разработки
Ограничиваю доступ к сайтам
Только изучаю возможности

У метода есть ограничения. Локальный VPN занимает слот VPN-подключения, поэтому одновременно использовать его с настоящим VPN-сервисом не выйдет. Кроме того, фильтрация работает на уровне доменов и не может блокировать отдельные URL внутри сайта.

Сравнение способов изменения hosts

Каждый подход имеет свои ограничения по правам, рискам и гибкости. Сводная таблица поможет выбрать подходящий вариант под вашу задачу.

Способ Нужен root Гибкость Основные риски
Ручная правка /system/etc/hosts Да Полная: любые записи Повреждение системного раздела, потеря гарантии
Root-редакторы hosts Да Высокая, с удобным интерфейсом Те же риски root, зависимость от приложения
Приложения с локальным VPN Нет Блокировка доменов по спискам Конфликт с настоящим VPN, расход батареи
Private DNS (частный DNS) Нет Только фильтрация через сторонний DNS Зависимость от стороннего сервиса, нет ручных записей

Как видно, только root даёт настоящий контроль над файлом hosts. Остальные методы — компромиссы, которые закрывают типовые задачи вроде блокировки рекламы, но не позволяют, к примеру, направить домен на произвольный IP для отладки.

Типичные ошибки и проблемы при работе с hosts

Чаще всего пользователи сталкиваются с ситуацией, когда запись добавлена, а сайт всё равно открывается. Причин несколько: опечатка в домене, отсутствие варианта с www, кэш DNS в браузере или приложении, а также то, что часть приложений использует собственные DNS-резолверы и игнорирует системный hosts. Проверьте каждый пункт по очереди.

Вторая распространённая проблема — файл сбрасывается после перезагрузки. Такое происходит, если изменения вносились без перемонтирования раздела на запись либо если устройство использует механизмы защиты системного раздела, восстанавливающие его содержимое. В подобных случаях правки лучше вносить через модуль для используемого решения root-доступа, если оно это поддерживает.

Почему некоторые приложения игнорируют hosts

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

⚠️ Внимание: добавление большого числа записей (десятки тысяч строк из публичных блок-листов) напрямую в системный hosts может замедлить разрешение доменов и увеличить потребление памяти. Для массовой блокировки рекламы практичнее использовать приложения, оптимизированные под большие списки.

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

127.0.0.1 localhost

::1 ip6-localhost

Как проверить, что hosts работает

Самый быстрый способ — добавить тестовую запись и открыть домен в браузере. Например, направьте любой несуществующий для вас домен на 127.0.0.1: если вместо сайта появляется ошибка подключения, файл обрабатывается корректно. После проверки тестовую строку удалите.

Более точная диагностика доступна через терминал. Команда ping покажет, на какой адрес система резолвит домен:

ping -c 3 example.com

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

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

Можно ли редактировать hosts на Android без root?

Непосредственно файл /system/etc/hosts — нет: системный раздел защищён от записи. Без root доступны альтернативы: приложения с локальным VPN-интерфейсом (AdAway в режиме без root, Blokada и подобные) или настройка частного DNS в параметрах сети.

Где именно лежит файл hosts на Android?

По адресу /system/etc/hosts. Просмотреть его содержимое можно без root — через терминал командой cat /system/etc/hosts или файловый менеджер с доступом к системным каталогам.

Почему после правки hosts сайт всё равно открывается?

Типичные причины: опечатка в домене, отсутствие записи для варианта с www, кэш DNS браузера или то, что приложение использует собственный DNS-резолвер (например, DNS-over-HTTPS) и обходит системный hosts. Проверьте каждый пункт и очистите кэш браузера.

Опасно ли редактировать файл hosts?

Сама правка обратима, если сохранить резервную копию. Риск связан с root-доступом и перемонтированием системного раздела: ошибочные действия могут нарушить работу системы. Не удаляйте строку с localhost и добавляйте записи по одной с проверкой результата.

Сбрасывается ли hosts после перезагрузки или обновления системы?

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