6.2. Настройка IGMP
Назначение
Протокол управления группами Интернета (IGMP) используется между сетевыми узлами в локальной сети и маршрутизаторами (и многоуровневыми коммутаторами) для отслеживания мультикаст-групп, членами которых являются вышеуказанные сетевые узлы.
Описание
Для участия в IP-рассылке на мультикаст-группы, сетевые узлы, маршрутизаторы и многоуровневые коммутаторы должны иметь протокол IGMP.
Этот протокол определяет роли “Querier” и “Host”:
Querier - это сетевое устройство, которое отправляет запросы на получение информации, какие сетевые устройства являются членами мультикаст-группы.
Host - это приемник, который отправляет ответы на запросы, чтобы проинформировать Querier о своей принадлежности.
Группа устройств Querier и Host, получающих многоадресные потоки данных от одного источника, называется мультикаст-группой. Querier и Host используют сообщения IGMP для присоединения к мульткаст-группам и выхода из них. Любой сетевой узел, независимо от того, является ли он членом группы, может отправлять групповые сообщения. Однако получают групповые сообщения только члены группы. Членство в мультикаст-группе является динамическим: сетевые узлы могут присоединяться и покидать ее в любое время. Нет никаких ограничений на местоположение или количество членов мультикаст-группы.
Host может быть членом более чем одной мультикаст-группы одновременно. Активность мультикаст-группы и количество ее членов могут варьироваться от группы к группе и от времени к времени. Мультикаст-группа может быть активной в течение длительного времени, а может быть очень недолговечной. Членство в группе может постоянно меняться. Группа, в которой есть члены, может не проявлять никакой активности.
IGMP-пакеты отправляются с использованием этих адресов групп многоадресной рассылки:
Общие IGMP-запросы направляются по адресу
224.0.0.1
(все системы в подсети).IGMP-запросы для конкретных групп направляются на IP-адрес группы.
IGMP-отчеты об участии в IGMP-группе направляются на IP-адрес группы.
IGMP-сообщения об уходе версии 2 направляются на адрес
224.0.0.2
(все мультикаст-маршрутизаторы в подсети). В некоторых старых стеках сообщения об уходе могут направляться на групповой IP-адрес.
Примечание
Для получения более подробной информации о протоколе IGMP см. документацию RFC 1112,RFC 2236,RFC 3376.
Настройка
Не существует команды для включения IGMP на коммутаторе. IGMP сочетается с PIM-SM, и будет включен на порте после включения на нем PIM-SM и наоборот.
Коммутатор поддерживает добавление записей о IGMP-группах путем изучения IGMP-пакетов или путем ручной настройки.
ВНИМАНИЕ!
Для работы IGMP на коммутаторе должна быть включена мультикаст-маршрутизация.
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Включение мультикаст-маршрутизации
Switch(config)# ip multicast-routing
Шаг 3: Настройка порта
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.10.10.10/24
Switch(config-if)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.10.11.10/24
Switch(config-if)# exit
Шаг 4: Включение PIM-SM на порте
Switch(config)# interface eth-0-1
Switch(config-if)# ip pim sparse-mode
Switch(config-if)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# ip pim sparse-mode
Switch(config-if)# exit
Шаг 5: Настройка IGMP
Switch(config)# interface eth-0-1
Switch(config-if)# ip igmp version 2
Switch(config-if)# ip igmp query-interval 120
Switch(config-if)# ip igmp query-max-response-time 12
Switch(config-if)# ip igmp robustness-variable 3
Switch(config-if)# ip igmp last-member-query-count 3
Switch(config-if)# ip igmp last-member-query-interval 2000
Switch(config-if)# exit
Шаг 6: Установка максимального количества IGMP-групп (необязательно)
Максимальное количество IGMP-групп может быть ограничено глобально или отдельно для каждого порта:
Switch(config)# ip igmp limit 2000
Switch(config)# interface eth-0-1
Switch(config-if)# ip igmp limit 1000
Шаг 7: Настройка статической IGMP-группы
Switch(config-if)# ip igmp static-group 228.1.1.1
Switch(config-if)# exit
Шаг 8: Установка IGMP-прокси (необязательно)
Switch(config)# interface eth-0-1
Switch(config-if)# ip igmp proxy-service
Switch(config-if)# exit
Switch(config)# interface eth-0-2
Switch(config-if)# ip igmp mroute-proxy eth-0-1
Switch(config-if)# exit
Шаг 9: Выход из режима “Global config”
Switch(config)# end
Шаг 10: Проверка
Вывод информации о интерфейсах с включенным IGMP:
Switch# show ip igmp interface
Interface eth-0-1 (Index 1)
IGMP Inactive, Version 2 (default) proxy-service
IGMP host version 2
IGMP global limit is 2000
IGMP global limit states count is currently 0
IGMP interface limit is 1000
IGMP interface has 0 group-record states
IGMP activity: 0 joins, 0 leaves
IGMP query interval is 120 seconds
IGMP querier timeout is 366 seconds
IGMP 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
Interface eth-0-2 (Index 2)
IGMP Inactive, Version 2 (default)
IGMP mroute-proxy interface is eth-0-1
IGMP global limit is 2000
IGMP global limit states count is currently 0
IGMP interface limit is 16384
IGMP interface has 0 group-record states
IGMP activity: 0 joins, 0 leaves
IGMP query interval is 125 seconds
IGMP querier timeout is 255 seconds
IGMP 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
Вывод информации о IGMP-группах:
Switch# show ip igmp groups
IGMP Connected Group Membership
Group Address Interface Uptime Expires Last Reporter
228.1.1.1 eth-0-1 00:00:05 stopped -