- Что такое ip-адресация
- Какие бывают ip-адреса
- Как их назначать
- Как с ними работать
Адреса ip

ip - протокол передачи данных на сетевом уровне
- Одна из функций сетевого уровня адресация. Реализуется через ip-адреса
Говоря об ip-сетях имеется в виду диапозон ip-адресов. Есть широковещательный адрес и пул адресов, доступных внутри этого диапозона
Говоря об ip-сети, имеется в виду, что каждый хост в этой сети имеет одинаковую сетевую часть, каждый хост имеет свою уникальную хостовую часть в своем адресе. При этом адрес хоста не может быть нулем (адрес сети) и не может быть заполнен 1 (широковещательный диапозон)
IPv6

Необходимость ipv6:
- Нехватка ipv4
- Исправление ограничений ipv6
- Зависимость от NAT (нарушает связность сети)
Сосуществование ipv4 и ipv6
- Двойной стек (работа с 2 протоколами одновременно)
- Тунеллирование (передача пакета ipv4 в заголовке ipv4)
- Трансляция (NAT64) - преобразование одного адреса в другой
Заголовки ip

Адрес ipv4

Адрес ipv6

128 бит (16 байт). регистр не важен
гекстет
Формат адреса ipv6



- Префикс
- Адрес интерфейса
- Длина префикса В ipv6 запись маски используется только через / Рекомендуется для подсети брать 64 бита. Внутри уже делить эти 64 бита на подсети

Правила представления ipv6 адресов

- Ведущие нули в гекстете (хекстете) могут не записываться

- Группы нулей могут быть сокращены до 2 двоеточий (только одна, наибольшая по размеру, слева направо)
Тип рассылки и области действия ip-адресов
Типы рассылки ipv4

- unicast
- multicast (групповое/многоадресное вещание). Передается только устройствам, подписанным на эти адреса. Используется, например в ripv2. Там используется специальный групповой адрес для отправки rip - сообщений. Просто так оказаться подписанным нельзя. Нужно, чтобы существовал протокол для таких групповых адресов
- broadcast (рассылка всем устройствам в сети)
- Направленное (отправка всем устройства в сети с помощью широковещательного адреса сети (адрес хоста из 1))
- Ограниченное (все 32 бита в адресе назначения - 1)
Отличаются тем, что по адресу ограниченного широковещания можно передавать данные от устройства в локальной сети на все устройства в этой же локальной сети. Маршрутизатор не пропустит пакеты с таким адресом назначения. Направленно широковещание возможно за пределами конкретной локальной сети. То есть устройство из одной локальной сети может направит пакет всем устройствам из другой локальной сети, прописав в адрес хоста этой сети широковещательный адрес (из всех 1). Такой пакет до нужной сети будет передаваться как одноадресный. При получении маршрутизатором подключенной к целевой сети, раскидается на все хосты этой сети
Типы рассылки ipv6

- Unicast (уникальные во всей сети)
- Multicast (группу подписанных на этот адрес устройств)
- Anycast (специальная рассылка, когда один и тот же ipv6 адрес может быть назначен множеству устройств, но отвечает (получает) только одно устройство с таким адресом - ближайшее (по метрике) к отправителю)
Нет широковещательных адресов. Зато есть специальные групповые адреса:
- ff02::1 - все узлы на каняле связи (можем передать сообщение на все хосты в канале связи (локальной сети))
- ff02::2 - все маршрутизаторы на канале связи
Специальные ip-адреса

Локальные адреса канала назначаются операционной системой автоматически, когда не нашлось dhcp-серверов
Область действия ipv4 адресов

- Локальные диапозоны
- 10.0.0.8/8
- 172.16.0.0/16
- 192.168.0.0/24 Не маршрутизируются в глобальной сети. NAT
Область действия ipv6 адресов

Подразумевается, что адресов достаточно для всех устройств в интернете
- Global unicast address
- Аналог публичных IPv4 - адресов
- Распределяются IANA
- Блок адресов: 2000::/3
- Unique-local address
- Аналог частных ipv4 - адресов
- Блоки FC00::/7 и FD00::/8
- Широкое распространение не получили
- Не преобразуются в глобальные ip-адреса (нет NAT)
- Link-local address
- Не маршрутизируются
- Назначаются автоматически (ос, всегда есть)
- В пределах локального канала
- Блок FE80::/10
- На них нельзя построить сеть
- Один и тот же адрес может повторяться в глобальной сети. На разные адреса интерфейсов можно назначить одинаковый link-local адрес
- На link-local адресах работают протоколы маршрутизации ipv6
- Site-local address
- Не используются
В отличие от ipv4 сетях, в ipv6 устройству на один адрес может быть назначено несколько адресов

- Префикс глобальной маршрутизации (48 бит) (регистратор)
- Идентификатор подсети (16 бит) (клиент провайдера)
- Идентификатор интерфейса
Адрес интерфейса может состоять из всех 1
Link-local address (lla)

