При веб-разработке, настраивая какие-либо компьютерные сети, возможно, вы могли встретиться с таким файлом, который называется hosts. 

Этот файл по умолчанию есть в операционных системах Windows, Mac OS. 

Что это за файл и для чего он нужен?

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

С домашнего компьютера, мы набираем в адресную строку браузера адрес какого-то сайта (хост). 

Компьютеры не умеют работать с текстовыми адресами. Чтобы расшифровать этот запрос, компьютер умеет работать с цифрами, он понимает ip-адреса. Т.е. это просто набор цифр. По IP адресу можно определить, к какому компьютеру в Интернет мы обращаемся. 

Чтобы строку yandex.ru преобразовать в IP-адрес используется специальная служба, которая называется DNS. Т.е. запрос идет не напрямую к компьютеру серверов Яндекса, а сначала этот запрос поступает в службу DNS (Domain name system или именная система доменов).

Все запросы на эту службу идут через эту службу. По сути, там просто есть база данных, которая содержит IP-адреса сайтов в Интернете и доменные имена, которые им соответствуют. 

См. видео, чтобы подробнее посмотреть эту схему.

Казалось бы, а причем здесь файл hosts. Дело в том, что эта картина, которую мы рассмотрели, она несколько сложнее. Нужно в схему добавить файл hosts, который есть в операционных системах. 

Какая задача этого файла?

Этот файл находится у нас на домашнем компьютере. 

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

Этот файл содержит специальные инструкции и команды, который содержит базу данных, в котором мы можем сообщить, какому домену какой сайт соответствует. 

Запрос, который мы отправляем, может либо изменен и остаться на этом компьютере, либо отправлен далее в службу DNS.

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

Это что-то вроде фильтра между сетью Интернет и нашим домашним компьютером.

Файл hosts - это обычный текстовый файл, который содержит настройки того, как компьютер будет обрабатывать интернет хосты. С теорией все. Давайте в следующем видео посмотрим как работать с этим файлом на практике.