Letysite.ru

IT Новости с интернет пространства
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Типы ipv6 адресов

Типы ipv6 адресов

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

IPv6 — протокол сетевого уровня, который постепенно приходит на смену IPv4, основному протоколу сетевого уровня в Интернете в настоящий момент.

Содержание

[править] Адресация в IPv6

[править] Типы адресов

  • Unicast:
    • Идентифицирует конкретный интерфейс в сети.
    • Пакет, отправленный на такой адрес, будет доставлен на этот интерфейс.
    • В IPv6 есть несколько типов unicast адресов:
      • Global unicast
      • Link-local (FE80::/10)
      • Unique local unicast (FC00::/7)
  • Anycast:
    • Присваиваются группе интерфейсов, которые обычно принадлежат различным устройствам.
    • Пакет, отправленный на anycast адрес, доставляется одному участнику группы интерфейсов, обычно ближайшему с точки зрения маршрутизатора (маршрутизатор использует метрику протоколов маршрутизации для того чтобы определить ближайший интерфейс).
    • Формат unicast и anycast адресов одинаковый.
    • Адреса anycast используют маршрутизаторы.
    • Anycast-адрес не должен использоваться в качестве адреса отправителя в IPv6-пакете.
  • Multicast:
    • Идентифицируют группу интерфейсов, которые обычно принадлежат различным устройствам.
    • Пакет, отправленный на такой адрес, будет доставлен всем интерфейсам в группе.
    • У multicast адресов префикс FF00::/8.

На интерфейсе IPv6:

  • Может быть назначено несколько адресов различных типов
  • На каждом интерфейсе должен быть хотя бы один loopback (::1/128) и один link-local адрес

[править] Unicast адреса

[править] Unspecified

  • ::/128 — адрес состоящий из всех нулей называется unspecified адрес.
  • Используется, например, при инициализации хоста, перед тем как хост выучит свой адрес, в качестве адреса отправителя. Пакет в котором в адресе отправителя указан unspecified адрес не должен передаваться маршрутизатором.
  • Unspecified адрес не должен использоваться как адрес получателя.

[править] Link local

  • FE80::/10 — адрес, который используется только в пределах одного линка.
  • Link-local адреса используются для адресации линка для таких механизмов как автоматическая настройка адреса, обнаружение соседей, при отсутствии маршрутизатора.
  • Маршрутизаторы не должны передавать в другой сегмент пакеты в которых адрес отправителя или получателя link-local.

[править] Global Unicast

[править] Anycast адреса

IPv6 определяет новый тип адреса, называемых anycast. Anycast адрес определяет список узлов или устройств. Пакет, посланный к такому адресу, доставляется на ближайший интерфейс. Anycast адреса синтаксически неотличимы от адресов Global unicast, потому что Anycast адреса выделяются из адресного пространства Global unicast.

[править] Multicast адреса

Multicast адреса идентифицируют группу интерфейсов, которые обычно принадлежат различным устройствам. Пакет, отправленный на такой адрес, будет доставлен всем интерфейсам в группе. Интерфейс может принадлежать любому количеству multicast групп.

Multicast адреса не должны использоваться как адрес отправителя в пакетах IPv6.

Маршрутизаторы не должны передавать любой multicast пакет за границы, указанные в поле scop в multicast адресе получателя.

Хосты не должны отправлять пакеты с multicast адресом с полем scop равным 0. Если такой пакет получен, то он должен быть отброшен (без оповещений).

[править] Формат multicast адреса

У multicast адреса такой формат:

  • Первые 8 бит единиц адреса указывают, что это multicast адрес. У multicast адресов префикс FF00::/8.
  • flgs — это 4 бита (0RPT), которые устанавливают флаги:
    • 0 — этот бит зарезервирован и должен быть выставлен в 0;
    • R — использование этого флага описано в RFC3306;
    • P — использование этого флага описано в RFC3956;
    • T:
      • T = 0 — указывает, что адрес присвоен IANA перманентно («well-known»),
      • T = 1 — указывает, что адрес присвоен временно (присвоен «transient» или «dynamically»)
  • scop — это 4 бита, которые указывают значение границ распространения (scope) multicast группы:
    • 0, 3, F — зарезервировано;
    • 6-7, 9-D — не присвоено — могут быть использованы для определения дополнительных multicast регионов;
    • 1 — Interface-Local scope — перекрывает только один интерфейс хоста и используется только для локальной (loopback) передачи multicast;
    • 2 — Link-Local scope — передается в тех же пределах, что и соответствующий диапазон unicast;
    • 4 — Admin-Local scope — адреса, которые должны административно настраиваться;
    • 5 — Site-Local scope — предназначены для передачи в пределах одного участка (site);
    • 8 — Organization-Local scope — предназначены для передачи через несколько участков одной организации;
    • E — Global scope.
  • group ID — идентифицирует multicast группу, перманентную или временную, в указанных границах. Дополнительная информация о структуре этого поля в RFC3306.

