Файл Hosts — что это такое, где он находится в Windows, что с ним делать вебмастеру и как удалить из него записи вирусов
Здравствуйте, уважаемые читатели блога KtoNaNovenkogo.ru. Сегодня я хочу поговорить о такой довольно-таки простой в своем устройстве вещи, как файл Hosts.
Что примечательно, живет он практически на всех операционных системах (а значит и всех компьютерах пользователей интернета), начиная от Линукса и заканчивая Windows 7. Еще одним отличительным его свойством является то, что он не имеет расширения, но это обусловлено именно тем, что работать он должен в любых ОС, а значит обязан быть универсальным.
Но не это главное. Хотя он и является пережитком прошлого, по прежнему есть масса способов использовать Хостс как в благих целях, так и не в очень. Например, вирусы и вирусописатели очень его любят и часто используют либо для подмены официальных сайтов их фишинговые дубли, либо для блокировки возможности обновления установленной у вас антивирусной программы.
Когда интернет только появился и был медленным, то многие пользователи прописывали в Hosts наиболее часто посещаемые ими ресурсы, а так же блокировали через него сервера с рекламой, ну, или доступ тем программам, которые они активировали, скажем так, не платя за это разработчикам.
Но даже сейчас этот файл может приносить пользу, в том числе и вебмастерам. Например, при смене хостинга вы вынуждены иногда ждать сутки, прежде через на всех DNS серверах пропишется новый IP адрес вашего сайта. Однако, можно начинать работать и тестировать сайт на новом хостинге сразу же после его размещения там. Как это сделать? Ну, все при помощи того же Hosts.
Кроме этого вообще будет полезно знать где находится файл Hosts, как его найти на разных операционных системах, как его проверить на предмет девственной чистоты от вирусных записей, ну и, наконец, как он должен выглядеть в оригинале.
Что такое 127.0.0.1?
127.0.0.1 – наиболее часто используемый IP-адрес для loopback.
Это часть зарезервированного блока из более чем шестнадцати миллионов IP-адресов, которые используются специально для его функциональности.
Обратная петля позволяет вашему компьютеру связываться с самим собой, используя протоколы сетевых подключений.
В широкой абстракции loopback – это виртуальное сетевое устройство, которое создает сетевое соединение только с одной конечной точкой, то есть оно начинается и заканчивается на одном и том же устройстве: вашем компьютере.
Фактически, это устройство даже отображается в ipconfig с именем lo, как показано выше.
Адреса обратной петли в основном используются для устранения неполадок (это похоже на отражение в зеркале) или для доступа к локальным ресурсам через сетевой интерфейс.
Использование Localhost
Разработчики используют локальный хост для тестирования программ и веб-приложений. Кроме того, сетевые администраторы также используют петлю для проверки сетевых подключений. Другим практическим использованием localhost является файл hosts, где вы можете использовать петлю для блокировки вредоносных сайтов.
Тестирование
Основное использование Localhost в веб-серверах для программирования приложений, которые должны общаться через Интернет. Во время разработки важно выяснить, действительно ли приложение работает так, как ожидается, когда оно будет иметь доступ к Интернету.
Другие функции Localhosts возможны только в том случае, если необходимые файлы можно найти в Интернете. Например, существует разница между открытием документа HTML на вашем ПК или его загрузкой на сервер и доступом к нему.
Выпуск незавершенного продукта без тестирования не имеет смысла, поэтому разработчики используют петлю для их тестирования. Они могут стимулировать соединение, избегая при этом обхода сети: вместо этого соединение остается полностью внутри своей системы.
Еще одним преимуществом использования localhost для тестирования является его скорость. Когда вы отправляете запрос через Интернет, это занимает более 100 миллисекунд. Если вы отправляете ping на localhost, максимальное время передачи составляет всего одну миллисекунду.
С помощью этой технологии вы также можете узнать, правильно ли реализован Интернет-протокол. Чтобы проверить это самостоятельно, просто откройте терминал и используйте команду ping . Вы можете отправить его на домен localhost или напрямую на IP-адрес.
Если вы хотите настроить свой собственный тестовый сервер на ПК для адресации его через локальный хост, вам сначала нужно установить правильное ПО.
Как правило, можно запустить любой стандартный веб-сервер на своем компьютере, но есть также специальное ПО, разработанное для использования в качестве локального хоста — например, XAMPP.
Блокировка сайтов
Localhost также играет роль в файле hosts. В принципе, этот файл является предшественником системы доменных имен (DNS): в нем IP-адреса могут быть назначены соответствующим доменам. Если вы вводите адрес веб-сайта в браузере, доменное имя необходимо преобразовать в IP-адрес.
Раньше это был файл хоста, но сегодня вы обычно используете глобальный DNS. Тем не менее, файл хоста по-прежнему присутствует в большинстве ОС.
Это гарантирует, что разрешение имен для локального хоста не должно выполняться через Интернет. К тому же, можно использовать файл для блокировки определенных веб-сайтов . Для этого введите сайт, который нужно заблокировать, в список и назначьте домену IP-адрес 127.0.0.1. Если вы — или, возможно, вредоносный скрипт — попытаетесь вызвать заблокированный домен, браузер сначала проверит файл hosts и найдет там вашу запись. Другой вариант — использовать доменное имя 0.0.0.0.
Затем браузер попытается получить доступ к соответствующему веб-сайту на сервере с 127.0.0.1.
Однако маловероятно, что браузер сможет найти его, потому что запрошенный файл не будет там. Если вы настроили свой собственный тестовый сервер, браузер может найти home.html , но это всего лишь ваш собственный файл.
Если вы не настроили свой собственный тестовый сервер, вместо запрошенного веб-сайта появится сообщение об ошибке. Эту технологию также можно использовать для отключения рекламных вставок по всей системе. Чтобы не делать каждую запись вручную, вы можете найти готовые и регулярно обновляемые файлы хоста в Интернете.
Для чего может понадобиться локальный сервер
Локальный сервер может быть полезен, например для следующих случаев:
- Установка различных систем управления контентом (CMS) для знакомства с их интерфейсом и административной панелью.
Сейчас уже практически никто не создаёт веб-сайты с нуля, как никто, например, не шьёт костюм, начиная с изготовления ткани на ткацком станке. Для этого, в основном, используются различные т.н. «системы управления контентом» CMS (Content Management System), как WordPress, или многие другие.
Однако, чтобы убыстрить знакомство с ними, понять различные аспекты взаимодействия и сэкономить время, усилия и стоимость удалённого доступа, можно установить CMS как локальный сервер, и отработать в такой лаборатории все требуемые детали.
- Для обучения программированию, работе в различных программах вёрстки, обработки изображений и пр.
Разработки программ часто ведётся удалённо на облачных платформах PaaS (Platform as a Service). Это даёт возможность коллективу разработчиков ПО значительно сэкономить на начальных инвестициях, поскольку в этом случае не нужно закупать дорогостоящее серверное оборудование, чтобы развернуть аппаратную среду разработки у себя в офисе или дома. Вместо этого, можно воспользоваться облачными услугами PaaS, которые предоставят разработчику весь необходимый спектр сервисов.
Однако, эту среду разработки нужно вначале изучить, и понять все её особенности. Если сразу начать работать с облачным провайдером PaaS, это может быть чревато нерациональными затратами на удалённый доступ, возможностью приобретения функционала, который в дальнейшем не потребуется, да и время будет тратиться больше.
Поэтому, рациональным решением будет развёртывание среды PaaS в минимальной конфигурации в виде локального сервера, а затем, после получения необходимого опыта можно будет переходить на взаимодействие с полнофункциональной платформой в удалённом режиме.
- Для тестирования корректности работы систем резервирования и катастрофоустойчивости
При использовании систем резервного копирования необходимо проверять их работоспособность. Если этого не делать, то возможны ошибки, например при кодировке или форматировании данных. Поэтому, корректность работы системы резервного копирования лучше вначале проверять на локальном сервере.
- Для корректировки структуры веб-сайта
Изменение какой-либо информации на сайте, например, при установке новых модулей, изменение вёрстки, импорт и экспорт большого количества информации лучше вначале делать на локальной копии сайта, которая работает в среде локального сервера. Иногда крупные изменения структуры сайта могут приводить к искажению его внешнего вида, скрытию на экране важной для пользователя информации и даже к нарушению его нормальной работы.
Конечно, если необходимо поменять, скажем, только номер контактного телефона ила добавить пункт меню, то это безбоязненно можно сделать и прямо на веб-сервере, без того, чтобы тратить время на проверку результата такого элементарного действия на локальном сервере.
Однако, более глубокие изменения структуры сайта лучше в начала тестировать на локальной копии веб-сайта, а потом уже запускать её «в производство».
Синтаксис или правила редактирования файла hosts
- Каждый элемент должен располагаться на отдельной строке т.е. при дописывании нового адреса обязательно переходим на новую строку (жмем Enter);
- IP-адрес должен начинаться с первой позиции строки (скажем так в начале предложения), за ним (в той же строке) должно следовать соответствующий адрес ресурса (имя хоста);
- IP-адрес и имя ресурса должны быть разделены между собой хотя бы одним пробелом;
Комментарии должны разделяться символом # (решётка); - Если комментарии используются в строках соответствия доменных имен, они должны следовать за именем узла и отделяться от него символом # (решётка);
Все что идет в одной строке после решетки # это не правила. Это просто комментарии и они ничего не значат и не делают.
Так что же значит localhost?
В компьютерной сети локалхост относится к компьютеру, на котором запущена программа. Компьютер работает как виртуальный сервер. В этом смысле компьютер — это не физический объект, а система, которая работает внутри. Если это трудно понять, рассмотрите localhost как способ «позвонить» вашему компьютеру в контексте работы в сети.
Localhost — это не только термин, но и доменное имя, например google.com или wikipedia.org. Это адрес. Если при вводе google.com в браузере вы попадете на главную страницу Google, куда вас доставит localhost? Он приведёт вас к вашему компьютеру. Эта ситуация также известна как адрес обратной связи.
Как и любое другое доменное имя, localhost также имеет IP-адрес (интернет-протокол). Адрес варьируется от 127.0.0.0 до 127.255.255.255, но обычно это 127.0.0.1. Попытка открыть 127.0.0.1 в соединении IPv4 вызовет обратную петлю. Вы также можете запустить петлю в соединении IPv6, введя: 1.
Интересный факт: первая часть адреса — 127 — зарезервирована только для петель. По этой причине Transmission Control Protocol и Internet Protocol (TCP/IP) немедленно распознают, что вы хотите связаться с вашим компьютером после ввода любого адреса, начинающегося с этих номеров. Вот почему ни один веб-сайт не может иметь IP-адрес, который начинается со 127. Если это сделать, это действие создаст устройство обратной связи; который является виртуальным интерфейсом внутри операционной системы вашего компьютера.
Каковы общие преимущества для 127.0.0.1
Общей методикой для проверки правильности работы сетевого оборудования, операционной системы и TCP IP / IP компьютера является отправка запроса ping на 127.0.0.1.
Основные преимущества рассматриваемого понятия такие:
1 В тестировании в закольцованом режиме благодаря протоколу 127.0.0.1 можно получить самые точные результаты относительно работы сетевой системы компьютера. Все проблемы с запросом и откликом будут давать чистый результат, без погрешности влияния внешних сетей серверов или компьютеров.
2 Основываясь на результатах теста, администраторы или пользователи компьютеров могут устранить проблемы с подключением к сети. Разработчики приложений также используют loopback-адрес для тестирования основных сетевых функций при разработке программы. Или же прикладного компонента до перехода в «живую» сеть или Интернет с помощью тестирования или развертывания.
3 Это позволяет полностью проследить поведение программы или приложения в отношении работы в сети. При том, все делается как бы на ладошке, что дает возможность ускорить тестирование программы. Также это позволяет работать над настройкой поведения программы и исправления ошибок в реальном времени за долго до того как программа начнет работать в сети в той среде, для которой предназначена.
4 Это не только упрощает тестирование но и делает его более точным, легким, прозрачным и не затратным.
5 Ознакомившись с принципом работы с доменом 127.0.0.1, вы можете и сами придумать ему применение в зависимости от того какие цели вы перед собой ставите.
Всемирная сеть продолжает развиваться, и не исключено, что для новых задач будут необходимы новые инструменты, новые системы, алгоритмы и протоколы.
А возможно старые инструменты обретут новые значения и возможности.
Не исключено что именно вам предстоит сделать новые открытия в плане того как еще можно применить старый, добрый localhost.
Творческих успехов вам в использовании закольцованного домена 127.0.0.1 localhost!
Как его активировать, вы можете посмотреть в видео ниже.