stringtranslate.com

локальный хост

В компьютерных сетях localhost это имя хоста , которое относится к текущему компьютеру, используемому для доступа к нему. Имя localhost зарезервировано для целей loopback . [1] Оно используется для доступа к сетевым службам , работающим на хосте, через сетевой интерфейс loopback. Использование интерфейса loopback обходит любое оборудование локального сетевого интерфейса .

Обратная петля

Механизм локальной обратной связи может использоваться для запуска сетевой службы на хосте без необходимости физического сетевого интерфейса или без предоставления доступа к службе из сетей, к которым может быть подключен компьютер. Например, локально установленный веб-сайт может быть доступен из веб-браузера по URL-адресу http://localhost для отображения его домашней страницы.

Стандарты сетей IPv4 резервируют весь адресный блок 127.0.0.0 / 8 (более 16 миллионов адресов) для целей обратной связи. [2] Это означает, что любой пакет, отправленный на любой из этих адресов, возвращается обратно. Адрес 127.0.0.1 является стандартным адресом для трафика обратной связи IPv4; остальные поддерживаются не всеми операционными системами. Однако их можно использовать для настройки нескольких серверных приложений на хосте, все из которых прослушивают один и тот же номер порта. В архитектуре адресации IPv6 [3] для обратной связи назначен только один адрес: ::1 . Стандарт запрещает назначение этого адреса любому физическому интерфейсу, а также его использование в качестве адреса источника или назначения в любом пакете, отправленном на удаленные хосты.

Разрешение имени

Имя localhost обычно разрешается в петлевой адрес IPv4 127.0.0.1 и в петлевой адрес IPv6 ::1 .

Это разрешение обычно настраивается следующими строками в файле hosts операционной системы :

127.0.0.1 локальный хост::1 локальный хост

Имя также может быть разрешено серверами системы доменных имен (DNS), но существуют особые соображения [1], регулирующие использование этого имени:

В дополнение к сопоставлению localhost с адресами обратной связи ( 127.0.0.1 и ::1 ), localhost также может быть сопоставлен с другими адресами IPv4 (обратной связи), а также возможно назначить другие или дополнительные имена любому адресу обратной связи. Сопоставление localhost с адресами, отличными от указанного диапазона адресов обратной связи в файле hosts или в DNS, не гарантирует желаемого эффекта, поскольку приложения могут сопоставлять имя внутренне.

В системе доменных имен имя .localhost зарезервировано как доменное имя верхнего уровня , изначально отведенное для того, чтобы избежать путаницы с именем хоста localhost . [4] Регистраторам доменных имен запрещено делегировать доменные имена в домене верхнего уровня .localhost . [1]

Исторические заметки

В 1981 году блок 127.0.0.0 / 8 получил статус «зарезервированного», [5] чтобы не назначать его в качестве IP-сети общего назначения класса A. Этот блок был официально назначен для целей обратной связи в 1986 году. [6] Его назначение в качестве блока адресов IPv4 специального назначения было подтверждено в 1994, [7] , 2002 [8] , 2010 [9] , и последний раз в 2013 году. [2]

С самого начала, в 1995 году, был определен единый адрес обратной связи IPv6 ::1 . [10] Его цель и определение оставались неизменными в 1998, [11] , 2003, [12] , и вплоть до текущего определения в 2006 году. [3]

Обработка пакетов

Обработка любого пакета, отправленного на адрес обратной связи, реализуется на канальном уровне стека TCP/IP . Такие пакеты никогда не передаются ни одному сетевому контроллеру интерфейса (NIC) или аппаратному драйверу устройства и не должны появляться вне вычислительной системы или маршрутизироваться каким-либо маршрутизатором. Это позволяет проводить тестирование программного обеспечения и локальных служб даже при отсутствии каких-либо аппаратных сетевых интерфейсов.

Пакеты Looped Back отличаются от любых других пакетов, проходящих через стек TCP/IP, только специальным IP-адресом, которому они были адресованы. Таким образом, службы, которые в конечном итоге их получают, отвечают в соответствии с указанным пунктом назначения. Например, служба HTTP может направлять пакеты, адресованные 127.0.0.99:80 и 127.0.0.100:80, на разные веб-серверы или на один сервер, который возвращает разные веб-страницы. Чтобы упростить такое тестирование, файл hosts может быть настроен для предоставления соответствующих имен для каждого адреса.

Пакеты, полученные на не-loopback-интерфейсе с петлевым исходным или конечным адресом, должны быть отброшены. Такие пакеты иногда называют марсианскими пакетами . [13] Как и любые другие поддельные пакеты, они могут быть вредоносными, и любые проблемы, которые они могут вызвать, можно избежать, применив фильтрацию bogon .

Особые случаи

