Файл hosts. Что это и с чем его едят?

Что такое файл hosts? Таким вопросом задаются пользователи, которые делают свои первые шаги в освоении компьютера. Такой файл существует практически во всех операционных системах (включая мобильные ОС).что такое hosts файл В данной статье вы узнаете много интересного о его функциях и возможностях. Любой пользователь ПК должен иметь хоть какое либо представление о файле хост.

Файл Hosts. Что это?

Мало кто из пользователей персональных компьютеров знают о существовании такого файла. А между тем, знающие люди используют этот файл в своих целях. Например те кто пишут вирусы. Они с помощью редактирования файла Hosts блокируют доступ к определенным сайтам. Не так давно было много жалоб пользователей, которые не могли зайти на свою страницу в социальной сети ВКонтакте, Одноклассники и так далее. Именно файл хост использовался во многих случаях для блокировки этих сайтов.
Файл hosts — это текстовый файл, который содержит базу данных доменных имен (URL'ов) сопоставляемых их IP адресам. Адрес любого домена первоначально имеет свой ip-адрес. На одном ip-адресе может быть расположено несколько сайтов с разными доменами (url адресами). По умолчанию в файле hosts прописан лишь один ip-адрес — 127.0.0.1, зарезервированный для локального (вашего) компьютера, который именуется как localhost.

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

В разных версиях Windows, а также других ОС, хост файл располагался в разных директориях. Для наглядности приведу таблицу из Википедии, в которой указано расположение файла в разных ОС.

Операционная система Версии Расположение
UNIX и UNIX-подобные /etc/hosts
Windows 95, 98, ME %windir%\
NT, 2000, XP, 2003, Vista, 7, 8, 10 %SystemRoot%\system32\drivers\etc\hosts, его расположение может быть переопределено в ключе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\DataBasePath, в котором содержится путь к папке.
Windows Mobile Ветка реестра \HKEY_LOCAL_MACHINE\Comm\Tcpip\Hosts
Mac OS< 9 и более ранние Системная папка: Preferences или просто в системной папке
Mac OS X и iOS Все версии Mac OS 10 /private/etc/hosts или /etc/hosts (/etc на OS X — символьная ссылка к /private/etc)
Novell NetWare SYS:etc\hosts
OS/2 и eComStation "bootdrive":\mptn\etc\
Symbian OS 6.1—8.1 C:\system\data\hosts
9.1+ Z:\private\10000882\hosts
Android /system/etc/hosts

Происхождение и принцип работы

Когда и как появился файл хостс? С самого начала появления компьютеров и локальной сети, для удобства пользователей, хостам присваивались имена.

Хост (от англ. host — «хозяин, принимающий гостей») — любое устройство, предоставляющее сервисы формата «клиент-сервер» в режиме сервера по каким-либо интерфейсам и уникально определённое на этих интерфейсах. В более частном случае, под хостом могут понимать любой компьютер, сервер, подключённый к локальной или глобальной сети.

Чтобы сопоставить имя хоста с ip адресом отправлялся запрос на главный хост, который в ответ направлял список всех имен и адресов к ним. Host file регулярно рассылался всем подключенным к сети компьютерам. Со временем, из-за развития глобальной сети значительно возросло количество пользователей, а значит и хостов и серверов. Файл хост стал разрастаться и стали появляться огромные задержки при регистрации и получении имен новыми компьютерами в сети. Проблему помогла решить служба доменных имен - DNS.

DNS (англ. Domain Name System — система доменных имён) — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства)

Необходимость в рассылке файла hosts компьютерам отпала. Теперь когда пользователь в адресной строке браузера набирает url-адрес какого либо сайта, происходит следующее:

  1. Так как запрос к файлу hosts имеет приоритет перед DNS службой, браузер сначала обращается именно к нашему файлу и проверяет не совпадает ли ip адрес запрашиваемого сайта с ip адресом localhost, то есть 128.0.0.1
  2. Если не совпадает, то проверяется файл hosts на наличие запрашиваемого адреса.
  3. Если адрес (имя хоста) в наличии, то идет переход по указанному хосту (ip-адресу)
  4. Если запрашиваемый адрес не найден, то сначала идет обращение к кешу DNS распознавателя, а потом уже соответственно к DNS серверу
  5. Если запрашиваемый сайт существует, то DNS сервер преобразовывает url адрес сайта в ip адрес и браузер уже переходит по данному ip адресу и загружает его содержимое.

Здесь важное замечание - в отличие от DNS сервера, файл hosts полностью контролируется пользователем (администратором) компьютера и имеет приоритет перед DNS.
Давайте узнаем, что вообще содержится в этом файле.

Оригинальные файлы hosts. Содержание файлов hosts по умолчанию

Как бы странно это не звучало, но пустой файл хост это тоже правильный оригинальный файл. Вы это сами поймете когда дальше в статье узнаете про правила редактирования данного файла. А пока все же приведу то содержание, которое идет как говорится с коробки.
Нажмите на спойлеры, для раскрытия.

