Кратко

  • RFC 9898 сводит пятнадцать проблем Neighbor Discovery к трём причинам: multicast, доверию ко всем узлам канала и созданию NCE маршрутизатором по требованию.
  • REACHABLE означает недавнее подтверждение достижимости по правилам ND. Это не доказательство права на адрес, личности абонента, непрерывной авторизации или успеха приложения.

В отчёте требовалось назвать ответственного пользователя. Сетевая команда могла быстро показать строку: IPv6-адрес, канальный адрес, состояние REACHABLE. Строка объясняла, почему маршрутизатор отправлял трафик. Она не объясняла, кто имел договорное право пользоваться адресом в рассматриваемые минуты.

Таблица не была ошибочной. Ошибочным было ожидание, что рабочее состояние пересылки заменит журналы выдачи адреса и доступа. Самый доступный источник не становится главным реестром только потому, что его проще запросить.

RFC 9898 собирает известные проблемы ND из более чем двадцати RFC. Документ не вводит новое решение и подчёркивает, что пятнадцать потенциальных проблем проявляются не везде. Их объединяют три архитектурные причины: multicast в нескольких процедурах, доверие узлам общего канала и Router-NCE-on-Demand для неизвестного on-link назначения.

RFC 4861 различает Neighbor Cache, Destination Cache, Prefix List и Default Router List. Первый хранит канальные сведения и состояние достижимости соседа. Второй связывает назначение со следующим переходом. Остальные определяют on-link префиксы и доступные маршрутизаторы. Реализация может объединить структуры, но их утверждения остаются разными.

Если канальный адрес следующего узла неизвестен, создаётся INCOMPLETE NCE, отправляется multicast Neighbor Solicitation, а пакет ожидает. Корректная solicited Neighbor Advertisement может заполнить адрес, перевести запись в REACHABLE и выпустить очередь. STALE, DELAY и PROBE управляют последующей проверкой.

Это операционные состояния. REACHABLE говорит о недавнем подтверждении прямого пути к соседнему IP-уровню. STALE сохраняет канальный адрес без недавнего подтверждения. Ни одно состояние не содержит владельца, арендатора, абонента или срока полномочий. После вытеснения, истечения или перезапуска полная история не гарантируется.

Создание по требованию показывает, что кэш — ограниченный вычислительный ресурс. Удалённый отправитель может направлять пакеты на множество несуществующих адресов внутри on-link префикса. Маршрутизатор создаёт INCOMPLETE записи и запускает разрешение, хотя отправитель не находится в локальном канале. Пустые вопросы занимают память и CPU.

Поэтому число записей не равно числу реальных устройств. INCOMPLETE может быть следом неудачной попытки. Отсутствие строки тоже не доказывает отсутствия хоста: одинаковую картину дают timeout, eviction, сборка мусора, лимит, перезапуск и отсутствие недавнего трафика.

RFC 9898 выделяет три последствия. Исчерпание NCE угрожает платформе. Реактивное разрешение задерживает и иногда теряет первые пакеты. Подотчётность адреса остаётся неполной: при SLAAC хост сам формирует адреса, и маршрутизатор узнаёт их лишь при необходимости. DHCPv6 без snooping, регистрации или связи с системой доступа также не создаёт полного исторического представления.

RFC 6583 рекомендует фильтровать неиспользуемое пространство, ограничивать обработку ND и давать приоритет существующим NCE. Это меры защиты мощности. Лимит на интерфейсе останавливает рост, но при превышении реальными адресами может оставить легитимный трафик без записи. Личность от этого не появляется.

RFC 9131 сокращает задержку первого пакета. Gratuitous Neighbor Discovery заранее создаёт STALE запись на first-hop router. Канальная информация готова до возвратного потока, но STALE не подтверждает свежую достижимость и тем более право пользования.

SAVI связывает адрес с L2-портом и отклоняет конкурирующие заявления. RA-Guard ограничивает порты, с которых разрешены Router Advertisements. Регистрация DHCPv6 сообщает системе управления о самостоятельно созданных или статических адресах. RFC 9099 описывает более широкий контекст угроз IPv6. Один индикатор «ND защищён» скрывает происхождение фактов.

Главный архитектурный вывод RFC 9898 — степень изоляции. L3+L2 помещает каждый хост в отдельные подсеть и канал, уменьшая multicast-домен, круг доверия и необходимость on-demand разрешения для маршрута к хосту. L3-изоляция выдаёт уникальный префикс, сохраняя возможность общего носителя. Частичная L2-изоляция делит multicast-домены прокси-механизмами. Неизолирующие решения устраняют отдельные симптомы.

Сильная изоляция требует возможностей и меняет сервисы. Возможны множество логических интерфейсов, узкое место на маршрутизаторе и разрыв multicast-служб между хостами. RFC 8273 предупреждает, что повторная выдача одного уникального префикса одному канальному адресу облегчает отслеживание. RFC 9663 показывает масштабируемую выдачу клиентских префиксов через DHCPv6-PD, но не выбирает политику приватности.

Надёжная атрибуция соединяет независимые события. Нужны выдача или делегирование префикса с периодом и органом; сессия доступа с аутентификацией и портом, линией или bearer; SAVI binding либо DHCPv6 registration; затем переход NCE с интерфейсом, IPv6, канальным адресом, состоянием, причиной и качеством часов. Наблюдение пакетов и журнал приложения закрывают дальнейшие границы.

Время входит в ключ. Текущая строка не может автоматически описывать прошлый инцидент. Privacy address, MAC randomization, переподключение, failover или cache refresh способны сохранить знакомую часть идентификатора при смене субъекта. Пробел хранения должен оставаться пробелом доказательства.

Приоритет работающего кода Хэн Лу распределяет полномочия по прямому наблюдению. Маршрутизатор подтверждает выполненный переход NCE. Система доступа — аутентифицированную сессию. Сервис делегирования — выданный префикс. Приложение — завершённую операцию. Удобный запрос не даёт власти над чужими фактами.

Слои реальности не позволяют представлению заменить объект. Различие технического контроля и практического суверенитета не позволяет назвать способность пересылать правом собственности. Минимальная начальная спецификация сохраняет ND совместимым, а изоляцию, лимиты, приватность, хранение и rollback оставляет оператору.

Вопрос руководства звучит так: какая система наблюдала какую связь, в какой период, и какая независимая запись соединяет локальное состояние пересылки с ответственным принципалом?

Sources