Skip to content

Что такое Localhost и чем он отличается от 127.0.0.1?

Даже когда все сетевые устройства отключены, ваш компьютер может обмениваться данными по сети. Машина Unix, известная как "loopback", может отправлять и получать сетевые сообщения от себя и себе через виртуальное сетевое устройство. Ваш компьютер может отправлять сообщения от самого себя к самому себе, обеспечивая обмен данными в сетевом стиле без необходимости в функционирующей сети.

Что такое 127.0.0.1?

127.0.0.1 - это наиболее часто используемый IP-адрес обратной петли. Это часть зарезервированного блока из более чем шестнадцати миллионов IP-адресов, которые используются специально для функции обратной связи. Петля позволяет вашему компьютеру связываться с самим собой при использовании протоколов сетевого подключения.

разница-localhost-127-0-0-1-ipconfig-lo

В широком смысле loopback - это виртуальное сетевое устройство, которое создает сетевое соединение только с одной конечной точкой, что означает, что оно начинается и заканчивается на одном устройстве: на вашем компьютере. Фактически, устройство loopback даже отображается в ipconfig с именем lo, как показано выше. Адреса обратной связи в основном используются для устранения неполадок (это похоже на просмотр в зеркало) или для доступа к локальным ресурсам через сетевой интерфейс.

Что такое localhost?

разница-localhost-127-0-0-1-сети

"Localhost" описывает коммуникационный порт, который подключается к исходному серверу. Это позволяет сетевому соединению "закольцовываться" само по себе, позволяя имитировать сетевые соединения, когда такая сеть отсутствует или недоступна. На практике localhost рассматривается как синоним 127.0.0.1 для использования и обсуждения. Однако важно помнить, что они не совсем идентичны.

Перед тем, как сделать DNS-запрос на перевод введенной пользователем текстовой строки в IP-адрес с возможностью навигации, операционная система проверяет файл HOSTS на наличие псевдонимов или правил перенаправления. В системе, настроенной на стандартные значения по умолчанию, "localhost" в URI будет преобразован в 127.0.0.1 для IPv4 или :: 1 для IPv6. Однако существует гораздо больше адресов обратной связи, чем только эти два. Блок IP-адресов, зарезервированных для адресов обратной связи, простирается от 127.0.0.0 до 127.255.255.255.

В большинстве случаев localhost разрешается до 127.0.0.1 благодаря правилу перенаправления в файле HOSTS, как упоминалось выше. Но в некоторых случаях localhost может быть сопоставлен с другим IP-адресом. Таким образом, localhost можно указать на любой IP-адрес в этом блоке, и он будет работать идентично.

Вывод: в чем разница между localhost и 127.0.0.1?

На большинстве машин localhost и 127.0.0.1 функционально идентичны. Но localhost - это метка для IP-адреса, а не сам адрес. Localhost может указывать на разные IP-адреса. Фактически, он может указывать на любой IP-адрес, даже вне зарезервированного блока адресов. Файлу HOSTS все равно, и он вас не остановит. Однако это нарушит значительную функциональность вашей системы и приведет к сбою любого приложения, использующего соединение localhost.

Блок адресов 127 был выбран для блока адреса обратной связи, потому что это был последний блок адресов класса A, которые выполняются от значения двоичного адреса 00000001 до 01111111. В IPv6 адрес обратной связи является первым адресом, 0: 0: 0 : 0: 0: 0: 0: 1, чаще всего выражается в усеченной форме как :: 1.

Если вы переходите с Windows на систему Unix, вы могли заметить, что loopback практически синонимичен с localhost. Вы можете использовать свой файл HOSTS, чтобы сделать "петлевое" перенаправление на 127.0.0.1, но это скорее замена текста, чем что-либо еще.