13.2. Настройка MLD
Назначение
MLD (Mulitcast Listener Discovery) используется в локальной сети между сетевыми узлами и маршрутизаторами (или L3-коммутаторами) для отслеживания многоадресных групп, членами которых являются эти сетевые узлы.
Описание
Протокол MLD определяет роли «Query» и «Host»:
Query - это сетевое устройство, отправляющее запросы на получение информации о том, какие сетевые устройства являются членами определенной многоадресной группы.
Host - это приемник отправляющий отчеты (сообщения MLD Report) о своей принадлежности в ответ на запросы.
Набор объектов «Query» и «Host», получающих потоки мультикаст IPv6-данных из одного источника, называется многоадресной группой IPv6. Объекты «Query» и «Host», используют MLD-сообщения для присоединения к многоадресным группам IPv6 (MLD Report) и выхода из них (MLD Leave). Любой сетевой узел, независимо от того, является ли он членом группы, может отправлять сообщения в группу. Однако, получают сообщения только члены группы. Членство в многоадресной группе является динамическим – сетевые узлы могут присоединяться и покидать ее в любое время. Нет никаких ограничений на местоположение или количество членов многоадресной группы.
Host может быть членом более чем одной многоадресной группы одновременно. Активность многоадресной группы и количество ее членов может варьироваться. Многоадресная группа может быть активной в течение длительного времени, а может быть очень недолговечной. Членство в группе может постоянно меняться. Группа, в которой есть члены, может не проявлять никакой активности.
MLD-пакеты отправляются с использованием следующих адресов многоадресных групп IPv6:
Общие MLD-запросы направляются по адресу
ff02::1
(все системы в подсети).MLD-запросы для конкретной группы направляются на групповой IPv6-адрес.
Отчеты о членстве в MLD-группе направляются на групповой IPv6-адрес.
MLD-сообщения MLD Leave версии 1 (MLDv1) направляются на адрес
ff02::2
(все многоадресные маршрутизаторы в подсети). В некоторых старых стеках IPv6 сообщения MLD Leave могут быть направлены на групповой IPv6-адрес, а не на адресff02::2
.
Для получения более подробной информации о работе протокола MLD см. документацию RFC 2710 и RFC 3810.
Настройка
Не существует команды для включения MLD. Работа MLD всегда происходит совместно с PIMv6-SM. Когда на интерфейсе включен PIMv6-SM, MLD на этом интерфейсе будет включен автоматически, и наоборот.
Примечание
Для работы MLD необходимо, чтобы многоадресная IPv6-маршрутизация была включена на коммутаторе.
Коммутатор поддерживает создание записей MLD-групп путем изучения MLD-пакетов или путем настройки статических MLD-групп администратором.
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Включение IPv6 и многоадресной IPv6-маршрутизации на коммутаторе
Switch(config)# ipv6 enable
Switch(config)# ipv6 multicast-routing
Шаг 3: Настройка порта
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
Установка максимального количества MLD-групп для коммутатора:
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: Установка прокси-сервера IPv6 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: Выход из режима “Global config”
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