Вопрос

Во-первых, я новичок в специфике IPv6, поэтому не удивлюсь, если это просто неправильное понимание маршрутизации IPv6.Рассмотрим ситуацию, когда я использую оверлейную сеть P2P , часть которой находится в границах одной локальной сети.Узлы в этой локальной сети имеют следующие локальные адреса ссылок (как они сами просматриваются)::

  • Одноранговый узел 1 fe80::225:4bff:fea8:e200%en0
  • Равный 2 fe80::225:4bff:fea8:e201%eth1
  • Равный 3 fe80::225:4bff:fea8:e202%en1

Теперь предположим, что каждый одноранговый узел смог обнаружить другие с помощью каких-либо средств и имеет адреса друг для друга.Каждый одноранговый узел прослушивает порт, скажем, 12345.Если бы одноранговый узел 1 хотел связаться с одноранговым узлом 2, они могли бы попытаться использовать URI:

tcp://[fe80:225:4bff:fea8:e201%eth1]:12345

Вот тут-то я и сталкиваюсь с проблемами.Одноранговый узел 1 не имеет адаптера с именем "eth1", и поэтому этот идентификатор зоны IPv6 ему неизвестен.Если идентификатор зоны удален из адреса, одноранговый узел 1 не может определить, какой из своих адаптеров он должен использовать для связи с хостом.

Итак, вопрос:возможно ли стандартным способом разрешить идентификатор зоны для IPv6-адреса?Если нет, должен ли я запрашивать у системы все идентификаторы зоны и пытаться подключиться к адресу, используя каждый идентификатор зоны по очереди, пока не добьюсь успеха?Или попытка общаться с использованием локальных адресов - это, в первую очередь, глупая идея?

Это было полезно?

Решение

Связать локальные адреса подходят только тогда, когда у вас есть какой-то механизм для автоматического определения местоположения другого рассматриваемого узла и подключения, привязки к правильному интерфейсу.

Если вы ожидаете, что пользователь будет вводить адреса вручную, вам следует использовать сайт-локальные адреса (или еще лучше, Уникальные локальные адреса) и попросите пользователя настроить их самостоятельно или использовать метод разрешения адресов поверх локальных адресов ссылок, таких как MDN.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top