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

Одноадресные (unicast) адреса IPv6 похожи на адреса IPv4. Они предназначены для конфигурирования одного интерфейса чтобы он мог получать и отправлять IPv6 пакеты.

Существуют различные unicast адреса IPv6:

  • Глобальные индивидуальные IPv6 адреса (Global Unicast Address, GUA) начинаются 2000::/3 и аналогичны публичным адресам IPv4. Адреса могут быть использованы в интернете. Главное отличие от IPv4 в том, что количества IPv6 адресов хватает для адресации всех устройств в Сети.
  • Уникальные локальные адреса (Unique Local Address, ULA) начинаются с fc00::/8 или fd00::/8 и аналогичны приватным адресам IPv4. Эти адреса можно использовать в частной локальной сети без выхода в интернет или с выходом в интернет через IPv6 NAT. Уникальные локальные адреса не нужно регистрировать в специализированном органе.
  • Локальные адреса (Link-local) — адреса работающие только в локальной сети, эти адреса начинаются с fe80::/10 и никогда не маршрутизируются. Адреса link-local используются для обмена пакетами IPv6 внутри одной подсети, для обнаружения соседства и как адреса next-hop в таблице маршрутизации.
  • Местные локальные адреса site-local. Первоначально предполагалось использовать адреса site-local в качестве частных IPv6 диапазонов компаний. В настоящее время этот тип адресов устарел (смотрите RFC 3879) и вместо адресов site-local теперь используются уникальные локальные адреса.
  • Неуказанный адрес имеет вид 0:0:0:0:0:0:0:0, или в короткой записи :: (два двоеточия). Такой адрес никогда не следует настраивать на хосте, он используется для указания на тот факт, что хост не имеет ни одного адреса.
  • Адрес loopback-интерфейса имеет вид 0:0:0:0:0:0:0:1, или в короткой записи ::1. Устройства IPv6 могут использовать этот адрес для отправки IPv6 пакетов самим себе в целях тестирования и проверок. Loopback-адрес никогда не должен быть назначен ни на один физический интерфейс. Это эквивалент IPv4 адреса 127.0.0.1.

Маршрутизируемый глобально индивидуальный адрес IPv6 (GUA) уникально идентифицирует устройство или интерфейс в глобальной IPv6 сети. Говоря о рекомендуемой RFC 3177 структуре такого адреса прежде всего следует поделить его 128 бит пополам. Тогда слева останутся 64 бита (4 группы по 4 символа) маршрутизируемой (сетевой) части адреса, а справа 64 бита идентификатора интерфейса. Левая часть, в свою очередь, делится на первые 48 бит, которые были получены от регионального регистратора Интернета (RIR) и интернет-оператора (ISP) и оставшиеся 16 бит идентификатора подсети, доступного для назначения подсетей администратором сети. 64 бита идентификатора интерфейса могут быть: сгенерированы автоматически из MAC-адреса по методу EUI-64, получены от DHCPv6 сервера или заданы вручную.

Уникальные локальные адреса (ULA) не доступны из глобальной сети — маршрутизируются только в области действия частных сетей и аналогичны приватным IPv4 адресам. Все они начинаются с семибитового префикса 1111110 после которого идёт восьмой бит L, который формирует два равных диапазона fc00::/8 зарезервированный для централизованного назначения и fd00::/8 для локально назначаемых ULA. Далее следуют 40 битов глобального идентификатора — случайное число, уникальное с высокой вероятностью. Далее, как и в случае с адресом GUA следуют 16 бит идентификатора подсети и 64 бита идентификатора интерфейса.

Multicast (групповые) адреса в IPv6 используются как для протоколов маршрутизации, так и при передаче пользовательских данных. Для групповой передачи используется префикс FF00::/8. Первые восемь битов FF (1111 1111) означают multicast-адрес, следующие четыре бита используются для установления флагов. Следующие четыре бита задают ограничения передачи multicast-данных: внутри одной подсети, в рамках организации или глобально — в сети Интернет.

Наиболее часто используемые multicast-адреса:

  • FF02::1 — все узлы в локальном сегменте сети.
  • FF02::2 — все маршрутизаторы в локальном сегменте сети.
  • FF02::5 — все OSPFv3 маршрутизаторы.
  • FF02::6 — все OSPFv3 DR маршрутизаторы.
  • FF02::9 — RIPng маршрутизаторы.

Anycast (произвольный) IPv6 адрес может быть назначен нескольким устройствам и объявлен в протоколе маршрутизации. Когда происходит отправка пакета на anycast-адрес, он будет отправлен на ближайшее устройство с этим адресом. Не существует специальных префиксов для anycast адресов. Любой unicast адрес используемый на более чем одном устройстве становится anycast адресом. Единственное отличие заключается в том, что необходимо будет настроить устройство и указать, что адрес является anycast-адресом.