[править] Предопределенные multicast адреса

Multicast адреса описанные в этом разделе предопределены (RFC4291). Идентификаторы группы (group ID) этих адресов определены для конкретных границ распространения адресов.

Использование перечисленных идентификаторов групп с другими значениями границ распространения, с флагом T=0, не разрешено.

[править] Зарезервированные

Зарезервированные multicast адреса — перечисленные адреса зарезервированы и не должны использоваться в качестве адреса какой-либо multicast группы

FF00:0:0:0:0:0:0:0 FF01:0:0:0:0:0:0:0 FF02:0:0:0:0:0:0:0 FF03:0:0:0:0:0:0:0 FF04:0:0:0:0:0:0:0 FF05:0:0:0:0:0:0:0 FF06:0:0:0:0:0:0:0 FF07:0:0:0:0:0:0:0 FF08:0:0:0:0:0:0:0 FF09:0:0:0:0:0:0:0 FF0A:0:0:0:0:0:0:0 FF0B:0:0:0:0:0:0:0 FF0C:0:0:0:0:0:0:0 FF0D:0:0:0:0:0:0:0 FF0E:0:0:0:0:0:0:0 FF0F:0:0:0:0:0:0:0

[править] All Nodes

All Nodes адреса — идентифицируют группу всех IPv6 хостов, с границей 1 (interface-local) или 2 (link-local):

[править] All Routers

All Routers адреса — идентифицируют группу всех IPv6 маршрутизаторов, с границей 1 (interface-local), 2 (link-local) или 5 (site-local):

FF01:0:0:0:0:0:0:2 FF02:0:0:0:0:0:0:2 FF05:0:0:0:0:0:0:2

[править] Solicited-node multicast

Solicited-node multicast адрес вычисляется из unicast и anycast адресов хоста. У всех адресов одинаковый префикс FF02::1:FF00:0/104. К указанному префиксу добавляются 24 low-order бита адреса (unicast или anycast), в результате solicited-node multicast адрес может быть в диапазоне от FF02:0:0:0:0:1:FF00:0000 до FF02:0:0:0:0:1:FFFF:FFFF.

Хост должен вычислить и присоединиться (на соответствующем интерфейсе) ко всем solicited-node multicast адресам, полученных из всех unicast и anycast адресов, которые настроены на интерфейсах хоста (вручную или автоматически).

Solicited-node multicast адреса используются протоколом обнаружения соседей — Neighbor Discovery (ND или NDP).

[править] Обязательные адреса

[править] Обязательные адреса для хоста

Хост должен распознавать следующие адреса, как адреса которые его идентифицируют:

  • Link-local адрес для каждого интерфейса;
  • Любой дополнительный unicast или anycast адрес, который был настроен на интерфейсе хоста (вручную или автоматически);
  • loopback адрес;
  • All-Nodes multicast адрес;
  • Solicited-Node multicast адрес для каждого из настроенных unicast или anycast адресов;
  • Multicast адреса для любых других групп к которым принадлежит хост.

[править] Обязательные адреса для маршрутизатора

Маршрутизатор должен распознавать все адреса, которые должен распознавать хост, плюс следующие, как адреса которые его идентифицируют:

  • Subnet-Router Anycast адрес для всех интерфейсов, для которых он настроен для работы в качестве маршрутизатора;
  • Любые другие Anycast адреса, которые настроены на маршрутизаторе;
  • All-Routers multicast адрес.

[править] Специальные адреса

Некоторые адреса (например, перечисленные в rfc5156 и списке IANA) имеют специальное назначение и их применение должно быть обосновано.

  • 2001:7f8::/32 — для раздачи блоков точкам обмена интернет-трафиком (ripe-510);
  • 2001:678::/29 — для раздачи /48 корневым службам (ripe-510);
  • 2001:0::/32 — для клиентов Teredo (rfc4380);
  • 2001:db8::/32 — документирование и примеры (rfc3849);
  • 2002::/16 — реализация 6to4 (rfc3056);
  • 64:ff9b::/96 — реализация NAT64 (rfc6052);
  • ::FFFF:0:0/96 — отображение для IPv4-адресов (rfc5156);

[править] Протокол обнаружения соседей (Neighbor Discovery)

Протокол обнаружения соседей (Neighbor Discovery, ND) — протокол, с помощью которого IPv6 хосты разделяющие линк могут обнаружить друг друга, определить адрес канального уровня другого хоста (вместо ARP, который использовался в IPv4), обнаружить маршрутизаторы, поддерживать информацию о доступности путей к другим активным соседям.

[править] Задачи протокола