В разных версиях базы данных MySQL различается использование имени хоста localhost и использование адресов 127.0.0.1 и ::1 . [14] При использовании localhost в качестве пункта назначения в интерфейсе клиентского коннектора приложения программный интерфейс приложения MySQL подключается к базе данных с помощью сокета домена Unix , в то время как TCP-соединение через интерфейс обратной связи требует прямого использования явного адреса.

Одним из заметных исключений из использования адресов 127.0.0.0 / 8 является их использование в трассировке ошибок многопротокольной коммутации по меткам (MPLS), где их свойство немаршрутизируемости обеспечивает удобный способ избежать доставки неисправных пакетов конечным пользователям.

Смотрите также

Ссылки

  1. ^ abc S. Cheshire; M. Krochmal (февраль 2013 г.). Доменные имена специального назначения. IETF . doi : 10.17487/RFC6761 . ISSN  2070-1721. RFC 6761. Предложенный стандарт. Обновления RFC 1918 и 2606.
  2. ^ ab M. Cotton; L. Vegoda; B. Haberman (апрель 2013 г.). R. Bonica (ред.). Реестры IP-адресов специального назначения. IETF . doi : 10.17487/RFC6890 . ISSN  2070-1721. BCP 153. RFC 6890. Лучшая текущая практика 153. Отменяет RFC 4773, 5156, 5735 и 5736. Обновлено RFC 8190.
  3. ^ ab R. Hinden; S. Deering (февраль 2006 г.). Архитектура адресации IP версии 6. Сетевая рабочая группа. doi : 10.17487/RFC4291 . RFC 4291. Проект стандарта. Отменяет RFC 3513. Обновлен RFC 5952, 6052, 7136, 7346, 7371 и 8064.
  4. ^ D. Eastlake; A. Panitz (июнь 1999 г.). Зарезервированные имена DNS верхнего уровня. Сетевая рабочая группа. doi : 10.17487/RFC2606 . BCP 32. RFC 2606. Лучшая общепринятая практика. Обновлено RFC 6761.
  5. ^ J. Postel (сентябрь 1981 г.). ПРИСВОЕННЫЕ НОМЕРА. Сетевая рабочая группа. doi : 10.17487/RFC0790 . RFC 790. Устарело. Устарело из-за RFC 820. Устаревшие RFC 776, 770, 762, 758, 755, 750, 739, 604, 503, 433 и 349. Устаревшие IEN: 127, 117, 93.
  6. ^ J. Reynolds ; J. Postel (ноябрь 1986 г.). ПРИСВОЕННЫЕ НОМЕРА. Сетевая рабочая группа. doi : 10.17487/RFC0990 . RFC 990. Устарело. Устарело из-за RFC 1010. Устаревший RFC 960. Устаревшие IEN 127, 117 и 93.
  7. ^ J. Reynolds ; J. Postel (октябрь 1994 г.). НАЗНАЧЕННЫЕ НОМЕРА. Сетевая рабочая группа. doi : 10.17487/RFC1700 . STD 2. RFC 1700. Устарело. Устарело RFC 3232. Устаревшие RFC 1340, 1060, 1010, 990, 960, 943, 923, 900, 870, 820 , 790, 776, 770, 762, 758, 755, 750, 739 604, 503, 433 и 349. Устаревшие IEN: 127, 117, 93.
  8. ^ IANA (сентябрь 2002 г.). Адреса IPv4 специального назначения. Сетевая рабочая группа. doi : 10.17487/RFC3330 . RFC 3330. Устарело. Устарело согласно RFC  5735.
  9. ^ M. Cotton; L. Vegoda (январь 2010 г.). Специальные адреса IPv4. Internet Engineering Task Force . doi : 10.17487/RFC5735 . ISSN  2070-1721. BCP 153. RFC 5735. Устарело. Устарело согласно RFC 6890.
  10. ^ Р. Хинден; С. Диринг (декабрь 1995 г.). Архитектура адресации IP версии 6. Сетевая рабочая группа. doi : 10.17487/RFC1884 . RFC 1884. Устарело. Устарело согласно RFC 2373.
  11. ^ Р. Хинден; С. Диринг (июль 1998 г.). Архитектура адресации IP версии 6. Сетевая рабочая группа. doi : 10.17487/RFC2373 . RFC 2373. Устарело. Устарело из-за RFC 3513. Устаревший RFC 1884.
  12. ^ Р. Хинден; С. Диринг (апрель 2003 г.). Архитектура адресации IP версии 6. Сетевая рабочая группа. doi : 10.17487/RFC3513 . RFC 3513. Устарело. Устаревший RFC 2373. Устаревший RFC 4291.
  13. ^ Рэймонд, Эрик С. «Досье жаргона».
  14. ^ "MySQL :: Справочное руководство MySQL 5.5 :: 4.1 Обзор программ MySQL".