Введение
/etc/hosts — это текстовый файл на компьютере, который сопоставляет имена хостов (hostnames) с IP-адресами. Он используется для разрешения статического имени, которое не обновляется автоматически, как записи системы доменных имен (DNS).
/etc/hosts обычно является первым файлом, который проверяется при разрешении доменного имени, поэтому его можно использовать для блокировки веб-сайтов или перенаправления пользователей на другие веб-сайты. По умолчанию должно выглядеть так:
cat /etc/hosts
127.0.0.1 localhost
127.0.0.1 noviello ubuntu2204
# The following lines are desirable for IPv6 capable hosts::1 localhost ip6-localhost ip6-loopback
ff00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Добавляем новую запись в /etc/hosts
Вы также можете использовать /etc/hosts для разрешения доменных имен, которых нет в глобальной DNS, таких как локальные серверы разработки или серверы интрасети. Это можно сделать, добавив записи для этих серверов в /etc/hosts с соответствующими IP-адресами. Например:
127.0.0.1 localhost
127.0.0.1 noviello ubuntu2204
# The following lines are desirable for IPv6 capable hosts::1 localhost ip6-localhost ip6-loopback
ff00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
192.168.1.200 demo.example.com
127.0.0.1 local.example.com
- demo.example.com сопоставляется с IP-адресом 192.168.1.00
- local.example.com сопоставлен с 127.0.0.1 (localhost).
Заблокировать сайт с помощью /etc/hosts
Мы также можем использовать этот файл для предотвращения доступа к любому домену. Это может быть полезно родителям для контроля доступа к сайту своих близких. Например, если кто-то хочет заблокировать весь трафик на facebook.com, он может добавить запись в /etc/hosts, указывающую facebook.com на 127.0.0.1, который является петлевым адресом и не будет разрешаться ни на какой реальный веб-сайт:
127.0.0.1 localhost
127.0.0.1 noviello ubuntu2204
# The following lines are desirable for IPv6 capable hosts::1 localhost ip6-localhost ip6-loopback
ff00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.0.1 facebook.com wwww.facebook.com
Вывод
/etc/hosts — это мощный инструмент, который можно использовать для различных целей, и важно понимать, как он работает, чтобы эффективно его использовать.