Система доменных имён DNS (Domain Name System) — это «адресная книга» интернета, которая переводит имена веб-сайтов в понятные браузерам IP-адреса. 2
В контексте блокировки сайтов через файл hosts работает следующий алгоритм: 1
- Пользователь вводит адрес сайта в адресную строку браузера. 1
- Браузер проверяет в своём кэше, выполнялся ли вход на данный сайт прежде. 1 Если да, то он загружает информацию из кэша и подгружает обновлённую информацию, если она появилась с момента последнего входа на сайт. 1 Если нет, то выполняется запрос к файлу hosts. 1
- В файле hosts хранится информация в виде соответствия между IP-адресами и адресами сайтов. 1 По сути, он является как бы локальным DNS-сервером, так как в его функции входит преобразование доменных имён в IP-адреса. 1
- Если запись найдена, то выполняется загрузка сайта с указанного IP-адреса. 1 Если нет, то выполняется запрос к кэшу DNS. 1
- Кэш DNS также хранит информацию в виде соответствия между IP-адресом и адресом сайта. 1 Но в нём хранятся последние адреса, к которым были обращения, таким образом ускоряется процесс преобразования доменного имени в IP-адрес. 1
- DNS-сервер ищет IP-адрес в глобальной базе адресов и: 1
- если находит, то выполняется загрузка сайта с указанного IP; 1
- если нет, то выдаётся сообщение «Веб-страница недоступна». 1
Чтобы заблокировать определённый сайт, в файл hosts указывают соответствие между доменом и IP-адресом, например 127.0.0.1 — это IP-адрес локальной машины. 15 Когда пользователь захочет перейти на сайт, браузер будет запрашивать сайт у локального компьютера, а не из сети интернет. 1 Так как на локальном компьютере никакой подобной информации нет, то пользователь получит сообщение «Веб-страница недоступна». 1