hosts

hosts (ранее HOSTS.TXT) — текстовый файл, содержащий базу данных доменных имен и используемый при их трансляции в сетевые адреса узлов. Запрос к этому файлу имеет приоритет перед обращением к DNS-серверам. В отличие от системы DNS, содержимое файла задаётся администратором компьютера.

Расположение и содержание

В разных операционных системах файл имеет разное расположение:

Операционная система Версии Расположение
UNIX и UNIX-подобные /etc/hosts[1]
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

IP-адреса и названия доменов разделены символами табуляции. Комментарии начинаются знаком «#» (решётка). Пустые строки игнорируются.

Обычно файл включает в себя определение расположения узла localhost[2]

127.0.0.1       localhost

Перенаправление доменов

Перенаправление доменов используется программистами и администраторами интрасети (например, перенаправление local на узлы интрасети), а также для ускорения загрузки сайтов путём сопоставления их IP-адресов доменным именам. Так называемые «символы-джокеры» (англ. wildcards) в самом файле hosts не поддерживаются.

Блокировка ресурсов

С помощью файла hosts возможно осуществлять фильтрацию рекламы путём перенаправления доменных адресов баннеров на адрес 127.0.0.0, 127.0.0.1 или 0.0.0.0. Использование 127.0.0.1 обычно не рекомендуется, так как приводит к ожиданию ответа и сопутствующим задержкам, если сервер не существует или неправильно настроен.

Историческая справка

В семидесятых годах сеть ARPAnet представляла собой тесное сообщество из нескольких сотен узлов. Всю информацию по узлам, в частности необходимую для взаимных преобразований имен и адресов узлов ARPAnet, содержал единственный файл HOSTS.TXT. Известная UNIX-таблица узлов, /etc/hosts, прямо унаследовала свою структуру от файла HOSTS.TXT (в основном с помощью удаления ненужных на UNIX-системах полей).

За файл HOSTS.TXT отвечал Сетевой информационный центр (NIC, Network Information Center) Стэнфордского исследовательского института (SRI, Stanford Research Insitute). В тот период времени единственным источником, распространявшим файл, являлся узел SRI-NIC.1 Администраторы ARPAnet, как правило, просто посылали изменения электронной почтой в NIC и периодически синхронизировали свои файлы HOSTS.TXT с копией на узле SRI-NIC с помощью протокола FTP.

Присылаемые ими изменения добавлялись в файл HOSTS.TXT один или два раза в неделю. Однако по мере роста сети ARPAnet эта схема стала неработоспособной. Размер файла рос пропорционально количеству узлов ARPAnet. Еще быстрее рос информационный поток, связанный с необходимостью обновления файла на узлах: появление одного нового узла приводило не только к добавлению строки в HOSTS.TXT, но и к потенциальной необходимости синхронизации данных каждого узла с данными SRI-NIC.

В 1984 году были изданы документы RFC 882 и 883, в которых описывалась система доменных имен (Domain Name System, или DNS) пришедшая на замену HOSTS.TXT, а использование файла hosts теперь является необязательным и скорее дополнительным инструментом при работе с сетью.

Использование при соединении через прокси-серверы

Замена IP-адреса на доменное имя, записанное в строке файла hosts, не работает (Windows), если используется соединение через Proxy-Server, в этом случае разрешение имён происходит на уровне Proxy. Если настроено подключение к интернет только через Proxy, то нужно прописать замену в строку файла hosts, а также в настройках соединения в браузере к настройкам Proxy добавить адрес в исключения для обработки прокси (например, в браузере Internet Explorer это делается так: Сервис-Свойства обозревателя-вкладка Подключения-Настройка сети-Дополнительно-Не использовать прокси-сервер для адресов, начинающихся с, добавить строку с именем, указанным в файле hosts) только в этом случае узел будет игнорироваться Proxy, и замена будет работать. Иначе замена будет работать только для соединений, которые подключаются к Интернету напрямую (не через Proxy).

ПО для работы с hosts

Для редактирования файла hosts годится любой простейший текстовый редактор (к примеру, в Windows можно использовать поставляемую с ОС программу «Блокнот» или бесплатный Notepad++; при этом, в ОС начиная с Windows Vista текстовый редактор следует запускать «от имени администратора»). Однако создано немало программ, облегчающих и автоматизирующих работу с этим файлом. Например, программа Hosts Commander[3] позволяет выполнять сложные операции с hosts из командной строки.

Для пользователей операционных систем Windows есть бесплатные программы с графическим интерфейсом. Например:

HostsXpert для Windows 2000, XP, Vista, 7, 8, Server 2003, Server 2008, Server 2008 R2[4].

HostsMan для Windows XP SP2, Server 2003 SP1, Vista, Server 2008, 7, 8, Server 2012, 8.1, Server 2012 R2[5].

Использование в злонамеренных целях

На сегодняшний день большое количество вредоносных программ используют файл hosts для блокирования доступа к веб-сайтам популярных порталов или социальных сетей, или перенаправляют пользователя на страницы, внешне похожие на популярные ресурсы (социальные сети, почтовые сервисы и т. д.), куда невнимательный пользователь вводит учётные данные, попадающие таким образом к злоумышленникам. Также возможно блокирование доступа к веб-сайтам компаний-разработчиков антивирусного программного обеспечения.

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

Примечания

  1. Linux Network Administrators Guide - Writing hosts and networks files (недоступная ссылка). Дата обращения: 9 июня 2010. Архивировано 4 апреля 2012 года.
  2. Microsoft Support Document 258495 — Troubleshooting Client Connectivity (недоступная ссылка). Архивировано 4 апреля 2012 года.
  3. Hosts Commander.
  4. http://www.wintotal.de/softwarearchiv/?id=5452 Архивная копия от 15 августа 2016 на Wayback Machine HostsXpert Version: 4.4
  5. http://www.abelhadigital.com/hostsman HostsMan

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.