Перейти к содержанию

IGMP Snooping

IGMP Snooping — это механизм, который позволяет коммутатору анализировать IGMP-трафик между хостами и маршрутизатором, чтобы рассылать multicast-трафик только тем устройствам, которые ожидают эти кадры, предусматривая групповую регистрацию.

Для прослушивания IGMP система должна работать в режиме маршрутизатора, в котором определены следующие две роли:

  • Querier - передает запросы и отвечает за инициирование определения мультикаст адресов;
  • Non-querier - устройства, не выбранные как querier в одном домене широковещательной рассылки (например VLAN).

IPv4 querier address определяется как исходный адрес в IP-заголовке, используемый для выборов querier устройства. Если адрес querier устройства не задан, система использует IPv4-адрес управления IP-интерфейса, связанного с этим VLAN. Если IPv4-адрес управления не задан, то используется первый доступный IPv4-адрес управления. В противном случае используется IP-адрес по умолчанию (192.0.2.1).

Note

По умолчанию IGMP Snooping включен.

Ограничения:

  • Используя таблицу MAC-адресов для пересылки multicast, возможно, что два разных групповых адреса IPMC будут соответствовать одной и той же записи пересылки MAC-адресов;
  • Рассылка незарегистрированного трафика при заполнении таблицы. При использовании IGMP Snooping, для борьбы с этой ситуацией используется настройка блокировки незарегистрированного трафика, которая отбрасывает неизвестный multicast трафик. Для включения этой настройки используется команда no ip igmp unknown-flooding. Когда IGMP Snooping отключен, данная функция всегда включена, независимо от настройки.

Назначение применяемой команды/конфигурации

Команды в режиме глобальной конфигурации

1
2
3
4
5
6
7
ip igmp snooping
ip igmp ssm-range 
ip igmp unknown-flooding

no ip igmp snooping
no ip igmp ssm-range 
no ip igmp unknown-flooding

Команды в режиме настройки интерфейса

1
2
3
4
5
6
7
8
9
ip igmp snooping filter 
ip igmp snooping immediate-leave
ip igmp snooping max-groups <1-10>
ip igmp snooping mrouter

no ip igmp snooping filter 
no ip igmp snooping immediate-leave
no ip igmp snooping max-groups <1-10>
no ip igmp snooping mrouter

Команды в режиме настройки интерфейса (VLAN)

ip igmp snooping compatibility { auto | v1 | v2 | v3 }
ip igmp snooping last-member-query-interval <1-25>
ip igmp snooping priority <0-7>
ip igmp snooping querier address 
ip igmp snooping querier election
ip igmp snooping query-interval <1-31744>
ip igmp snooping query-max-response-time <1-25>
ip igmp snooping robustness-variable <1-7>
ip igmp snooping unsolicited-report-interval <1-25>

no ip igmp snooping compatibility
no ip igmp snooping last-member-query-interval
no ip igmp snooping priority
no ip igmp snooping querier { address | election }
no ip igmp snooping query-interval
no ip igmp snooping query-max-response-time
no ip igmp snooping robustness-variable
no ip igmp snooping unsolicited-report-interval

Команды отображения информации

1
2
3
4
5
6
7
8
show ip igmp snooping detail group-database [interface | sfm-information | vlan]
show ip igmp snooping detail vlan 
show ip igmp snooping group-database detail [vlan]
show ip igmp snooping group-database interface { * | GigabitEthernet | 25GigabitEthernet }
show ip igmp snooping group-database sfm-information [detail | interface | vlan]
show ip igmp snooping group-database vlan 
show ip igmp snooping mrouter detail
show ip igmp snooping vlan <1-4094> [detail | group-database]

Команды очистки

clear ip igmp snooping statistics
clear ip igmp snooping vlan <vlan_list> statistics

Пример конфигурирования

Схема соединений

Схема соединений для примера настройки IGMP Snooping

Настройка

Шаг 1. Настройка запрета рассылки неизвестного мультикаст трафика

# configure terminal
(config)# no ip igmp unknown-flooding

Шаг 2. Настройка интерфейсов коммутатора

1
2
3
4
5
6
7
(config)# interface GigabitEthernet 1/10
(config-if)# switchport access vlan 27
(config-if)# spanning-tree edge

(config)# interface GigabitEthernet 1/20-21
(config-if)# switchport access vlan 27
(config-if)# spanning-tree edge

Шаг 3. Настройка SVI

1
2
3
4
5
(config)# interface vlan 27
(config-if-vlan)# ip address 10.50.52.10 255.255.255.0
(config-if-vlan)# ip igmp snooping
(config-if-vlan)# ip igmp snooping querier address 10.50.52.10
(config-if-vlan)# ip igmp snooping compatibility v2

Полный вывод выполненных конфигураций

configure terminal
!
no ip igmp unknown-flooding
!
interface GigabitEthernet 1/10
 switchport access vlan 27
 spanning-tree edge
!
interface GigabitEthernet 1/20
 switchport access vlan 27
 spanning-tree edge
!
interface GigabitEthernet 1/21
 switchport access vlan 27
 spanning-tree edge
!
interface vlan 27
 ip address 10.50.52.10 255.255.255.0
 ip igmp snooping
 ip igmp snooping querier address 10.50.52.10
 ip igmp snooping compatibility v2

Изучение состояния устройства

Просмотр конфигурации

# show ip igmp snooping detail vlan 27
IGMP Snooping is enabled to start snooping IGMP control plane.
Multicast streams destined to unregistered IGMP groups will be blocking.
Switch-1 IGMP Interface Status
IGMP snooping VLAN 27 interface is enabled.
Querier status is ACTIVE (Administrative Control: Join Querier-Election)
Querier Up time: 3644 seconds; Query Interval: 12 seconds
Querier address is set to 10.50.52.10
Active IGMP Querier Address is 10.50.52.10
PRI:0 / RV:2 / QI:125 / QRI:100 / LMQI:10 / URI:1
RX IGMP Query:0 V1Join:0 V2Join:8 V3Join:0 V2Leave:3
TX IGMP Query:37 / (Source) Specific Query:6
IGMP RX Errors:31; Group Registration Count:1
Compatibility:Forced IGMPv2 / Querier Version:Version 2 / Host Version:Version 2


# show ip igmp snooping detail group-database
IGMP Snooping is enabled to start snooping IGMP control plane.
Multicast streams destined to unregistered IGMP groups will be blocking.
Groups in range 232.0.0.0/8 follow IGMP SSM registration service model.

IGMP Group Database
Switch-1 IGMP Group Table
239.1.1.1 is registered on VLAN 27
Port Members: Gi 1/21
Hardware Switch: Yes
Switch-1 IGMP Group Count: 1