В компьютерных сетях локальный адрес канала — это одноадресный сетевой адрес , который действителен только для связи внутри подсети , к которой подключен хост. Локальные адреса чаще всего назначаются автоматически с помощью процесса, известного как автоконфигурация адреса без сохранения состояния ( SLAAC ) или автоконфигурация локального адреса канала , [1] также известного как автоматическая частная IP-адресация ( APIPA ) или авто-IP .
Локальные адреса каналов не гарантированно будут уникальными за пределами своего сегмента сети. Таким образом, маршрутизаторы не пересылают пакеты с локальными адресами источника или назначения.
Локальные адреса каналов IPv4 назначаются из блока адресов 169.254.0.0/16 ( от 169.254.0.0 до 169.254.255.255 ) . В IPv6 они назначаются из блока fe80:: / 10 . [2] : 2,4 [3]
Локальные адреса каналов могут назначаться администратором вручную или автоматическими процедурами операционной системы. В сетях Интернет-протокола (IP) они назначаются чаще всего с использованием автоконфигурации адресов без сохранения состояния - процесса, который часто использует стохастический процесс для выбора значения локальных адресов канала, назначая псевдослучайный адрес, который отличается для каждого сеанса. [ нужна цитация ] Однако в IPv6 локальный адрес канала может быть получен из адреса управления доступом к среде передачи (MAC) интерфейса методом, основанным на правилах, [2] хотя это не рекомендуется по соображениям конфиденциальности и безопасности. [4]
В IPv4 локальные адреса канала обычно используются только тогда, когда не существует внешнего механизма настройки адреса с отслеживанием состояния, такого как протокол динамической конфигурации хоста (DHCP), или когда другой основной метод настройки не удался. [1] В IPv6 локальные адреса всегда назначаются вместе с адресами других областей и необходимы для внутреннего функционирования различных компонентов протокола. [2]
Инженерная группа Интернета ( IETF) зарезервировала блок адресов IPv4 169.254.0.0/16 ( 169.254.0.0 – 169.254.255.255 ) для локальной адресации. [1] Для этой цели может использоваться весь диапазон, за исключением первых 256 и последних 256 адресов ( 169.254.0.0/24 и 169.254.255.0/24 ) , которые зарезервированы для будущего использования и не должны выбираться хостом . используя этот механизм динамической конфигурации. [1] : 2.1 Локальные адреса канала назначаются интерфейсам посредством внутренней автоконфигурации адреса, т. е. без сохранения состояния, когда другие средства назначения адреса недоступны.
Одновременное использование адресов IPv4 разной области действия на одном и том же интерфейсе, например настройка локальных адресов, а также адресов с глобальной маршрутизацией, может привести к путанице и увеличению сложности. [1] : 1.9 Таким образом, хосты ищут DHCP-сервер в сети, прежде чем назначать локальные адреса.
В процессе автоматической настройки адреса сетевые узлы выбирают случайный адрес-кандидат в зарезервированном диапазоне и используют зонды протокола разрешения адресов (ARP), чтобы убедиться, что адрес не используется в сети. Если на зонд ARP получен ответ, это означает, что потенциальный IP-адрес уже используется; Затем создается новый случайный IP-адрес кандидата, и процесс повторяется. Процесс завершается, когда нет ответа на ARP, что указывает на доступность IP-адреса-кандидата.
Когда глобально маршрутизируемый или частный адрес становится доступным после назначения локального адреса, использование нового адреса обычно должно быть предпочтительнее, чем локальный адрес для новых соединений, но связь через локальный адрес все еще возможна. . [1] : 2.6.1
Microsoft называет этот метод автоматической настройки адреса автоматической частной IP-адресацией ( APIPA ). [5]
В Интернет-протоколе версии 6 (IPv6) блок адресов fe80:: / 10 зарезервирован для локальной одноадресной адресации. [2] : 2.4 Из 64 бит сетевого компонента локальных адресов канала старшие 10 бит (1111111010) соответствуют зарезервированному IANA «префиксу глобальной маршрутизации» для локальных адресов канала, а «идентификатор подсети» (остальные 54 бита) равны нулю. [2] : 2.5.6
В отличие от IPv4, для IPv6 требуется локальный адрес канала на каждом сетевом интерфейсе, на котором включен протокол IPv6, даже если также назначены маршрутизируемые адреса. [2] : 2.8 Следовательно, хосты IPv6 обычно имеют более одного адреса IPv6 , назначенного каждому из их сетевых интерфейсов с поддержкой IPv6. Локальный адрес канала необходим для операций подуровня IPv6 протокола обнаружения соседей , а также для некоторых других протоколов на основе IPv6, таких как DHCPv6 .
При использовании локального адреса канала IPv6 для подключения к хосту к адресу необходимо добавить индекс зоны , чтобы пакеты можно было отправлять по правильному интерфейсу.
В IPv6 адреса могут назначаться с помощью механизмов без сохранения состояния (без памяти) или с сохранением состояния (с памятью). Автоконфигурация адреса без сохранения состояния выполняется как компонент протокола обнаружения соседей (NDP). [6] Адрес формируется из префикса маршрутизации и уникального идентификатора сетевого интерфейса.
Посредством объявлений префикса маршрутизации NDP маршрутизатор или хост-сервер может объявлять информацию о конфигурации всем интерфейсам, подключенным к каналу, что приводит к назначению дополнительного IP-адреса на принимающих интерфейсах для целей локальной или глобальной маршрутизации. Этот процесс иногда также считается без сохранения состояния, поскольку префиксный сервер не получает и не регистрирует какие-либо отдельные назначения хостам. Уникальность гарантируется автоматически методом выбора адреса. Это может быть основано на MAC-адресе [6] или рандомизировано. [7] Алгоритмы автоматического обнаружения повторяющихся адресов предотвращают ошибки назначения.