Windows XP

# Copyright (c) 1993-1999 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
# 127.0.0.1 localhost
Windows Vista

# Copyright (c) 1993-2006 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
# 127.0.0.1 localhost
# ::1 localhost

Windows 7, 8, 10

# 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

Синтаксис или правила редактирования файла hosts

  • Каждый элемент должен располагаться на отдельной строке т.е. при дописывании нового адреса обязательно переходим на новую строку (жмем Enter);
  • IP-адрес должен начинаться с первой позиции строки (скажем так в начале предложения), за ним (в той же строке) должно следовать соответствующий адрес ресурса (имя хоста);
  • IP-адрес и имя ресурса должны быть разделены между собой хотя бы одним пробелом;
    Комментарии должны разделяться символом # (решётка);
  • Если комментарии используются в строках соответствия доменных имен, они должны следовать за именем узла и отделяться от него символом # (решётка);

Все что идет в одной строке после решетки # это не правила. Это просто комментарии и они ничего не значат и не делают.

Как изменить файл hosts?

Рассмотрим изменение файла hosts на примере Windows 10. В Windows 10 этот файл расположен в директории: C:\Windows\System32\drivers\etc где находится файл hosts
Если такого файла там нет, то нужно в параметрах папок установить галочку в опцию Показывать скрытые файлы, папки и диски. О том как это сделать мы писали в этой публикации.
Файл hosts не имеет своего расширения, но его можно редактировать с помощью простого блокнота. Для этого:

  • Нажмите на самом файле правую кнопку мышки.
  • Выберите пункт Открыть с помощью.чем открыть файл хост
  • Из списка выберите редактор Блокнот и нажмите ОК.редактируем файл хост с помощью Блокнота

Иногда может понадобиться запуск Блокнота с правами администратора.

Как использовать файл hosts в своих целях?

Мы с вами разобрались как изменить файл hosts, а также ознакомились с правилами его редактирования. Теперь приведу вам пару примеров по использованию хост файла для своей пользы.
Например можно уменьшить количество запросов к DNS серверам тех сайтов, которые вы ежедневно, часто посещаете. Это ускорит их загрузку. Пусть это будут поисковики yandex.ru, google.ru

  • Откройте файл hosts в программе блокнот (либо в любом другом текстовом редакторе).
  • В самом конце добавьте вот такие строчки:
    216.58.206.3 google.ru
    216.58.206.14 google.com
    77.88.55.55 yandex.ru
  • Сохраните изменения.

Для такого трюка нам понадобятся только IP адреса нужных нам сайтов. Их можно узнать с помощью сервиса 2ip.ru
Здесь мы воспользовались тем, что файл хост имеет приоритет перед DNS серверами. Другими словами браузер проверив хост файл и увидев там адрес сайта, сразу переходит на страницу не обращаясь к DNS-кешу.
Также мы можем и заблокировать доступ к нежелательному для нас сайту. Пусть это будет сайт FaceBook. Для этого нужно в конце файла дописать строки:
127.0.0.1 www.facebook.com
127.0.0.1 facebook.com

Теперь сайт facebook не будет у вас открываться в браузере.
В итоге после сделанных изменений файл 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

216.58.206.3 google.ru
216.58.206.14 google.com
77.88.55.55 yandex.ru
127.0.0.1 www.facebook.com
127.0.0.1 facebook.com

Часто вирусы используют ваш хост файл для блокировки популярных социальных сетей, сайтов компаний выпускающих антивирусные программы и поисковиков. Вирус, проникая в вашу операционную систему, добавляет туда строки для блокировки ресурсов. Поэтому, если у вас вдруг, не получается заходить на популярные интернет ресурсы, то не лишним будет проверить содержание вашего хост файла. При проверке обязательно прокрутите ползунок вертикальной прокрутки до самого низа. Часто вирусы добавляют правила после многочисленных пробелов либо переводов строки.
Часто вирусы также меняет атрибуты самого файла, а именно устанавливает атрибуты Системный и Скрытый (о том как снять эти атрибуты подробно было описано в этой статье). Из-за этого возможно вы не найдете файл hosts в папке C:\WINDOWS\system32\drivers\etc, но это можно исправить сняв атрибуты.

Как создать свой File Hosts?

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

  1. Создайте простой текстовый файл с расширением .txt.
  2. Далее нажмите на файле правой кнопкой мыши и выберите из контекстного меню пункт Переименовать.
  3. Назовите файл hosts и удалите в конце названия расширение .txt(если вы, при переименовании не видите расширение файла, то прочтите вот эту статью).
  4. Теперь осталось добавить в него содержание и сохранить файл в директории C:\WINDOWS\system32\drivers\etc (в зависимости от ОС директория будет разная)

Итоги

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

Закладка Постоянная ссылка.

Форма подписки по e-mail:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я согласен(а) с обработкой персональных данных и политикой конфиденциальности