Протокол ND описан в RFC2461. Этот протокол решает ряд проблем относящихся к взаимодействию между хостами разделяющими линк. Он определяет механизмы для решения каждой из перечисленных задач:

  • Обнаружение маршрутизатора (Router Discovery) — хосты могут обнаружить маршрутизаторы, которые находятся на том же линке, что и они;
  • Обнаружение префикса (Prefix Discovery) — хосты обнаруживают префиксы, которые определяют какие получатели находятся на одном линке с ними (хосты используют префиксы для того чтобы определить какие получатели доступны на линке, а какие доступны только через маршрутизатор);
  • Обнаружение параметров (Parameter Discovery) — хосты получают параметры линка (например, MTU);
  • Автоматическая настройка адреса (Address Autoconfiguration) — хосты автоматически настраивают адрес на интерфейсе;
  • Преобразование адреса (Address resolution) — хосты определяют адрес канального уровня соседей по IP-адресу получателя;
  • Определение next-hop (Next-hop determination) — алгоритм для установки соответствия между IP-адресом получателя и IP-адресом соседа, которому нужно отправить трафик для того чтобы он был доставлен получателю. Next-hop может быть маршрутизатор или сам получатель;
  • Определение недоступности соседа (Neighbor Unreachability Detection, NUD) — хосты определяют, что сосед более недоступен;
  • Определение дублирующегося адреса (Duplicate Address Detection, DAD) — хост определяют, что адрес, который он хочет использовать не используется другим хостом;
  • Перенаправление (Redirect) — маршрутизатор оповещает хост, что есть лучший маршрутизатор (first-hop), для отправки трафика к конкретному получателю.
Читать еще:  Расчетный адрес при покупке в steam

[править] Типы сообщений

Neighbor Discovery определяет пять разных типов ICMP пакетов:

Адресация IPv6

Типы адресов IPv6

Теперь мы можем заняться первичной «раскройкой» адресного пространства IPv6. Какие типы адресов нам понадобятся? Основываясь на нашем опыте с IPv4, мы составим такой пробный список:

  • глобальные индивидуальные адреса (global unicast);
  • частные индивидуальные адреса (private-use unicast);
  • внутриканальные индивидуальные адреса (link-local unicast);
  • групповые адреса (multicast);
  • адрес обратной связи (loopback);
  • неопределенный адрес (unspecified).

Начнем движение с конца этого списка, поскольку там находятся более простые типы, отвечающие меньшим множествам адресов.

Неопределенный адрес (это был 0.0.0.0 в IPv4) означает, что адрес не установлен, не настроен, неизвестен. Например, в API сокетов Беркли приложение использует неопределенный локальный адрес сокета, чтобы сказать сетевому стеку: выбери подходящий адрес самостоятельно. Очевидно, что неопределенный адрес нельзя назначать интерфейсам или помещать в заголовок IP, кроме нескольких особо оговоренных случаев. Например, в самом начале автоматической настройки адресов узла адрес источника пакета может быть неопределенным, чтобы обойти «проблему курицы и яйца», когда узлу надо послать пакет, хотя у него еще нет собственных адресов — мы об этом еще поговорим. Напротив, адрес назначения пакета неопределенным быть не должен никогда, потому что иначе в нем не будет никакого смысла: это все равно, что пустое поле «куда/кому» на почтовом конверте. Поскольку неопределенный адрес играет довольно важную роль, его значение должно быть общепринятым и уникальным; нам надо утвердить его с самого начала. Пусть в IPv6 неопределенным тоже будет адрес с нулевым численным значением:

Благодаря «Адресация IPv6» из §2.2, его можно записать и проще, всего парой двоеточий:

Адрес обратной связи необходим, чтобы сетевые приложения TCP/IP могли работать и на отдельной машине, у которой нет настоящих сетевых интерфейсов. Кроме того, удобно, когда один и тот же общепринятый адрес всегда указывает на локальный узел: меньше придется менять настройки сетевых приложений при их переносе с одного узла на другой, если части одного приложения тоже общаются по TCP/IP. Очевидно, что адрес обратной связи никогда не должен появляться в заголовках пакетов, путешествующих между узлами, потому что он имеет смысл только в пределах одного узла. В IPv4 для этой цели зарезервировали большой блок, 127.0.0.0/8; но, как показал опыт, достаточно было бы одного адреса 127.0.0.1. Поэтому в IPv6 мы ограничимся ровно одним адресом обратной связи. Ради простоты и краткости пусть это будет адрес с численным значением 1:

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

Теперь мы можем перейти к индивидуальным адресам (unicast). Наша главная цель — обеспечить Internet максимальным числом глобальных индивидуальных адресов; поэтому мы выделим в доступном адресном пространстве относительно небольшие множества адресов, не являющихся глобальными, а все остальные адреса пусть по умолчанию будут глобальными. Так мы максимизируем число последних.

