Содержание
- Блокировка веб-сайтов через файл hosts: краткие советы по расположению и редактированию файла
- Что такое хост-файл и как с ним обращаться
- Отличия домена, хоста, хостинга и сервера
- Что такое хостинг и домен?
- Последние мысли об использовании файла hosts
- Тайна файла hosts
- Что такое файл hosts.
- Изучаем возможности файла hosts

Вы можете вручную сопоставить столько доменов, сколько захотите, если вы знаете, что делаете, и не злоупотребляете этим.
Блокировка веб-сайтов через файл hosts: краткие советы по расположению и редактированию файла
Возможно, вы слышали о файле hosts компьютера. Если нет, то вы не много потеряли. Буквально это файл с названием hosts. У него нет расширения, определяющего тип файла.
Таким образом, сам файл не имеет особого значения. Однако, будучи помещенным в определенное место внутри вашего компьютера, он может быть эффективным инструментом для управления доступом компьютера к внешнему миру – Интернету. В этом случае я бы назвал его файлом hosts.
Если вас интересует простой и эффективный способ заблокировать заблокировать доступ к определенным веб-сайтам с компьютера или вам интересно, что это за колдовство, вы читаете правильный пост.
Я объясню, как работает файл hosts, его расположение и быстрый способ редактирования на вашем компьютере, будь то Windows или Mac. Если вы пользователь Linux, скорее всего, вам не нужна помощь в редактировании случайного файла.

