13.2 Настройка MLD
13.2.1 Обзор
Введение в функцию
Для участия в IPv6 мультикасте мультикаст-хосты, маршрутизаторы и коммутаторы 3-го уровня должны поддерживать работу MLD. Этот протокол определяет роли запросчика и хоста:
- Запросчик — сетевое устройство, которое отправляет сообщения-запросы, чтобы определить, какие устройства в сети являются участниками данной мультикаст-группы.
- Хост — получатель, который отправляет сообщения-отчеты (в ответ на запросы), чтобы уведомить запросчика о своем участии в группе.
- Набор запросчиков и хостов, получающих потоки мультикаст-данных IPv6 из одного источника, называется мультикаст-группой IPv6. Запросчики и хосты используют сообщения MLD, чтобы присоединяться к мультикаст-группам и покидать их. Любой хост, независимо от того, является ли он членом группы, может отправлять сообщения в группу. Однако только члены группы получают эти сообщения. Участие в мультикаст-группе динамично; хосты могут присоединяться и покидать группу в любое время. Нет ограничений на количество участников или их расположение.
- Хост может одновременно быть членом нескольких мультикаст-групп. Активность группы и её состав могут различаться и изменяться с течением времени. Группа может быть активной долгое время или существовать лишь кратковременно. Группа с участниками может не проявлять активности.
Пакеты MLD отправляются, используя следующие IPv6 мультикаст-адреса:
- Общие запросы MLD направляются на адрес ff02::1 (все устройства в подсети).
- Специфические для группы запросы MLD направляются на IPv6-адрес группы, для которой выполняется запрос.
- Отчёты об участии в группе MLD направляются на IPv6-адрес группы, для которой выполняется отчёт.
- Сообщения об уходе в MLD версии 1 (MLDv1) направляются на адрес ff02::2 (все маршрутизаторы мультикаст в подсети). В некоторых старых реализациях IPv6 сообщения об уходе могут быть направлены на адрес группы, а не на адрес всех маршрутизаторов.
Описание принципа
Модуль MLD основан на следующих RFC:
- RFC 2710
- RFC 3810
13.2.2 Настройка
Для активации MLD нет специальной команды, поскольку он всегда работает совместно с PIMv6-SM. Если PIMv6-SM включён на интерфейсе, MLD будет автоматически активирован на этом интерфейсе (и наоборот). Однако перед началом работы MLD необходимо глобально включить маршрутизацию IPv6 Multicast. Поддерживается как обучение MLD-групп с помощью пакетов MLD, так и настройка статических групп администратором.
Шаг 1: Введите режим конфигурации
Switch# configure terminal
Шаг 2: Включите IPv6 и маршрутизацию IPv6 Multicast глобально
Switch(config)# ipv6 enable
Switch(config)# ipv6 multicast-routing
Шаг 3: Войдите в режим конфигурации интерфейса, задайте IPv6-адрес и включите PIM sparse mode
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:1::1/64
Switch(config-if)# ipv6 pim sparse-mode
Шаг 4: Настройте параметры интерфейса MLD
Switch(config-if)# ipv6 mld version 2
Switch(config-if)# ipv6 mld query-interval 120
Switch(config-if)# ipv6 mld query-max-response-time 12
Switch(config-if)# ipv6 mld robustness-variable 3
Switch(config-if)# ipv6 mld last-member-query-count 3
Switch(config-if)# ipv6 mld last-member-query-interval 2000
Шаг 5: Установите максимальное количество групп MLD
Для интерфейса:
Switch(config-if)# ipv6 mld limit 1000
Switch(config-if)# exit
Глобально:
Switch(config)# ipv6 mld limit 2000
Шаг 6: Создайте статическую MLD-группу
Switch(config)# interface eth-0-1
Switch(config-if)# ipv6 mld static-group ff0e::1234
Switch(config-if)# exit
Шаг 7: Настройте проксирование MLD (необязательно)
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# ipv6 mld proxy-service
Switch(config-if)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# no switchport
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# ipv6 mld mroute-proxy eth-0-1
Switch(config-if)# exit
Шаг 8: Выйдите из режима конфигурации
Switch(config)# end
Шаг 9: Проверка
Отображение параметров интерфейса MLD:
Switch# show ipv6 mld interface
Interface eth-0-2 (Index 2)
MLD Inactive, Version 1 (default)
MLD mroute-proxy interface is eth-0-1
MLD global limit is 2000
MLD global limit states count is currently 0
MLD interface limit is 4096
MLD interface has 0 group-record states
MLD activity: 0 joins, 0 leaves
MLD query interval is 125 seconds
MLD querier timeout is 255 seconds
MLD max query response time is 10 seconds
Last member query response interval is 1000 milliseconds
Group Membership interval is 260 seconds
Last memeber query count is 2
Robustness Variable is 2
Interface eth-0-1 (Index 1)
MLD Inactive, Configured for Version 2 proxy-service
MLD host version 2
MLD global limit is 2000
MLD global limit states count is currently 0
MLD interface limit is 1000
MLD interface has 0 group-record states
MLD activity: 0 joins, 0 leaves
MLD query interval is 120 seconds
MLD querier timeout is 366 seconds
MLD max query response time is 12 seconds
Last member query response interval is 2000 milliseconds
Group Membership interval is 372 seconds
Last memeber query count is 3
Robustness Variable is 3
Отображение групп MLD:
Switch# show ipv6 mld groups
MLD Connected Group Membership
Group Address Interface Expires
ff0e::1234 eth-0-1 stopped