Локальный адрес канала связи

Локальный адрес канала связи (англ. link-local address) — это сетевой адрес, который действителен только для связи на локальном канале связи, то есть внутри подсети, к которой подключён хост. Локальные адреса канала связи обычно назначаются автоматически посредством процесса, известного как автоконфигурация локальных адресов канала связи[1], а также как авто-IP, автоматическая частная IP-адресация, и бестативная автоконфигурация адресации. Хотя большинство локальных адресов канала связи являются уникальными, это не всегда так: например, IPv6-адреса, начинающиеся с (), и IPv4-адреса, начинающиеся с (), являются многоадресными и относятся к локальным адресам канала связи.

Локальные адреса канала связи не гарантируют уникальности за пределами своего сегмента сети. Поэтому маршрутизаторы не пересылают пакеты с такими исходными или целевыми адресами.

Для IPv4 локальные уникальные адреса канала связи выделяются из диапазона адресов — блок. В IPv6 локальные уникальные адреса назначаются из блока [2].

Назначение адресов

Локальные адреса канала связи могут быть назначены вручную администратором или автоматически с помощью процедур операционной системы. В сетях IP они чаще всего назначаются посредством бестативной автоконфигурации; этот процесс нередко использует стохастический метод выбора значения, назначая псевдослучайный адрес, который отличается для каждой сессии. Однако в IPv6 локальный адрес канала связи может выводиться из MAC-адреса интерфейса по определённым правилам, хотя этот способ устарел по соображениям приватности и безопасности.

В IPv4 локальные адреса канала связи обычно используются только при отсутствии внешнего, состоявшегося механизма конфигурирования адреса, такого как DHCP, либо при неудаче основной процедуры конфигурации. В IPv6 локальные адреса канала связи всегда назначаются наряду с адресами других областей видимости и обязательны для функционирования ряда компонентов протокола.

IPv4

IETF зарезервировала диапазон IPv4-адресов для локальных адресов канала связи. Весь диапазон разрешён для этой цели, за исключением первых 256 и последних 256 адресов ( и ), которые зарезервированы для будущего использования и не должны назначаться хостом посредством этой динамической конфигурации. Локальные адреса канала связи назначаются интерфейсам внутренними средствами хоста, то есть бестативной автоконфигурацией, когда другие способы назначения недоступны.

Одновременное использование на одном интерфейсе IPv4-адресов разных областей, например, совместная настройка локального адреса канала связи и глобально маршрутизируемого адреса, может приводить к путанице и усложнению конфигурации. Поэтому хосты ищут DHCP-сервер в сети до попытки назначения локального адреса канала связи.

В процессе автоматической конфигурации адреса узел выбирает случайный кандидат-адрес из зарезервированного диапазона и использует протокол ARP (Address Resolution Protocol) для проверки отсутствия этого адреса в сети. Если на проверку поступила ответная ARP-реакция, это означает, что адрес уже занят, и выбирается новый случайный кандидат, процесс повторяется. Процедура завершатся, когда на ARP-запрос ответа не получено, т. е. адрес свободен.

Если после назначения локального адреса канала связи становится доступным глобально маршрутизируемый или частный адрес, при установлении новых соединений обычно предпочтение следует отдавать новому адресу; однако связь по локальному адресу канала связи по-прежнему возможна.

Microsoft называет эту процедуру автоконфигурации адресов Автоматическая частная IP-адресация[3].

IPv6

undefined

В IPv6 забронирован адресный блок для локальных уникальных адресов канала связи. Из 64 бит сетевого компонента локального адреса канала связи, 10 старших (1111111010) соответствуют глобальному префиксу маршрутизации, зарезервированному IANA специально для локальных адресов канала связи, а оставшиеся 54 бита ("идентификатор подсети") принимают значение ноль.

В отличие от IPv4, в IPv6 локальный адрес канала связи необходим на каждом сетевом интерфейсе, для которого включён IPv6, даже при наличии других маршрутизируемых адресов. Как следствие, обычно каждому IPv6-интерфейсу назначается более одного адреса IPv6. Локальный адрес канала связи требуется для работы протокола обнаружения соседей, а также для таких протоколов, как DHCPv6.

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

В IPv6 адреса могут назначаться как бестативными, так и состоявшимися алгоритмами. Бестативная автоконфигурация работает как часть протокола обнаружения соседей (NDP). Адрес формируется из префикса маршрутизации и уникального идентификатора сетевого интерфейса.

Через маршрутизируемые объявления префикса префиксный сервер транслирует конфигурацию на все подключённые интерфейсы, инициируя дополнительное назначение адресов для локальной или глобальной маршрутизации. Этот процесс также считается бестативным, поскольку сервер не ведёт журнал индивидуальных назначений. Уникальность обеспечивается механизмом выбора адреса: идентификатор может быть основан на MAC-адресе либо сгенерирован случайным образом. Автоматические алгоритмы обнаружения дубликатов адресов предотвращают возможные ошибки назначения.

Примечания

  1. RFC 3927: Dynamic Configuration of IPv4 Link-Local Addresses (англ.). IETF (май 2005). Дата обращения: 25 июня 2024. Архивировано 18 августа 2022 года.
  2. Definition of link-local address (англ.). PCMag. Дата обращения: 25 июня 2024. Архивировано 10 марта 2023 года.
  3. APIPA (англ.). Microsoft Docs. Microsoft (18 июля 2012). Дата обращения: 25 июня 2024. Архивировано 7 июля 2010 года.

Категории