Внутриканальные адреса нам знакомы еще по IPv4. Тогда это был блок 169.254.0.0/16, который полагалось использовать при автоматической настройке узлов в простой одноранговой сети [RFC 3927]. Пакеты с адресами из этого блока не должны покидать пределов одного канала и подключенных к нему узлов. Задача автоматической настройки наверняка возникнет и после перехода на IPv6, так что давайте зарезервируем для внутриканальных адресов такой префикс:

Частные адреса IPv4 были нужны для развертывания сетей типа интранет, когда по своей технологии и архитектуре сеть устроена точно так же, как Internet, но физически отделена от него. Если бы было точно известно, что такой интранет никогда не станет частью Internet, блок адресов для него можно было бы выбрать совершенно произвольный, вплоть до 0.0.0.0/0. Но в действительности интранет рано или поздно соединяют с Internet через шлюз, и тогда возникает неоднозначность адресов: один адрес А оказывается назначен как внутри, в пределах интранета, так и снаружи, в Internet. После этого другие узлы интранета не могут быть уверены, куда они попадут, обращаясь по адресу А. Избежать этого сценария позволили четко оговоренные частные адреса [RFC 1918], которые никогда не применяются в роли глобальных и потому не встречаются в Internet. Этот подход не лишен недостатков, которые мы обсудим в §2.10. Тем не менее, он решает задачу уникальности адресов с точки зрения интранета. Сам термин «интранет» в большой мере устарел, так как сетей, полностью отделенных от Internet, осталось мало, а подавляющее их число просто подключено через шлюз, скрывающий частные адреса при помощи NAT или proxy. Поэтому примем на вооружение вместо него термин «сайт«. Типичный пример сайта — это организация или ее часть, всей сетью которой управляет один отдел.

Соответственно, в IPv6 вместо частных адресов возникают внутрисайтовые адреса (site-local address), которые значимы только в пределах данного сайта и не могут встречаться в глобальном пространстве Internet. Для них мы зарезервируем префикс, смежный предыдущему:

Наконец, все остальные адреса IPv6 относятся к типу глобальных индивидуальных. Ну, или практически все из них.

На самом деле, есть еще пара исключений, которые мы подробно рассматривать не будем. Адреса IPv6 с префиксом ::/96 содержат в себе адреса IPv4, но только глобальные индивидуальные [§2.5.5.1 RFC 4291], поэтому и внешний адрес IPv6 в известном смысле остается глобальным индивидуальным. Адреса IPv6 с префиксом ::FFFF:0:0/96 могут содержать в себе любой адрес IPv4 [§2.5.5.2 RFC 4291]. На практике префикс ::/96 больше не применяется, а префикс ::FFFF:0:0/96 используется только в API, чтобы «подружить» приложения IPv6 с сетевой средой IPv4 [RFC 4038]. Например, приложение без поддержки IPv4 все-таки можно заставить соединиться с хостом 192.0.2.1, подсунув ему такой адрес IPv6: ::FFFF:192.0.2.1. (О нотации см. примечание в конце §2.2.) Конечно, сам сетевой стек должен при этом поддерживать оба протокола.

