Поиск по сайту:

В чем реальная разница между Localhost и 127.0.0.1?


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

Как человек с более чем 10-летним опытом работы в Linux, я могу объяснить оба термина простым языком.

Что такое локалхост?

Проще говоря, localhost — это имя хоста, которое относится к локальному компьютеру, на котором вы работаете, и которое используется для доступа к вашему собственному компьютеру через сетевые протоколы, такие как TCP/ IP (Протокол управления передачей/Интернет-протокол). Когда вы вводите "localhost" в свой браузер или терминал, вы сообщаете своей системе: «Эй, я хочу получить доступ к своему компьютеру».

  • Имя хоста: имя, присвоенное устройству, подключенному к сети.
  • Localhost: относится к машине, на которой вы работаете.

Например, если вы запустили веб-сервер на своем компьютере, вы можете получить к нему доступ, введя в браузере "http://localhost". Браузер будет взаимодействовать с веб-сервером, работающим на том же компьютере.

Что такое 127.0.0.1?

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

  • 127.0.0.1: конкретный IP-адрес зарезервирован для сетевого интерфейса обратной связи.
  • Петля: относится к процессу отправки сетевого трафика из вашей системы в себя.

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

Ключевая разница между локальным хостом и 127.0.0.1

Хотя localhost и 127.0.0.1 в конечном итоге относятся к одному и тому же (вашему компьютеру), между ними есть несколько различий:

Формат:

  • localhost — имя хоста.
  • 127.0.0.1 — это IP-адрес.

Использование:

  • localhost можно использовать в командах, файлах конфигурации или URL-адресах как символическое имя.
  • 127.0.0.1 используется в сетевых контекстах на основе IP и обычно вводится, когда вам нужно напрямую указать IP-адрес.

Разрешение сети:

  • Когда вы используете localhost, вашей системе необходимо преобразовать его в IP-адрес, и она делает это, просматривая запись в файле конфигурации (например, /etc/hosts). > файл в системах Linux).
  • 127.0.0.1 уже является IP-адресом, поэтому при его использовании разрешение не требуется.

Как Localhost и 127.0.0.1 работают вместе?

Несмотря на то, что localhost — это имя, а 127.0.0.1 — это IP-адрес, они обычно подключаются через файл хостов вашей системы. На компьютере с Linux этот файл находится по адресу /etc/hosts.

В этом файле вы найдете такую запись:

127.0.0.1   localhost

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

Почему у нас есть оба?

Причина использования как localhost, так и 127.0.0.1 заключается главным образом в простоте использования и гибкости:

  • localhost: проще запомнить и ввести «localhost», чем вводить числовой адрес 127.0.0.1.
  • 127.0.0.1: использование фактического IP-адреса позволяет более явно контролировать настройки сети, особенно при настройке серверов или написании сценариев.

Вы даже можете назначить несколько имен адресу обратной связи (например, «loopback» или «myserver») в файле /etc/hosts. что может быть полезно в определенных случаях.

Практические примеры использования

Если вы разрабатываете веб-приложение, возможно, вам захочется протестировать его локально, прежде чем развертывать на работающем сервере. Вы можете получить доступ к своему локальному веб-серверу, используя localhost или 127.0.0.1.

Например, работу локального сервера, такого как Apache или Nginx, можно протестировать, перейдя по следующему адресу:

http://localhost
OR
http://127.0.0.1

Многие сетевые инструменты и команды, такие как ping или Curl, можно использовать для проверки сетевого интерфейса вашего компьютера с помощью localhost или 127.0.0.1.

ping 127.0.0.1
OR
curl http://localhost

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

Заключение

Таким образом, localhost и 127.0.0.1 часто используются как взаимозаменяемые, поскольку оба они относятся к вашему собственному компьютеру. Однако localhost — это имя хоста (удобочитаемое имя), а 127.0.0.1 — это IP-адрес, указывающий на то же место.

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

Статьи по данной тематике: