Компьютерные сети

Особенности IPv6

IPv6 - не просто 'длинные адреса'. Это редизайн сетевого уровня: автоконфигурация без DHCP, отсутствие broadcast, обязательный multicast, extension headers вместо options. Понимание этих отличий критично для современного сетевого инженера.

  • **Мобильные операторы:** T-Mobile, Verizon, Jio используют IPv6-only с NAT64. Ваше приложение должно работать в такой среде
  • **Cloud native:** Kubernetes поддерживает dual-stack. Service mesh (Istio) активно использует IPv6 для sidecar коммуникации
  • **IoT:** Миллиарды устройств получают глобальные IPv6 адреса через SLAAC без необходимости в DHCP-инфраструктуре

Предварительные знания

  • IPv6: The Future Is Already Here

SLAAC и DHCPv6

В IPv6 есть два способа автоматического получения адреса: **SLAAC** (Stateless Address Autoconfiguration) и **DHCPv6**. Они могут работать вместе, дополняя друг друга.

**RDNSS:** RFC 8106 добавил DNS в Router Advertisement. Теперь SLAAC может работать полностью без DHCPv6. Но не все ОС поддерживают RDNSS.

DHCPv6 работает иначе, чем DHCPv4:

Хост получил RA с M=0, O=1. Как он получит default gateway?

Neighbor Discovery Protocol (NDP)

**NDP (Neighbor Discovery Protocol)** заменяет ARP и делает гораздо больше: обнаружение роутеров, автоконфигурацию, проверку достижимости соседей, обнаружение дубликатов.

**Neighbor Solicitation/Advertisement** - аналог ARP запрос/ответ:

**NUD (Neighbor Unreachability Detection):** NDP периодически проверяет, что сосед ещё жив. Если хост не отвечает - запись удаляется. ARP не имеет такого механизма.

Чем Neighbor Solicitation в IPv6 лучше ARP Request в IPv4?

ICMPv6 - сердце IPv6

**ICMPv6** критически важен для работы IPv6. В отличие от IPv4, где ICMP можно частично блокировать, в IPv6 блокировка ICMPv6 **ломает сеть** - без него не работают NDP, PMTUD, SLAAC.

**Packet Too Big:** В IPv6 роутеры НЕ фрагментируют пакеты (только отправитель). Без ICMPv6 Type 2 Path MTU Discovery невозможен - большие пакеты молча теряются.

Заголовок IPv6 проще IPv4 - убраны редко используемые поля:

**Extension Headers** заменяют Options и обрабатываются только конечным хостом (не роутерами).

Почему блокировка ICMPv6 'Packet Too Big' критична в IPv6?

Dual-Stack и Happy Eyeballs

**Dual-Stack** - основная стратегия перехода: устройство имеет и IPv4, и IPv6 адреса одновременно. Приложения выбирают протокол в зависимости от доступности.

**Проблема:** Если IPv6 есть, но сломан (неправильная конфигурация, firewall), подключение зависнет на 20-30 сек до fallback на IPv4.

**Happy Eyeballs (RFC 8305)** решает эту проблему - пробует оба протокола параллельно:

Все современные браузеры и ОС реализуют Happy Eyeballs. Задержка перед fallback настраивается (обычно 200-300мс).

Сайт имеет A и AAAA записи. У клиента IPv6 настроен, но firewall блокирует его. Что увидит пользователь с Happy Eyeballs?

Туннелирование и NAT64

Когда dual-stack невозможен, используют **туннелирование** (IPv6 внутри IPv4) или **трансляцию** (NAT64/DNS64). Это позволяет IPv6-only клиентам общаться с IPv4-only серверами.

**HE.net Tunnel Broker:** Бесплатный сервис для получения IPv6 через туннель. Полезен, если ваш ISP не предоставляет IPv6.

**NAT64 + DNS64** - современное решение для IPv6-only сетей (мобильные операторы):

IPv6 не нужен, пока работает IPv4 с NAT

IPv4 адреса уже закончились, новые сети строятся на IPv6-only с NAT64

IANA распределила последние IPv4 блоки в 2011 году. Региональные реестры исчерпали запасы к 2015-2020. Новые адреса можно только купить (~50/IP). Мобильные операторы массово переходят на IPv6-only - это дешевле и масштабируемее. Apple требует поддержки IPv6-only для App Store с 2016 года.

Мобильный оператор использует IPv6-only с NAT64. Приложение делает запрос к серверу, у которого только IPv4. Что происходит?

Итоги

  • **SLAAC** позволяет хостам получить адрес автоматически из Router Advertisement без сервера. DHCPv6 дополняет DNS и другие опции
  • **NDP** заменяет ARP и добавляет: Router Discovery, SLAAC, DAD, Neighbor Unreachability Detection. Использует ICMPv6
  • **ICMPv6** критически важен - нельзя блокировать! Без Packet Too Big ломается PMTUD, без NDP сообщений - вся сеть
  • **Happy Eyeballs** обеспечивает быстрое подключение при dual-stack. **NAT64/DNS64** соединяют IPv6-only клиентов с IPv4 серверами

Связанные темы

IPv6 features связаны с базовыми концепциями:

  • Введение в IPv6 — Базовый формат адресов и типы (GUA, link-local, ULA)
  • ARP — NDP заменяет ARP в IPv6, добавляя новые возможности

Вопросы для размышления

  • Почему в IPv6 решили не переносить broadcast из IPv4?
  • Как Happy Eyeballs влияет на производительность для пользователей с нестабильным IPv6?
  • Какие проблемы безопасности создаёт NDP без SeND (Secure NDP)?

Связанные уроки

  • sec-01
Особенности IPv6

0

1

Войти