Пока что для применения в Internet раздают блок 2000::/3 [ 19 http://www.iana.org/assignments/ipv6-address-space , 20 http://www.iana.org/assignments/ipv6-unicast-address-assignments ]. Остальные глобальные адреса IPv6 зарезервированы на случай, если этот блок исчерпается слишком скоро и надо будет пересмотреть политику выдачи адресов IPv6.

Среди глобальных индивидуальных адресов IPv6 нам следует сразу же зарезервировать диапазон для примеров. Его назначение понятно: даже если читатель бездумно введет адреса из примеров в конфигурацию живой сети, это не приведет к глобальному конфликту. Как мы помним, в IPv4 эту роль играли блоки 192.0.2.0/24, 198.51.100.0/24 и 203.0.113.0/24 [RFC 5735, RFC 5737]. Несколько штук их понадобилось, чтобы было удобнее составлять наглядные примеры взаимодействия разных сетей. Теперь же достаточно выделить один блок побольше, и авторы сами раскроят его по своему усмотрению. Пускай это будет 2001:DB8::/32 [RFC 3849]. Мы уже начали использовать его, говоря о текстовой нотации адреса IPv6.

Читать еще:  Как создать адрес гмайл

Блок 192.0.2.0/24 был назначен для этой цели на высочайшем уровне, то есть IANA. Блоки 198.51.100.0/24, 203.0.113.0/24 и 2001:DB8::/32 выделены региональной регистратурой Азии и Океании APNIC.

Как мы помним, у IPv4 был сводный документ, посвященный адресам особого назначения [RFC 5735]. Аналогичный документ есть и у IPv6 [RFC 5156].

В Internet уже опубликовано немало технической документации, где для иллюстраций выбран префикс IPv6 2001:DB80::/32. Обсудите правомерность и удачность такого выбора.

Сетевые IPv6-адреса

Типы IPv6-адресов

Индивидуальный адрес служит для определения интерфейса устройства под управлением протокола IPv6. Пакет, который отправляется на индивидуальный адрес, будет получен интерфейсом, присвоенным для этого адреса. Как и в случае с протоколом IPv4, IPv6-адрес должен быть индивидуальным. IPv6-адрес назначения может быть как индивидуальным, так и групповым.

Существует шесть типов индивидуальных IPv6-адресов:

Глобальный индивидуальный адрес

Глобальный индивидуальный адрес мало чем отличается от публичного IPv4-адреса. Эти адреса, к которым можно проложить маршрут по Интернету, являются уникальными по всему миру. Глобальные индивидуальные адреса могут быть настроены статически или присвоены динамически. В динамическом назначении IPv6-адреса устройством имеются некоторые важные отличия по сравнению с динамическим назначением IPv4-адреса.

Локальный адрес канала

Локальные адреса канала используются для обмена данными с другими устройствами по одному локальному каналу. В протоколе IPv6 термин «канал» означает подсеть. Локальные адреса каналов ограничены одним каналом. Они должны быть уникальны только в рамках этого канала, поскольку вне канала к ним нельзя проложить маршрут. Другими словами, маршрутизаторы не смогут пересылать пакеты, имея локальный адрес канала источника или назначения.

Логический интерфейс loopback

Loopback-адрес используется узлом для отправки пакета самому себе и не может быть назначен физическому интерфейсу. Как и на loopback-адрес IPv4, для проверки настроек TCP/IP на локальном узле можно послать эхо-запрос на loopback-адрес IPv6. Loopback-адрес IPv6 состоит из нулей, за исключением последнего бита, который выглядит как ::1/128 или просто ::1 в сжатом формате.

Неопределённый адрес состоит из нулей и в сжатом формате представлен как ::/128 или просто :: Он не может быть назначен интерфейсу и используется только в качестве адреса источника в IPv6-пакете. Неопределённый адрес используется в качестве адреса источника, когда устройству еще не назначен постоянный IPv6-адрес или когда источник пакета не относится к месту назначения.

Уникальный локальный адрес

Уникальные локальные IPv6-адреса имеют некоторые общие особенности с частными адресами RFC 1918 для IPv4, но при этом между ними имеются и значительные различия. Уникальные локальные адреса используются для локальной адресации в пределах узла или между ограниченным количеством узлов. Эти адреса не следует маршрутизировать в глобальном протоколе IPv6. Уникальные локальные адреса находятся в диапазоне от FC00::/7 до FDFF::/7.

В случае с IPv4 частные адреса объединены с преобразованием сетевых портов и адресов (NAT/PAT) для обеспечения преобразования адресов из частных в публичные. Это делается из-за недостатка адресного пространства IPv4. На многих сайтах также используют частный характер адресов RFC 1918, чтобы обеспечить безопасность или защитить сеть от потенциальных угроз. Однако такая мера никогда не была целью использования данных технологий, и организация IETF всегда рекомендовала предпринимать правильные меры предосторожности при работе маршрутизатора в Интернете. Хотя протокол IPv6 обеспечивает особую адресацию для сайтов, он не предназначен для того, чтобы скрывать внутренние устройства под управлением IPv6 от Интернета IPv6. IETF рекомендует ограничивать доступ к устройствам с помощью наилучших мер безопасности.

Примечание. Исходная спецификация IPv6 определяет локальные адреса для тех же целей с помощью диапазона префикса FEC0:: /10. В спецификации были обнаружены некоторые неточности, и локальные адреса сайтов были запрещены IETF в пользу уникальных локальных адресов.

Последними из рассматриваемых типов индивидуальных адресов являются встроенные IPv4-адреса. Использование этих адресов способствует переходу с протокола IPv4 на IPv6. Встроенные IPv4-адреса не рассматриваются в этом курсе.

Типы ipv6 адресов

Категория: CCNA: Introduction to Networks / Добавил: Артём

Глобальные индивидуальные IPv6-адреса обычно уникальны по всему миру и маршрутизируются в IPv6-сети. Эти адреса эквивалентны публичным IPv4-адресам. Корпорация по управлению доменными именами и IP-адресами (Internet Committee for Assigned Names and Numbers, ICANN), оператор Администрации адресного пространства Интернет (IANA) выделяет блоки IPv6-адресов пяти региональным интернет-регистраторам (RIR). В настоящее время назначаются только глобальные индивидуальные адреса с первыми тремя битами 001 или 2000::/3. Это лишь 1/8 от всего доступного адресного пространства IPv6, за исключением очень незначительного количества других типов адресов индивидуальных и групповых адресов.

Примечание: Адрес 2001:0DB8::/32 зарезервирован для документации, в том числе для использования в примерах.

На рисунке 1 показаны структура и диапазон глобальных индивидуальных адресов.

Рисунок 1 — Глобальный индивидуальный адрес IPv6.

Глобальный индивидуальный адрес состоит из трех частей.

  • Префикс глобальной маршрутизации
  • Идентификатор подсети
  • Идентификатор интерфейса

Префикс глобальной маршрутизации

Префикс глобальной маршрутизации — это префиксальная или сетевая часть адреса, назначаемая интернет-провайдером клиенту или организации (филиалу). Как правило региональные интернет-регистраторы (RIR) назначают своим заказчикам — корпоративным сетям и индивидуальным пользователям — префикс глобальной маршрутизации длины /48.

На рисунке 2 показана структура глобальных индивидуальных адресов, использующих префикс глобальной маршрутизации /48. Префиксы /48 — наиболее распространенные назначаемые префиксы глобальной маршрутизации.

Рисунок 2 — Префикс глобальной маршрутизации IPv6 /48.

Например, IPv6-адрес 2001:0DB8:ACAD::/48 имеет префикс, который означает, что первые 48 бит (3 гекстета) (2001:0DB8:ACAD) — это префиксальная или сетевая часть адреса. Двойное двоеточие (::) перед длиной префикса /48 означает, что остальная часть адреса состоит из нулей.

Размер префикса глобальной маршрутизации определяет размер идентификатора подсети.

Идентификатор подсети

Идентификатор подсети используется организациями для разделения на подсети в рамках площадки (филиала). Чем больше длина идентификатора подсети, тем больше подсетей можно создать.

Идентификатор интерфейса

Идентификатор IPv6-интерфейса эквивалентен узловой части IPv4-адреса. Термин «идентификатор интерфейса» используется по той причине, что один узел может иметь несколько интерфейсов, каждый из которых имеет один или более IPv6-адресов. Настоятельно рекомендуется в общем случае использовать подсети / 64 (другими словами, 64-битный идентификатор интерфейса, как показано на рисунке 2.).

Примечание: В отличие от IPv4, при использовании протокола IPv6 устройству можно назначить адрес узла, состоящий из одних 0 или из одних 1. Адрес из одних 1 можно использовать по той причине, что в протоколе IPv6 не используются широковещательные адреса. Можно также использовать адрес из одних 0, но он зарезервирован в качестве адреса произвольной рассылки маршрутизатора подсети, и его следует назначать только маршрутизаторам.

Самый простой способ прочитать большинство IPv6-адресов — подсчитать количество гекстетов. Как показано на рисунке 3, в глобальном индивидуальном адресе с префиксом /64 первые четыре гекстета обозначают сетевую часть адреса, а четвертый гекстет — идентификатор подсети. Остальные четыре гекстета используются для идентификатора интерфейса.

Рисунок 3 — Интерпретация глобального индивидуального адреса.

Типы ipv6 адресов

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

IPv6 — протокол сетевого уровня, который постепенно приходит на смену IPv4, основному протоколу сетевого уровня в Интернете в настоящий момент.

Содержание

[править] Адресация в IPv6

[править] Типы адресов

  • Unicast:
    • Идентифицирует конкретный интерфейс в сети.
    • Пакет, отправленный на такой адрес, будет доставлен на этот интерфейс.
    • В IPv6 есть несколько типов unicast адресов:
      • Global unicast
      • Link-local (FE80::/10)
      • Unique local unicast (FC00::/7)
  • Anycast:
    • Присваиваются группе интерфейсов, которые обычно принадлежат различным устройствам.
    • Пакет, отправленный на anycast адрес, доставляется одному участнику группы интерфейсов, обычно ближайшему с точки зрения маршрутизатора (маршрутизатор использует метрику протоколов маршрутизации для того чтобы определить ближайший интерфейс).
    • Формат unicast и anycast адресов одинаковый.
    • Адреса anycast используют маршрутизаторы.
    • Anycast-адрес не должен использоваться в качестве адреса отправителя в IPv6-пакете.
  • Multicast:
    • Идентифицируют группу интерфейсов, которые обычно принадлежат различным устройствам.
    • Пакет, отправленный на такой адрес, будет доставлен всем интерфейсам в группе.
    • У multicast адресов префикс FF00::/8.
Читать еще:  Переадресация портов mikrotik

На интерфейсе IPv6:

  • Может быть назначено несколько адресов различных типов
  • На каждом интерфейсе должен быть хотя бы один loopback (::1/128) и один link-local адрес

[править] Unicast адреса

[править] Unspecified

  • ::/128 — адрес состоящий из всех нулей называется unspecified адрес.
  • Используется, например, при инициализации хоста, перед тем как хост выучит свой адрес, в качестве адреса отправителя. Пакет в котором в адресе отправителя указан unspecified адрес не должен передаваться маршрутизатором.
  • Unspecified адрес не должен использоваться как адрес получателя.

[править] Link local

  • FE80::/10 — адрес, который используется только в пределах одного линка.
  • Link-local адреса используются для адресации линка для таких механизмов как автоматическая настройка адреса, обнаружение соседей, при отсутствии маршрутизатора.
  • Маршрутизаторы не должны передавать в другой сегмент пакеты в которых адрес отправителя или получателя link-local.

[править] Global Unicast

[править] Anycast адреса

IPv6 определяет новый тип адреса, называемых anycast. Anycast адрес определяет список узлов или устройств. Пакет, посланный к такому адресу, доставляется на ближайший интерфейс. Anycast адреса синтаксически неотличимы от адресов Global unicast, потому что Anycast адреса выделяются из адресного пространства Global unicast.

[править] Multicast адреса

Multicast адреса идентифицируют группу интерфейсов, которые обычно принадлежат различным устройствам. Пакет, отправленный на такой адрес, будет доставлен всем интерфейсам в группе. Интерфейс может принадлежать любому количеству multicast групп.

Multicast адреса не должны использоваться как адрес отправителя в пакетах IPv6.

Маршрутизаторы не должны передавать любой multicast пакет за границы, указанные в поле scop в multicast адресе получателя.

Хосты не должны отправлять пакеты с multicast адресом с полем scop равным 0. Если такой пакет получен, то он должен быть отброшен (без оповещений).

[править] Формат multicast адреса

У multicast адреса такой формат:

  • Первые 8 бит единиц адреса указывают, что это multicast адрес. У multicast адресов префикс FF00::/8.
  • flgs — это 4 бита (0RPT), которые устанавливают флаги:
    • 0 — этот бит зарезервирован и должен быть выставлен в 0;
    • R — использование этого флага описано в RFC3306;
    • P — использование этого флага описано в RFC3956;
    • T:
      • T = 0 — указывает, что адрес присвоен IANA перманентно («well-known»),
      • T = 1 — указывает, что адрес присвоен временно (присвоен «transient» или «dynamically»)
  • scop — это 4 бита, которые указывают значение границ распространения (scope) multicast группы:
    • 0, 3, F — зарезервировано;
    • 6-7, 9-D — не присвоено — могут быть использованы для определения дополнительных multicast регионов;
    • 1 — Interface-Local scope — перекрывает только один интерфейс хоста и используется только для локальной (loopback) передачи multicast;
    • 2 — Link-Local scope — передается в тех же пределах, что и соответствующий диапазон unicast;
    • 4 — Admin-Local scope — адреса, которые должны административно настраиваться;
    • 5 — Site-Local scope — предназначены для передачи в пределах одного участка (site);
    • 8 — Organization-Local scope — предназначены для передачи через несколько участков одной организации;
    • E — Global scope.
  • group ID — идентифицирует multicast группу, перманентную или временную, в указанных границах. Дополнительная информация о структуре этого поля в RFC3306.

[править] Предопределенные multicast адреса

Multicast адреса описанные в этом разделе предопределены (RFC4291). Идентификаторы группы (group ID) этих адресов определены для конкретных границ распространения адресов.

Использование перечисленных идентификаторов групп с другими значениями границ распространения, с флагом T=0, не разрешено.

[править] Зарезервированные

Зарезервированные multicast адреса — перечисленные адреса зарезервированы и не должны использоваться в качестве адреса какой-либо multicast группы

FF00:0:0:0:0:0:0:0 FF01:0:0:0:0:0:0:0 FF02:0:0:0:0:0:0:0 FF03:0:0:0:0:0:0:0 FF04:0:0:0:0:0:0:0 FF05:0:0:0:0:0:0:0 FF06:0:0:0:0:0:0:0 FF07:0:0:0:0:0:0:0 FF08:0:0:0:0:0:0:0 FF09:0:0:0:0:0:0:0 FF0A:0:0:0:0:0:0:0 FF0B:0:0:0:0:0:0:0 FF0C:0:0:0:0:0:0:0 FF0D:0:0:0:0:0:0:0 FF0E:0:0:0:0:0:0:0 FF0F:0:0:0:0:0:0:0

[править] All Nodes

All Nodes адреса — идентифицируют группу всех IPv6 хостов, с границей 1 (interface-local) или 2 (link-local):

[править] All Routers

All Routers адреса — идентифицируют группу всех IPv6 маршрутизаторов, с границей 1 (interface-local), 2 (link-local) или 5 (site-local):

FF01:0:0:0:0:0:0:2 FF02:0:0:0:0:0:0:2 FF05:0:0:0:0:0:0:2

[править] Solicited-node multicast

Solicited-node multicast адрес вычисляется из unicast и anycast адресов хоста. У всех адресов одинаковый префикс FF02::1:FF00:0/104. К указанному префиксу добавляются 24 low-order бита адреса (unicast или anycast), в результате solicited-node multicast адрес может быть в диапазоне от FF02:0:0:0:0:1:FF00:0000 до FF02:0:0:0:0:1:FFFF:FFFF.

Хост должен вычислить и присоединиться (на соответствующем интерфейсе) ко всем solicited-node multicast адресам, полученных из всех unicast и anycast адресов, которые настроены на интерфейсах хоста (вручную или автоматически).

Solicited-node multicast адреса используются протоколом обнаружения соседей — Neighbor Discovery (ND или NDP).

[править] Обязательные адреса

[править] Обязательные адреса для хоста

Хост должен распознавать следующие адреса, как адреса которые его идентифицируют:

  • Link-local адрес для каждого интерфейса;
  • Любой дополнительный unicast или anycast адрес, который был настроен на интерфейсе хоста (вручную или автоматически);
  • loopback адрес;
  • All-Nodes multicast адрес;
  • Solicited-Node multicast адрес для каждого из настроенных unicast или anycast адресов;
  • Multicast адреса для любых других групп к которым принадлежит хост.

[править] Обязательные адреса для маршрутизатора

Маршрутизатор должен распознавать все адреса, которые должен распознавать хост, плюс следующие, как адреса которые его идентифицируют:

  • Subnet-Router Anycast адрес для всех интерфейсов, для которых он настроен для работы в качестве маршрутизатора;
  • Любые другие Anycast адреса, которые настроены на маршрутизаторе;
  • All-Routers multicast адрес.

[править] Специальные адреса

Некоторые адреса (например, перечисленные в rfc5156 и списке IANA) имеют специальное назначение и их применение должно быть обосновано.

  • 2001:7f8::/32 — для раздачи блоков точкам обмена интернет-трафиком (ripe-510);
  • 2001:678::/29 — для раздачи /48 корневым службам (ripe-510);
  • 2001:0::/32 — для клиентов Teredo (rfc4380);
  • 2001:db8::/32 — документирование и примеры (rfc3849);
  • 2002::/16 — реализация 6to4 (rfc3056);
  • 64:ff9b::/96 — реализация NAT64 (rfc6052);
  • ::FFFF:0:0/96 — отображение для IPv4-адресов (rfc5156);

[править] Протокол обнаружения соседей (Neighbor Discovery)

Протокол обнаружения соседей (Neighbor Discovery, ND) — протокол, с помощью которого IPv6 хосты разделяющие линк могут обнаружить друг друга, определить адрес канального уровня другого хоста (вместо ARP, который использовался в IPv4), обнаружить маршрутизаторы, поддерживать информацию о доступности путей к другим активным соседям.

[править] Задачи протокола

Протокол ND описан в RFC2461. Этот протокол решает ряд проблем относящихся к взаимодействию между хостами разделяющими линк. Он определяет механизмы для решения каждой из перечисленных задач:

  • Обнаружение маршрутизатора (Router Discovery) — хосты могут обнаружить маршрутизаторы, которые находятся на том же линке, что и они;
  • Обнаружение префикса (Prefix Discovery) — хосты обнаруживают префиксы, которые определяют какие получатели находятся на одном линке с ними (хосты используют префиксы для того чтобы определить какие получатели доступны на линке, а какие доступны только через маршрутизатор);
  • Обнаружение параметров (Parameter Discovery) — хосты получают параметры линка (например, MTU);
  • Автоматическая настройка адреса (Address Autoconfiguration) — хосты автоматически настраивают адрес на интерфейсе;
  • Преобразование адреса (Address resolution) — хосты определяют адрес канального уровня соседей по IP-адресу получателя;
  • Определение next-hop (Next-hop determination) — алгоритм для установки соответствия между IP-адресом получателя и IP-адресом соседа, которому нужно отправить трафик для того чтобы он был доставлен получателю. Next-hop может быть маршрутизатор или сам получатель;
  • Определение недоступности соседа (Neighbor Unreachability Detection, NUD) — хосты определяют, что сосед более недоступен;
  • Определение дублирующегося адреса (Duplicate Address Detection, DAD) — хост определяют, что адрес, который он хочет использовать не используется другим хостом;
  • Перенаправление (Redirect) — маршрутизатор оповещает хост, что есть лучший маршрутизатор (first-hop), для отправки трафика к конкретному получателю.

[править] Типы сообщений

Neighbor Discovery определяет пять разных типов ICMP пакетов:

Ссылка на основную публикацию
Adblock
detector