Назначается либо руками, либо динамически (случайная генерация / использование mac-адреса)
Идентификатор генерируется обычно автоматически
Действие происходит в пределах одного канала
Сообщения между маршрутизаторами передаются по link-local адресам
В качестве шлюза по умолчанию принято использовать link-local адреса
Назначение ipv6 адресов
- Статически
- Динамически
Команды

Пример назначения глобальных адресов

2001::/64 - учебные сети
Пример назначения link-local адресов

? Какая маска?
Таблица маршрутизации ipv6

Задание ipv6 адреса на хосте

Шлюз лучше назначать через link-local? Это возможно?
Назначение ipv6-адресов

3 способа автоматического назначения адресов ipv6:
- Без сохранения состояния (Нигде не записывается какому хосту какой ipv6 адрес выдан (нет внешнего устройства))
- SLAAC
- SLAAC + DHCPv6
- С сохранением состояния (есть внешнее устройство, отслеживающее состояние(dhcp))
- DHCPv6
DHCPv4 (повторение)

4 этапа:
- DISCOVER (ищем сервер в сети) - широковещательное
- OFFER - Предложение ip хосту
- RECEIVED? (подтверждение, что взяли адрес) - широковещательное (если несколько DHCP)
- ACKNOWLEDGED (Сохранение связки - MAC-адрес/ip-адрес, срок аренды)
Сообщения ICMPv6

- RA, route advertisement) - маршрутизатор сообщает о себе
- RS, Router Soliciation
SLAAC

- Клиент включается в сеть
- Ждем сообщение маршрутизатора RA (ff02::1)
- Или с помощью RS пингуем маршрутизатор (multicast адрес ff02::2), чтобы он отправил RA
- В RA указывается префикс сети, который должен использовать хост для префикса своего адреса
- Случайным образом задает адрес интерфейса
- Либо рандомно назначается ОС
- Либо берется mac-адрес интерфейса и происходит это (менее предпочтительный способ)

Прицип работы SLAAC

3 шаг - попытка “пингануть” занимаемый интерфейс. Если ответа нет, адрес интерфейса можно занять
Флаги

2 бита. При обычном SLAAC обнулены
Stateless DHCP (DHCPv6 + SLAAC)

Начало такое же. Хост посылает ra*, принимает rs и префикс сети. Но с поднятым флагом O. Далее нужно получить адрес интерфейса от DHCPv6 по схеме:

Обращение к DHCP происходит по специальному multicast-адресу
- SOLICIT
- ADVERTISE
- INFORMATION-REQUEST (запрос на получение информации о сети)
- REPLY (предоставление информации о сети)
При этом адрес интерфейса генерируется хостом и проверяется по схеме SLAAC

Stateful DHCP (DHCPv6)
- К маршрутизатор
- M = 1, O = 1. Префикс от маршрутизатора не рассматривается
- Ищем DHCP
- В 4 этапа получаем IPv6 адрес на время аренды
Динамические LLA (Link-local addresses)

Пример динамически сгенерированных адресов на хосте

Для обоих видов адресов (глобального и link-local) интерфейсная часть одинаковая (всегда?)
Создание адреса на маршрутизаторе

Тут же предпочтительнее испоьзовать EUI-64
У serial интерфейсов нет mac-адресов, поэтому возьмется mac-адрес, назначенный на младшем интерфейсе типа gigabit-ethernet или каком-то другом интерфейсе, имеющем mac-адреса
Глобальный адрес не может совпадать на разных интерфейсах, так как он маршрутизируется
Просмотр настроек интерфейсов ipv6

link-local всегда есть, генерируются автоматически, можно переназначить
Таблица маршрутизации ipv6

Сообщения ICMPv6

RA (отправляются маршрутизаторами)
- В сообщении маршрутизатор указывает префикс сети, длину префикса сети. Может указывать dns, доменные имена
- Может указывать себя в качестве шлюза по умолчанию
- Отправляются каждые 200 секунд всем хостам
RS (отправляются хостами для того, чтобы досрочно вынудить маршрутизаторы отправить RA)

Обнаружение соседей
NA - поиск соседей
NS - поиск дублированного адреса. Можно отправить хостам в сети, в интерфейсе указать адрес, который себе хочет назначить хост. Если пришел ответ, значит можно брать интерфейс. Иначе нужно поменять адрес адрес интерфейса
По сути аналог arp:
- Отправляется NA c интерфейсом, mac-адрес которого нужно узнать. Откликается только устройство с запрашиваемым интерфесом, сообщая mac
ping IPv6

Разделение на подсети

Разделение на подсети

- CIDR - бесклассовая адресация
- VLSM - VLSM - маска подсети переменной длины
Формула расчета количества подсетей

ipv6 разделение на подсети

В адресе предусмотрено поле для теления диапозона на подсети
ipv6 адресов дофига. Их не экономят
Пример ipv6 сети
