IGMP Proxy и мультикаст на MikroTik
Мультикаст (multicast) — технология передачи данных от одного источника множеству получателей без дублирования потоков. Вместо создания отдельного unicast-потока для каждого получателя (что перегрузит сеть) или broadcast-рассылки всем (что нагрузит все устройства) — мультикаст доставляет один поток только заинтересованным получателям. Типичные применения: IPTV, видеонаблюдение, корпоративные видеоконференции, обновление прошивок на сотнях устройств одновременно. В этом руководстве настроим IGMP Proxy для IPTV, IGMP Snooping на bridge, firewall для мультикаста и разберём типичные проблемы.
Описание
Что такое мультикаст
В IP-сетях существует три типа доставки пакетов:
| Тип | Описание | Пример |
|---|---|---|
| Unicast | Один отправитель → один получатель | Веб-сайт, SSH-сессия |
| Broadcast | Один отправитель → все в сегменте | ARP, DHCP Discover |
| Multicast | Один отправитель → группа получателей | IPTV, видеонаблюдение |
Мультикаст использует специальный диапазон IP-адресов: 224.0.0.0/4 (224.0.0.0 — 239.255.255.255). Каждый мультикаст-поток идентифицируется адресом группы (например, 239.1.1.1). Получатели присоединяются к группе и начинают получать трафик. Когда группа больше не нужна — получатель выходит из неё.
На канальном уровне (L2) мультикастовые IP-адреса маппятся на специальные MAC-адреса: 01:00:5E:xx:xx:xx. Коммутаторы без IGMP Snooping рассылают мультикаст как broadcast — на все порты. С IGMP Snooping — только на порты, где есть подписчики.
Протокол IGMP
IGMP (Internet Group Management Protocol) — протокол, через который хосты сообщают маршрутизатору о желании получать мультикаст-трафик.
IGMP v2 (наиболее распространённый для IPTV):
| Тип сообщения | Направление | Описание |
|---|---|---|
| Membership Query | Router → Hosts | Маршрутизатор спрашивает: «Кто подписан на какие группы?» |
| Membership Report | Host → Router | Хост отвечает: «Я хочу получать группу 239.1.1.1» |
| Leave Group | Host → Router | Хост сообщает: «Я больше не хочу группу 239.1.1.1» |
Процесс работы:
- Хост (TV-приставка) отправляет IGMP Report для группы 239.1.1.1
- Маршрутизатор запоминает: «На интерфейсе LAN есть подписчик на 239.1.1.1»
- Маршрутизатор запрашивает мультикаст-поток от upstream (провайдер)
- Провайдер начинает отправлять поток 239.1.1.1
- Маршрутизатор пересылает поток на LAN-интерфейс
- Хост переключает канал → отправляет Leave для 239.1.1.1 и Report для 239.1.1.2
- Маршрутизатор перестаёт запрашивать 239.1.1.1 (если нет других подписчиков) и начинает запрашивать 239.1.1.2
IGMP v2 vs IGMP v3
| Параметр | IGMP v2 | IGMP v3 |
|---|---|---|
| Подписка | На группу (239.x.x.x) | На группу + конкретный источник (SSM) |
| Leave | Покидает всю группу | Может выйти из конкретного источника |
| Фильтрация источника | Нет | Да (Include/Exclude режимы) |
| Совместимость | Широкая | Не все устройства поддерживают |
| Использование | IPTV большинства провайдеров | Крупные мультикаст-сети, SSM |
Большинство российских IPTV-провайдеров (Ростелеком, Дом.ру, Билайн) используют IGMP v2. IGMP v3 чаще применяется в крупных корпоративных сетях и у ISP, использующих Source-Specific Multicast (SSM).
IGMP Proxy
IGMP Proxy — самый простой механизм передачи мультикаста между интерфейсами. Он не является полноценным мультикаст-маршрутизатором (PIM), но отлично подходит для домашних и малых офисных сетей.
Принцип работы:
- Upstream (WAN) — интерфейс, обращённый к источнику мультикаста (провайдер)
- Downstream (LAN) — интерфейс(ы), обращённые к получателям (TV-приставки)
IGMP Proxy слушает IGMP-запросы от downstream-хостов и ретранслирует их upstream. Мультикаст-трафик, полученный от upstream, пересылается на downstream-интерфейсы, где есть подписчики.
IGMP Snooping
IGMP Snooping — функция на Bridge (L2-коммутаторе), которая анализирует IGMP-сообщения, проходящие через bridge, и ограничивает мультикаст-трафик только портами с подписчиками.
Без IGMP Snooping: мультикаст-поток IPTV (~5-15 Mbps на канал) рассылается на ВСЕ порты bridge. Если у вас 24-портовый коммутатор и один пользователь смотрит IPTV — все 24 порта получают этот трафик.
С IGMP Snooping: поток идёт только на порт, где подключена TV-приставка + порт, откуда пришёл поток (mrouter port). Остальные порты свободны от мультикаст-трафика.
PIM (Protocol Independent Multicast)
PIM — полноценный протокол мультикаст-маршрутизации для крупных сетей. В отличие от IGMP Proxy, PIM:
- Поддерживает множество upstream-источников
- Работает с динамическими протоколами маршрутизации
- Масштабируется на тысячи получателей
- Использует RP (Rendezvous Point) для обнаружения источников
PIM имеет несколько режимов:
| Режим | Описание | Применение |
|---|---|---|
| PIM-SM (Sparse Mode) | Мультикаст доставляется только по запросу | ISP, крупные сети |
| PIM-DM (Dense Mode) | Мультикаст рассылается везде, потом обрезается | Небольшие сети |
| PIM-SSM (Source-Specific) | Подписка на конкретный источник + группу | ISP IPTV |
RouterOS поддерживает PIM-SM в RouterOS 7.x. Для домашних и малых корпоративных сетей IGMP Proxy достаточен; PIM нужен при сложной топологии с несколькими маршрутизаторами.
Настройка
IGMP Proxy для IPTV
Типичная схема: провайдер отдаёт мультикаст на WAN, нужно доставить на LAN.
code[ISP IPTV] → WAN (ether1) → [MikroTik] → LAN (bridge-LAN) → [TV-приставка]
Шаг 1: Включение IGMP Proxy
[admin@MikroTik] >/routing/igmp-proxy/interface add interface=ether1 upstream=yes comment="WAN - source of multicast" add interface=bridge-LAN upstream=no comment="LAN - multicast subscribers"
upstream=yes— интерфейс, обращённый к источнику мультикаста (WAN / провайдер)upstream=no— downstream-интерфейс, где находятся получатели
Шаг 2: Настройка IGMP Proxy параметров
[admin@MikroTik] >/routing/igmp-proxy set query-interval=125 query-response-interval=100
query-interval=125— интервал отправки IGMP Query (в секундах). Стандартное значение — 125 секунд.query-response-interval=100— максимальное время ответа на Query (в десятых долях секунды). 100 = 10 секунд.
Шаг 3: Firewall для мультикаста
Необходимо разрешить IGMP и мультикаст-трафик в firewall:
[admin@MikroTik] ># Разрешить IGMP-протокол (IP protocol 2) /ip/firewall/filter add chain=input protocol=igmp action=accept \ comment="Allow IGMP" place-before=0 # Разрешить мультикаст-трафик на forward /ip/firewall/filter add chain=forward \ dst-address=224.0.0.0/4 action=accept \ comment="Allow multicast forward" place-before=0 # Разрешить UDP мультикаст-трафик /ip/firewall/filter add chain=input \ dst-address=224.0.0.0/4 action=accept \ comment="Allow multicast input" place-before=0
Важно: правила мультикаста должны быть расположены ДО правила drop all в соответствующих цепочках. Используйте place-before=0 для размещения в начале или укажите нужную позицию.
Шаг 4: NAT — исключение мультикаста
Если у вас настроен src-nat / masquerade на WAN — мультикаст-трафик НЕ должен проходить через NAT:
[admin@MikroTik] >/ip/firewall/nat add chain=srcnat \ dst-address=224.0.0.0/4 action=accept \ comment="Exclude multicast from NAT" place-before=0
IGMP Proxy с несколькими downstream-интерфейсами
Если мультикаст нужен на нескольких интерфейсах (LAN + Wi-Fi + гостевая сеть):
[admin@MikroTik] >/routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no add interface=bridge-guest upstream=no
Каждый downstream-интерфейс может иметь своих подписчиков. IGMP Proxy будет запрашивать upstream-группы, если хотя бы один downstream имеет подписчиков.
IGMP Snooping на Bridge
IGMP Snooping включается на bridge-интерфейсе:
[admin@MikroTik] >/interface/bridge set bridge-LAN igmp-snooping=yes \ multicast-querier=yes
Параметры:
igmp-snooping=yes— включить анализ IGMP-трафикаmulticast-querier=yes— bridge выступает как IGMP Querier (отправляет Membership Query). Включайте, если в сегменте нет другого IGMP Querier (маршрутизатора).
Дополнительные настройки:
[admin@MikroTik] >/interface/bridge set bridge-LAN \ igmp-snooping=yes \ multicast-querier=yes \ multicast-router=disabled \ last-member-query-interval=10 \ membership-interval=2600 \ querier-interval=2550 \ query-interval=1250 \ query-response-interval=100 \ startup-query-interval=312
Значения указаны в десятых долях секунды. Стандартные значения подходят для большинства сценариев.
IGMP Snooping: настройка mrouter port
Mrouter port — порт, на который bridge всегда пересылает мультикаст-трафик (порт к маршрутизатору):
[admin@MikroTik] >/interface/bridge/mdb add bridge=bridge-LAN group=0.0.0.0 port=ether1 vid=0
Или RouterOS автоматически определяет mrouter port по IGMP Query — порт, откуда приходят Query, считается mrouter.
Настройка PIM-SM (для крупных сетей)
PIM-SM в RouterOS 7:
[admin@MikroTik] ># Включение PIM на интерфейсах /routing/pimsm/interface add interface=ether1 comment="Upstream" add interface=bridge-LAN comment="Downstream" # Настройка RP (Rendezvous Point) /routing/pimsm/instance set default rp-address=10.0.0.1 # Или BSR (Bootstrap Router) для автоматического обнаружения RP /routing/pimsm/instance set default bsr-candidate=yes \ rp-candidate=yes rp-candidate-interface=loopback
PIM-SM требует, чтобы все маршрутизаторы в мультикаст-домене поддерживали PIM и имели unicast-маршруты друг к другу (через OSPF, BGP или статические маршруты).
Полный пример: IPTV от провайдера через MikroTik
Сценарий: Ростелеком, IPTV через мультикаст, PPPoE-подключение, VLAN 2 для IPTV.
[admin@MikroTik] ># VLAN для IPTV от провайдера (часто VLAN 2 или отдельный VLAN) /interface/vlan add name=vlan2-iptv interface=ether1 vlan-id=2 # IGMP Proxy /routing/igmp-proxy/interface add interface=vlan2-iptv upstream=yes add interface=bridge-LAN upstream=no # Firewall — разрешить IGMP и мультикаст /ip/firewall/filter add chain=input protocol=igmp action=accept \ comment="Allow IGMP for IPTV" place-before=0 add chain=input dst-address=224.0.0.0/4 action=accept \ comment="Allow multicast input" place-before=0 add chain=forward src-address=0.0.0.0/0 dst-address=224.0.0.0/4 \ action=accept comment="Allow multicast forward" place-before=0 # NAT — не трогать мультикаст /ip/firewall/nat add chain=srcnat dst-address=224.0.0.0/4 \ action=accept comment="Bypass NAT for multicast" place-before=0 # Если провайдер требует IP на VLAN для IPTV /ip/dhcp-client add interface=vlan2-iptv add-default-route=no \ use-peer-dns=no comment="DHCP for IPTV VLAN" # Маршрут для мультикаста через IPTV-интерфейс /ip/route add dst-address=224.0.0.0/4 gateway=vlan2-iptv \ comment="Multicast via IPTV VLAN"
IGMP Snooping с Hardware Offloading
На устройствах с MediaTek или Marvell чипом IGMP Snooping может выполняться аппаратно:
[admin@MikroTik] >/interface/bridge set bridge-LAN igmp-snooping=yes # Проверить HW offload /interface/bridge/port print detail
Если hw-offload=yes сохраняется при igmp-snooping=yes — snooping выполняется на switch-чипе. На Atheros-чипах включение IGMP Snooping может отключить HW offloading.
Проверка
Состояние IGMP Proxy
[admin@MikroTik] >/routing/igmp-proxy/interface print detail
Показывает upstream/downstream интерфейсы, статус, версию IGMP.
Активные мультикаст-группы
[admin@MikroTik] >/routing/igmp-proxy/mfc print
MFC (Multicast Forwarding Cache) показывает активные мультикаст-потоки:
group— адрес мультикаст-группыsource— адрес источника (0.0.0.0 для ASM, конкретный IP для SSM)iif— входящий интерфейс (upstream)oif— исходящие интерфейсы (downstream, где есть подписчики)
Пример:
codegroup=239.1.1.1 source=0.0.0.0 iif=ether1 oif=bridge-LAN group=239.1.1.5 source=0.0.0.0 iif=ether1 oif=bridge-LAN
Это означает, что два IPTV-канала (группы 239.1.1.1 и 239.1.1.5) активно передаются на LAN.
Подписчики IGMP
[admin@MikroTik] >/routing/igmp-proxy/interface print detail
В detail-выводе видны группы, на которые подписаны хосты на каждом интерфейсе.
IGMP Snooping таблица
[admin@MikroTik] >/interface/bridge/mdb print
MDB (Multicast Database) на bridge показывает, какие порты подписаны на какие группы. Это позволяет понять, на какие порты bridge отправляет конкретные мультикаст-потоки.
Мониторинг трафика мультикаста
[admin@MikroTik] >/tool/torch interface=bridge-LAN src-address=0.0.0.0/0 \ dst-address=224.0.0.0/4
Torch покажет реальные мультикаст-потоки, проходящие через интерфейс: группы, объём трафика, порты.
Проверка firewall-счётчиков
[admin@MikroTik] >/ip/firewall/filter print stats where comment~"multicast"
Если счётчики растут — мультикаст-трафик проходит через firewall rules. Если 0 — трафик блокируется раньше или IGMP Proxy не работает.
Типичные ошибки
IPTV не работает — мультикаст не проходит
Симптом: TV-приставка не показывает каналы. /routing/igmp-proxy/mfc print пуст.
Контрольный список:
-
IGMP Proxy настроен? Проверьте
/routing/igmp-proxy/interface print— должен быть upstream и downstream. -
Firewall блокирует IGMP? Протокол IGMP (protocol 2) должен быть разрешён в chain=input:
[admin@MikroTik] >/ip/firewall/filter print where protocol=igmp
- NAT не обходит мультикаст? Правило accept для dst-address=224.0.0.0/4 должно быть перед masquerade:
[admin@MikroTik] >/ip/firewall/nat print where dst-address=224.0.0.0/4
- Маршрут для мультикаста? Проверьте, есть ли маршрут:
[admin@MikroTik] >/ip/route print where dst-address=224.0.0.0/4
- Провайдер отдаёт мультикаст на правильном интерфейсе? Если IPTV идёт через отдельный VLAN — upstream должен указывать на VLAN-интерфейс, а не на физический порт.
Мультикаст flooding — трафик на всех портах
Симптом: IPTV работает, но мультикаст-трафик (5-15 Mbps на канал) идёт на ВСЕ порты bridge, даже где нет TV-приставок. Загрузка портов высокая.
Причина: IGMP Snooping не включён на bridge.
Решение:
[admin@MikroTik] >/interface/bridge set bridge-LAN igmp-snooping=yes
После включения IGMP Snooping мультикаст будет отправляться только на:
- Порт, где подключена TV-приставка (подписчик)
- Mrouter port (порт к маршрутизатору / upstream)
Переключение каналов с задержкой
Симптом: IPTV работает, но переключение каналов занимает 3-5 секунд (вместо <1 секунды).
Причины и решения:
- Slow Leave — маршрутизатор ждёт Query interval перед удалением группы. Уменьшите last-member-query-interval:
[admin@MikroTik] >/interface/bridge set bridge-LAN last-member-query-interval=5
-
IGMP v2 Leave latency — в IGMP v2 Leave обрабатывается медленнее, чем в v3. Это нормальное поведение — переключение в пределах 1-2 секунд считается нормой.
-
FastLeave на bridge порту — для портов с единственным подписчиком (одна TV-приставка):
[admin@MikroTik] >/interface/bridge/port set [find interface=ether4] fast-leave=yes
fast-leave=yes немедленно удаляет группу при получении Leave, не дожидаясь Query. Используйте только если на порту один подписчик.
IPTV через Wi-Fi не работает
Симптом: IPTV работает через кабель, но не через Wi-Fi.
Причины:
-
Wireless multicast — Wi-Fi по умолчанию передаёт мультикаст на минимальной скорости (1-6 Mbps). Для IPTV (5-15 Mbps на канал) этого недостаточно.
-
Multicast helper — в RouterOS можно конвертировать мультикаст в unicast для Wi-Fi клиентов:
[admin@MikroTik] >/interface/wireless set wlan1 multicast-helper=full
Или на новых устройствах с Wi-Fi 6:
[admin@MikroTik] >/interface/wifi set wifi1 configuration.multicast-enhance=enabled
- IGMP Snooping на wireless bridge — если Wi-Fi интерфейс в bridge, убедитесь что IGMP Snooping не блокирует мультикаст на wireless-порту.
Мультикаст от провайдера не приходит
Симптом: IGMP Proxy настроен, firewall разрешает, но /routing/igmp-proxy/mfc print пуст, TV-приставка не получает каналы.
Проверка:
- Убедитесь, что провайдер действительно отдаёт мультикаст:
[admin@MikroTik] >/tool/torch interface=ether1 dst-address=224.0.0.0/4
Если трафик есть — проблема в настройке MikroTik. Если нет — проблема у провайдера.
- Некоторые провайдеры требуют отправить IGMP Report на upstream-интерфейс для получения потока. Проверьте, что IGMP Proxy корректно отправляет Reports:
[admin@MikroTik] >/tool/sniffer set filter-interface=ether1 filter-protocol=igmp start # Включите TV-канал на приставке /tool/sniffer/packet print stop
- Если провайдер использует PPPoE — upstream для IGMP Proxy должен быть PPPoE-интерфейс, а не физический ether1.
Конфликт IGMP Proxy и PIM
Симптом: настроены и IGMP Proxy, и PIM — мультикаст не работает.
Причина: IGMP Proxy и PIM — взаимоисключающие механизмы. Нельзя использовать оба одновременно.
Решение: выберите один:
- IGMP Proxy — для простых сетей (дом, малый офис)
- PIM-SM — для крупных сетей с несколькими маршрутизаторами
[admin@MikroTik] ># Если нужен PIM — отключите IGMP Proxy /routing/igmp-proxy/interface remove [find] # Если нужен IGMP Proxy — отключите PIM /routing/pimsm/interface remove [find]
Высокая нагрузка CPU от мультикаста
Симптом: при активном IPTV (несколько каналов одновременно) CPU маршрутизатора загружен на 50-100%.
Причины:
-
Отсутствие FastTrack/FastPath — мультикаст-трафик не попадает в FastTrack, обрабатывается полным packet flow.
-
Software bridge — мультикаст коммутируется через CPU, а не switch-чип. Включите IGMP Snooping с HW offload.
-
Слишком много потоков — каждый IPTV-канал потребляет 5-15 Mbps. 10 каналов = 50-150 Mbps через CPU.
Решение:
- Используйте устройства с MediaTek или Marvell чипом для аппаратного IGMP Snooping
- Минимизируйте количество firewall rules для мультикаста
- На мощных устройствах (RB5009, CCR) проблема менее актуальна
Рекомендации
-
Для IPTV в домашней сети — IGMP Proxy + IGMP Snooping на bridge. Это самая простая и надёжная конфигурация.
-
Firewall rules — в начало цепочек — правила для IGMP и мультикаста должны быть первыми, чтобы трафик не блокировался.
-
IGMP Snooping обязателен — на любом bridge с мультикастом включайте snooping, иначе мультикаст будет flooding-ить все порты.
-
Отдельный VLAN для IPTV — если провайдер отдаёт IPTV в отдельном VLAN, используйте VLAN-интерфейс как upstream для IGMP Proxy.
-
fast-leave на access-портах — для портов с одной TV-приставкой включайте fast-leave для быстрого переключения каналов.
-
Мониторинг через Torch — используйте
/tool/torchс фильтром по 224.0.0.0/4 для диагностики мультикаст-трафика в реальном времени.
[ISP IPTV] → WAN (ether1) → [MikroTik] → LAN (bridge-LAN) → [TV-приставка]
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes comment="WAN - source of multicast"
add interface=bridge-LAN upstream=no comment="LAN - multicast subscribers"
/routing/igmp-proxy set query-interval=125 query-response-interval=100
# Разрешить IGMP-протокол (IP protocol 2)
/ip/firewall/filter add chain=input protocol=igmp action=accept \
comment="Allow IGMP" place-before=0
# Разрешить мультикаст-трафик на forward
/ip/firewall/filter add chain=forward \
dst-address=224.0.0.0/4 action=accept \
comment="Allow multicast forward" place-before=0
# Разрешить UDP мультикаст-трафик
/ip/firewall/filter add chain=input \
dst-address=224.0.0.0/4 action=accept \
comment="Allow multicast input" place-before=0
/ip/firewall/nat add chain=srcnat \
dst-address=224.0.0.0/4 action=accept \
comment="Exclude multicast from NAT" place-before=0
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
add interface=bridge-guest upstream=no
/interface/bridge set bridge-LAN igmp-snooping=yes \
multicast-querier=yes
/interface/bridge set bridge-LAN \
igmp-snooping=yes \
multicast-querier=yes \
multicast-router=disabled \
last-member-query-interval=10 \
membership-interval=2600 \
querier-interval=2550 \
query-interval=1250 \
query-response-interval=100 \
startup-query-interval=312
/interface/bridge/mdb
add bridge=bridge-LAN group=0.0.0.0 port=ether1 vid=0
# Включение PIM на интерфейсах
/routing/pimsm/interface
add interface=ether1 comment="Upstream"
add interface=bridge-LAN comment="Downstream"
# Настройка RP (Rendezvous Point)
/routing/pimsm/instance set default rp-address=10.0.0.1
# Или BSR (Bootstrap Router) для автоматического обнаружения RP
/routing/pimsm/instance set default bsr-candidate=yes \
rp-candidate=yes rp-candidate-interface=loopback
# VLAN для IPTV от провайдера (часто VLAN 2 или отдельный VLAN)
/interface/vlan add name=vlan2-iptv interface=ether1 vlan-id=2
# IGMP Proxy
/routing/igmp-proxy/interface
add interface=vlan2-iptv upstream=yes
add interface=bridge-LAN upstream=no
# Firewall — разрешить IGMP и мультикаст
/ip/firewall/filter
add chain=input protocol=igmp action=accept \
comment="Allow IGMP for IPTV" place-before=0
add chain=input dst-address=224.0.0.0/4 action=accept \
comment="Allow multicast input" place-before=0
add chain=forward src-address=0.0.0.0/0 dst-address=224.0.0.0/4 \
action=accept comment="Allow multicast forward" place-before=0
# NAT — не трогать мультикаст
/ip/firewall/nat add chain=srcnat dst-address=224.0.0.0/4 \
action=accept comment="Bypass NAT for multicast" place-before=0
# Если провайдер требует IP на VLAN для IPTV
/ip/dhcp-client add interface=vlan2-iptv add-default-route=no \
use-peer-dns=no comment="DHCP for IPTV VLAN"
# Маршрут для мультикаста через IPTV-интерфейс
/ip/route add dst-address=224.0.0.0/4 gateway=vlan2-iptv \
comment="Multicast via IPTV VLAN"
/interface/bridge set bridge-LAN igmp-snooping=yes
# Проверить HW offload
/interface/bridge/port print detail
/routing/igmp-proxy/interface print detail
/routing/igmp-proxy/mfc print
group=239.1.1.1 source=0.0.0.0 iif=ether1 oif=bridge-LAN
group=239.1.1.5 source=0.0.0.0 iif=ether1 oif=bridge-LAN
/routing/igmp-proxy/interface print detail
/interface/bridge/mdb print
/tool/torch interface=bridge-LAN src-address=0.0.0.0/0 \
dst-address=224.0.0.0/4
/ip/firewall/filter print stats where comment~"multicast"
/ip/firewall/filter print where protocol=igmp
/ip/firewall/nat print where dst-address=224.0.0.0/4
/ip/route print where dst-address=224.0.0.0/4
/interface/bridge set bridge-LAN igmp-snooping=yes
/interface/bridge set bridge-LAN last-member-query-interval=5
/interface/bridge/port set [find interface=ether4] fast-leave=yes
/interface/wireless set wlan1 multicast-helper=full
/interface/wifi set wifi1 configuration.multicast-enhance=enabled
/tool/torch interface=ether1 dst-address=224.0.0.0/4
/tool/sniffer
set filter-interface=ether1 filter-protocol=igmp
start
# Включите TV-канал на приставке
/tool/sniffer/packet print
stop
# Если нужен PIM — отключите IGMP Proxy
/routing/igmp-proxy/interface remove [find]
# Если нужен IGMP Proxy — отключите PIM
/routing/pimsm/interface remove [find]