Большинству приложений нужен только один петлевой IP-адрес 127.0.0.1
. Однако предоставляется не только блок адресов 127.0.0.1/32
, но 127.0.0.0/24
и весь диапазон 127.0.0.0/8
. Очевидно, что это совершенно и совершенно бессовестная трата пространства, поскольку нет никакого смысла иметь несколько петлевых IP-адресов. Или, может быть, нет. Почему существует более одного петлевого IP-адреса?
решение1
127/8 (сокращение от 127.0.0.0/8) зарезервировано IANA.
Win95 поддерживала 127.0.0.1, но не другие адреса 127/8. WinXP поддерживала 127/8. Cisco IOS по умолчанию не поддерживает адреса обратной связи, но поддерживает концепцию обратной связи, и адреса можно назначать вручную. Если компьютеру не нужно больше одного адреса обратной связи или ни одного, то нет причин поддерживать все эти адреса. Но поскольку IANA теперь зарезервировала их все для этой цели, нет никаких веских причин для того, чтобы стек TCP/IP не поддерживал их.
В большинстве случаев нет настоятельной необходимости в нескольких адресах; я часто использую несколько петлевых подключений, но могу сделать это, просто указав разные порты TCP. (Я делаю это для переадресации портов SSH. Другое программное обеспечение VPN также может часто использоваться для таких целей, как упомянул Айзек Хансон в своем ответе.) Используете ли вы разные порты TCP на одном адресе (их 65 535) или несколько IP-адресов, не имеет большого технического значения. (Однако в некоторых случаях иметь уникальные адреса может быть проще, например, если у вас есть несколько серверов, которые могут прослушивать один и тот же номер порта «по умолчанию».)
совершенно и совершенно бессовестная трата пространства
Ах, какой сильный язык. Позвольте мне еще больше вас разозлить :)
На самом деле, гораздо большая трата адресов IPv4 — это 224/3, который содержит 224/4 (минимально используемый для многоадресной рассылки) и 240/4 (почти полностью потерянный, за исключением одного адреса). Так что не думайте, что у нас почти закончились адреса IPv4. IANA только что раздала адреса из бывшего класса A, класса B и класса C. Но не думайте ни на минуту, что каждый последний адрес был использован максимально эффективным способом. Вот некоторые другие:IETF BCP 153(в настоящее время указывает наRFC6890). СтаршийRFC5735имелась большая часть той же информации в другом формате, например, раздел 4 на странице 6. Покопайтесь в этих или некоторых других стандартах, и я почти уверен, что вы сможете найти еще несколько больших объемов адресов, которые не используются/выделяются сверхэффективно.
Было решено, что поддержка некоторых стандартов может быть более желательной, чем помощь IPv4 в еще большем хромании. Одной из основных причин этого может быть то, что некоторые люди действительно хотели помочь подтолкнуть людей к принятию IPv6.
решение2
Дополнительные IP-адреса в этом диапазоне могут быть полезны для привязки к VPN-подключениям, а также для тестирования служб, которые вы не хотите привязывать к localhost.
решение3
Почему существует более одного петлевого IP-адреса?
Сетевому номеру класса A 127 назначена функция «loopback», то есть датаграмма, отправленная протоколом более высокого уровня на адрес сети 127, должна вернуться обратно внутрь хоста. Никакая датаграмма, «отправленная» на адрес сети 127, не должна появляться ни в какой сети где бы то ни было.
Источник:Сетевые номера
Если это целый класс А, то какой смысл в других произвольных значениях для последних трех октетов?
Целью диапазона обратной связи является тестирование реализации протокола TCP/IP на хосте. Поскольку нижние уровни закорочены, отправка на адрес обратной связи позволяет эффективно тестировать верхние уровни (IP и выше) без вероятности проявления проблем на нижних уровнях. 127.0.0.1 — это адрес, который чаще всего используется для тестирования.
Источник:Зарезервированные IP-адреса, обратные и частные адреса
Для получения более подробной информации см.Что такое устройство обратной связи и как его использовать?ипочему IP-адрес обратной связи находится в диапазоне от 127.0.0.1 до 127.255.255.254?.