Знак решетки (#) в файле hosts означает строку комментария.
В программировании комментирование – это способ объяснить, что делает строка кода, не затрагивая сам код. Компьютер игнорирует символ # и текст, следующий за ним в каждой строке.
Если файл hosts имеет # в начале каждой строки, что является значением по умолчанию, это так же хорошо, как пустой файл.
Что такое хост-файл и как с ним обращаться
Каждый компьютер под управлением Windows, macOS или Linux имеет свой файл hosts. По умолчанию этот файл не действует. Он есть, но ничего не делает, кроме как содержит краткую информацию о том, что это такое и как его использовать.
Другими словами, вы можете удалить файл hosts по умолчанию, и ничего не произойдёт. Нам это не нужно. И мы всегда можем воссоздать его.
Понимание файла hosts
При определенном редактировании файл hosts работает как локальный преобразователь DNS компьютера. Это ручной способ сопоставления домена, такого как google.com, с определенным IP-адресом по вашему выбору.
Файл hosts – это первоначальный способ привязки домена к IP-адресу на заре взаимосвязанных компьютеров – до появления DNS-серверов.
Кратко о DNS-сервере
DNS-сервер подобен общедоступному каталогу в Интернете. Он указывает вам, куда вы хотите пойти. DNS-сервер не следует путать с Dynamic DNS , который работает несколько противоположным образом.
Вот типичный пример роли, которую играет DNS:
Всякий раз, когда вы получаете доступ к веб-сайту через его доменное имя, например, webznam.ru , браузер (Chrome, Firefox, Edge и т.д.) сначала запрашивает ваш DNS-сервер, установленный вашим домашним роутером.
Затем этот сервер ищет доменное имя веб-сайта (также известное как веб-адрес или URL-адрес) и возвращает браузеру его IP-адрес, представляющий собой строку, казалось бы, случайных чисел – каждый веб-сайт имеет IP-адрес. Затем браузер использует этот IP-адрес для загрузки веб-сайта.
Этот процесс необходим, потому что компьютеры понимают только числа, а люди довольно плохо их запоминают.
Во многом DNS-сервер похож на когда-то распространенную службу телефонных справочников, где вам нужно запомнить только имя человека, а не его номер телефона.
Таким образом, когда вы сопоставляете домен с несуществующим IP-адресом или адресом самого компьютера, вы фактически блокируете домен для пользователей компьютера.
Вот пример записи в файле hosts:
127.0.0.1 www.facebook.com #facebook – это пустая трата времени
Формат строки известен как синтаксис команды. В данном случае это:
IP-адрес (пробел) домен (пробел) #комментарий (необязательно)
Отличия домена, хоста, хостинга и сервера
- Часть, начинающаяся с # , необязательна. Это комментарий.
- Нам нужен только один пробел, чтобы разделить IP-адрес и домен или домен и необязательный комментарий. Но для ясности можно использовать несколько пробелов или клавишу Tab на клавиатуре.
- Домен должен совпадать с доменом фактического веб-сайта – некоторые включают «www», другие нет, например, www.facebook.com не равен facebook.com. Чтобы быть уверенным, вы можете использовать отдельную запись для каждого.
Этот конкретный пример записи привязывает www.facebook.com к IP-адресу локального хоста, самого компьютера и, по сути, блокирует доступ компьютера к Facebook. В частности, при переходе на facebook.com вы получите сообщение о том, что веб-сайт не существует или недоступен.
Кроме того, вы можете использовать 0.0.0.0 в качестве IP-адреса, чтобы получить тот же эффект. И если вы используете IP-адрес другого веб-сайта, запись становится подлой шуткой или злонамеренным взломом.
Это сопоставление вступает в силу для всей системы и немедленно, то есть оно повлияет на все учетные записи пользователей компьютера, и вам даже не нужно перезагружать компьютер.
Как это работает
Каждый раз, когда вы хотите получить доступ к домену, например, вводя его в браузере, компьютер проверяет файл hosts на наличие сопоставления, и если домен сопоставлен вручную, он будет использовать его и больше не будет запрашивать DNS-сервер для домена.
Вы можете вручную сопоставить столько доменов, сколько захотите, если вы знаете, что делаете, и не злоупотребляете этим.
В файле hosts каждая запись сопоставления (каждый домен) занимает одну строку. Вы можете сопоставить несколько доменов с одним и тем же IP. Так что используйте 0.0.0.0 или 127.0.0.1, если вы хотите заблокировать их все.
Итак, давайте выясним, где находится этот великолепный файл hosts на вашем компьютере и как его редактировать.
Как обращаться с файлом хоста на компьютере с Windows
На компьютере с Windows файл hosts всегда находится в этом месте: c:\windows\system32\drivers\etc\
В редких случаях, когда Windows установлена на другом диске вместо c: , измените букву диска соответствующим образом.

Скопируйте и вставьте эту строку в адресную строку проводника Windows и нажмите Enter , чтобы быстро добраться туда, как показано на снимке экрана выше.
Теперь вы можете управлять файлом любым способом, включая удаление, переименование или создание его копии. Кстати, если вы переместите файл хоста в другое место, это уже не будет иметь никакого эффекта.
Требуется немного работы, чтобы открыть файл хост для редактирования. Поскольку у него нет расширения, обычный двойной щелчок не подойдёт. Кроме того, вам нужно открыть его с правами администратора, чтобы иметь возможность вносить изменения.
Но, как правило, вы можете открыть его так же, как любой файл с помощью текстового редактора, например с помощью встроенного в Windows приложения «Блокнот».
Если вы не знакомы с приложением или не знаете, как обращаться с файлами в целом, самый быстрый способ открыть hosts для редактирования в Windows – это открыть его через командную строку с повышенными привилегиями – опять же, вы не сможете в противном случае сохранить изменения.
Вот шаги (как показано на скриншоте ниже).
- Запустите командную строку с повышенными привилегиями Введите cmd (без кавычек) в поле поиска рядом с кнопкой «Пуск». Когда в результате появится командная строка, выберите «Запуск от имени администратора».
Ответьте утвердительно на запрос безопасности, если таковой появится. Откроется окно командной строки. - Откройте файл hosts в блокноте: Скопируйте и вставьте следующую команду в окно командной строки и нажмите Enter : notepad c:\windows\system32\drivers\etc\hosts Это откроет файл в Блокноте, чтобы вы могли внести любые изменения.
- Отредактируйте файл и сохраните изменения. Введите домены, которые вы хотите заблокировать, следуя приведенному ниже синтаксису, по одному домену в строке, как показано в последних двух строках на снимке экрана. (Нажимайте Enter каждый раз, когда хотите создать новую строку.)
Если вы больше не хотите блокировать домен, удалите всю строку. После этого сохраните файл. (Используйте комбинацию клавиш Ctrl + S или просто закройте файл и при появлении запроса выберите «Сохранить».
Миссия выполнена! Блокировка вступит в силу немедленно.
Кстати, файл hosts имеет одинаковый синтаксис на разных платформах. Следовательно, вы можете использовать один и тот же файл на Windows и macOS. Или вы можете скопировать содержимое файла между ними.
Как обращаться с хост-файлом на Mac
Файл hosts находится в папке /private/etc/ на Mac, которая обычно скрыта.
Что такое хостинг и домен?
Вот шаги, чтобы найти файл hosts на Mac:
- Переместите Finder на передний план, щелкнув пустое место на рабочем столе, затем выберите «Перейти» → «Перейти к папке…».
- Введите /private/etc/ в поле и нажмите Перейти .
- Найдите файл hosts в появившейся папке. Если его нет, вы можете создать новый или скопировать его с другого компьютера.
Но если вы хотите отредактировать файл, вы можете пропустить вышеописанное.
Вот шаг, чтобы открыть файл hosts на Mac для редактирования
- Запустите терминал (используйте Spotlight для его поиска), введите следующую команду и нажмите Enter : sudo nano /etc/hosts Вам будет предложено ввести пароль для учетной записи. Сделай это!
- Файл hosts будет открыт в приложении Nano. Теперь вы можете использовать клавиши со стрелками для перемещения и ввода информации по мере необходимости. После этого используйте Ctrl + 0 , чтобы сохранить изменения, и Ctrl + X , чтобы выйти. Миссия выполнена.
Это не мера безопасности!
Прежде чем использовать файл hosts для блокировки, спросите себя, почему вы хотите заблокировать домен, а не просто не посещать его.
Независимо от того, каков ваш ответ, этот блокирующий механизм применяется, когда вы хотите установить контроль над чем-то, над чем у вас нет (достаточного) контроля.
Примером может служить практика родительского контроля над вашим ребенком, когда вы хотите дать себе подушку в сдерживании побуждения посетить веб-сайты, которые, как вы знаете, вам не следует, или, может быть, вы просто хотите произвести на кого-то впечатление.

Дело в том, что файл hosts – это не мера безопасности, а мера контроля. Блокировка домена не делает ваш компьютер безопаснее, а только предотвращает доступ к опасному.
Если я знаю о файле hosts, что теперь знаете и вы, мы должны предположить, что плохие парни тоже это знают. В результате имейте в виду, что файл может быть использован в недобрых целях, учитывая, насколько легко его можно изменить.
Последние мысли об использовании файла hosts
Использование файла hosts – это верный способ контролировать привязку домена к IP-адресу на компьютере. Это также простой и эффективный способ заблокировать определенные веб-сайты на компьютере.
Ввод одного домена за раз в файл hosts может занять много времени. По этой причине существует множество готовых файлов hosts, где кто-то составил длинный список заблокированных доменов, доступных для скачивания.
Однако будьте осторожны с этими предварительно упакованными файлами hosts. Они, как правило, включают сотни доменов, чтобы блокировать всевозможные вещи, включая законные сервисы.
Многие домены взаимосвязаны, и блокировка одного может привести к тому, что другие не будут работать должным образом. Блокировка неправильного домена также может привести к тому, что важные функции компьютера, такие как автоматические обновления или проверки безопасности/целостности, перестанут работать. Это не говоря уже о том, что там могут быть вредоносные записи.
Кроме того, большой файл hosts также может негативно сказаться на производительности. Желательно, чтобы его размер не превышал нескольких сотен килобайт.
Короче говоря, файл hosts – это хороший инструмент, если вы используете его правильно и по назначению. Но это также может быть болью, когда вы злоупотребляете им или не осознаёте что делаете.
В любом случае рекомендуется помнить об этом файле и использовать пустой файл hosts (по умолчанию) при устранении неполадок с подключением. Если вы сомневаетесь, вы можете безопасно отключить файл, переименовав, удалив или переместив его из местоположения по умолчанию.
Тайна файла hosts
Есть в операционной системе такой таинственный файлик hosts. Даже люди далекие от сетевых технологий наверняка слышали про него. На первый взгляд это обычный текстовый файл. Располагается он в папке C:\Windows\System32\drivers\etc . Кстати, этот файл не является эксклюзивным для Windows, он есть и в ОС Unix\Linux и в MacOS.
Что такое файл hosts.
Вот так примерно выглядит содержимое файла hosts по умолчанию:
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a ‘#’ symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
#
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
Как видите, внутри находится описание и пара примеров. Из описания следует, что файл содержит сопоставления IP-адресов с именами хостов. Каждая запись храниться в отдельной строке. Формат записи таков — первым идет IP-адрес, за ним через пробел имя хоста. С помощью решетки (#) к записи можно добавлять комментарии. Например:
102.54.94.97 rhino.acme.com # source server
Если не вдаваться в подробности, то файл hosts указывает, по какому IP-адресу надо обращаться к хосту. Данные из hosts имеют приоритет над данными, полученными с DNS-серверов, при этом сам файл полностью контролируется администратором компьютера, что позволяет администратору переопределять IP-адреса любых сетевых ресурсов.
Как работает разрешение имен
Для того, чтобы понять, что такое файл hosts, вкратце разберем принцип разрешения имен. Итак, у каждого ресурса в сети имеется свой IP-адрес, что то типа 192.168.0.1. Но пользователи (как правило) обращаются к сетевым ресурсам по их именам (напр. google.com), поэтому необходим механизм преобразования имени хоста в IP-адрес. На данный момент этот механизм реализован с помощью сервиса доменных имен (Domain Name Service, DNS).
Когда пользователь пытается получить доступ к хосту по его имени, клиент обращается к DNS серверу и получает IP-адрес, соответствующий указанному имени.

Для примера воспользуемся утилитой ping. Вот так выглядит разрешение имени в адрес на практике.

В Windows в качестве клиента DNS используется системная служба Dnscache. Как видно из ее названия, основной задачей этой службы является кэширование DNS-имен. Каждый раз при запросе к DNS-серверу полученный результат сохраняется в кэше DNS, где хранится в течение своего времени жизни (Time To Live, TTL). Это позволяет ускорить процесс разрешения имен, поскольку нужное имя можно взять из кеша без необходимости каждый раз обращаться к DNS-серверу .

Таким образом, Windows пытается разрешить имена в следующем порядке:
• Сначала проверяет, не совпадает ли имя с локальным именем хоста;
• Затем смотрит в кэш DNS;
• И только если в кэше соответствие не найдено, отправляет запрос к серверу DNS.
Посмотреть содержимое кэша DNS можно в командной строке с помощью команды ipconfig /displaydns , например:

Казалось бы, при чем здесь файл hosts? А при том, что его содержимое сразу считывается в кэш DNS и постоянно обновляется. Именно поэтому данные из файла hosts всегда имеют приоритет над данными, полученными с DNS-серверов. Для примера изменим добавив в hosts адрес www.google.com:

И еще раз проверим содержимое кэша. Как видите, теперь в нем находится адрес из файла hosts.

История файла hosts
Файл hosts пришел к нам из далекого прошлого из тех времен, когда компьютеры были очень большими, а глобальной сети Интернет не было и в помине.
Одной из первых компьютерных сетей была ARPANET, созданная по заказу американского военного агентства DARPA в 1969 году.
В семидесятых годах сеть ARPANET включала в себя всего несколько сотен узлов. А всю информацию по узлам, в том числе и необходимую для разрешения имен и адресов, содержал один единственный файл HOSTS.TXT. За файл отвечал Сетевой информационный центр Стэнфордского исследовательского института (Stanford Research Institute`s Network Information Center, SRI-NIC).
В тот период времени единственным источником, распространявшим файл, являлся узел SRI-NIC. Администраторы ARPANET просто посылали изменения электронной почтой в NIC и периодически синхронизировали свои файлы HOSTS.TXT с копией на узле SRI-NIC с помощью протокола FTP. Присылаемые ими изменения добавлялись в файл HOSTS.TXT один или два раза в неделю.
По мере роста сети эта схема становилась все менее работоспособной. Пропорционально количеству узлов в ARPANET увеличивался размер файла и рос объем работ, связанный с обновлением файла на узлах. При появлении каждого нового узла в сети необходимо было не только добавить строчку в HOSTS.TXT, но и синхронизировать эти изменения между SRI-NIC и всеми узлами сети.
И в 1984 году на замену файлу HOSTS.TXT пришла система доменных имен DNS. Однако сам файл hosts остался в операционных системах, в качестве дополнительного инструмента для работы с сетью.
Перенаправление файла hosts
По умолчанию в операционных системах Windows файл hosts располагается в папке С:\windows\system32\drivers\etc . Но при необходимости этот путь можно изменить. Значение пути, по которому располагается актуальный файл hosts, хранится в параметре реестра DataBasePath, находящемся в разделе HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters .

Кстати, этим свойством файла hosts очень любят пользоваться различные зловредные программы (вирусы, трояны и прочая нечисть). Они подменяют путь в реестре, а потом по новому пути подкладывают свой файл hosts, ведущий на подложные адреса. При этом оригинальный файл остается на своем месте и внешне все выглядит правильно. Так вот, по умолчанию значение параметра всегда %SystemRoot%\System32\drivers\etс и если вы увидите там что то другое, то стоит начать беспокоиться .
Восстановление файла hosts
Что случится, если файл hosts будет поврежден или удален? Да в принципе ничего страшного. Как я уже говорил, он является всего лишь вспомогательным инструментом и без него операционная система вполне сможет обойтись. Определить наличие проблем с файлом можно по событию с EventID 1012 в журнале событий операционной системы, в котором буде сообщение о невозможности прочитать файл.

Но восстановить файл hosts после повреждения, удаления или несанкционированного редактирования все же стоит, хотя бы для порядка. Сделать это довольно просто, достаточно создать в Блокноте обычный текстовый файл добавить в него текст, приведенный в начале статьи. Файл сохранить с именем hosts и без расширения и положить в родную папку С:\windows\system32\drivers\etc . Напоминаю, что для работы с файлом нужны права локального администратора на компьютере.
И еще нюанс — блокнот по умолчанию сохраняет файлы с расширением txt, а проводник по умолчанию не показывает расширения файлов. Поэтому во избежании ошибки включите в проводнике опцию показывать расширения файлов.

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

Есть такой маленький, но весьма интересный файл в операционных системах, в народной винде живет по адресу %windir%/system32/drivers/etc/hosts.
Буквы «etc» в пути к файлу говорят о том, что корни, как ни крути, растут из *nix-подобных систем. Ну да не об этом разговор. Разговор о другом. Однажды я захотел посмотреть фильм. Какой-то. Пока не знал еще какой. Зашел на один из любимых сайтов, где в изобилии фильмы онлайн. Не все, конечно, но крайне много. И был поражен тем, что рекламы на сайте стало в разы больше. Т.е, сайт выглядел примерно так:

Полный размер
Мне это не понравилось. Решил выяснить про то, с какими сайтами сотрудничает мой любимый сайт с онлайн-фильмами. Не буду приводить весь ход расследований, скажу лишь то, что удалось выяснить домен, с которого реклама подгружалась. Когда корень всех зол стал известен, вспомнил старый-старый способ, которым можно рекламу блокировать без внешних приложений. Им как раз и оказался файл hosts. Нужно всего лишь поправить его немного таким образом, чтобы ОСь немного обманулась. Суть блокировки заключается в том, что мы для операционной системы производим подмену понятий. Т.е, если по факту домен abc.com находится по адресу 111.222.333.444, а мы ему говорим, что этот домен надо искать на адресе 127.0.0.1.

Т.е, берем наш любимый текстовый редактор и правим этот самый файл. Добавляем в него три строчки, как на картинке выше.ОСь идет на этот адрес, ничего там не находит, следовательно, в рекламный блок ничего не может подставить. И мы наблюдаем уже совершенно другую картиину (при этом нужно обязательно гордится собой):

Полный размер
Если вдруг по каким-то причинам такой путь не подходит, то надо найти способ, который поможет заиметь в любимом брузере расширение adblock… Он справится с этим еще проще. В общем, метод для белокурых ). Но главное-то в чем? Результат!
Немного добавочки. Для того, чтобы отредактировать файл hosts нужно применить немного магии. Т.е., запускать редактор текстов обязательно от имени администратора! Иначе не выйдет каменный цветок.
Похожие статьи
-
Местоположение файла неизменно на протяжении нескольких десятков лет, начиная с ранних версий Windows NT. Hosts находится на системном диске в папке…
-
Также следите за тем, чтобы у файла не было расширения. Когда вы изменяете файл hosts в текстовом редакторе, то его расширение автоматически меняется на…
-
Редактирование файла hosts не всегда оказывается удачным. В отдельных случаях может понадобиться отменить исправления. Как изменить файл hosts в Windows…