IPTV на MikroTik — настройка для всех провайдеров
IPTV (Internet Protocol Television) — технология доставки телевизионного контента через IP-сети. Большинство российских провайдеров предоставляют IPTV как дополнительную услугу, и при замене штатного роутера на MikroTik необходимо правильно настроить прохождение multicast-трафика. В этом руководстве разберём принципы работы IPTV, настройку IGMP Proxy, firewall для multicast, особенности каждого провайдера и диагностику проблем.
Инструкция актуальна для RouterOS 7.20+ и подходит для всех моделей MikroTik с RouterOS 7.
Описание: как работает IPTV
Multicast
Обычный интернет-трафик — unicast: один источник отправляет данные одному получателю. IPTV использует multicast — один источник (сервер провайдера) отправляет поток данных группе получателей одновременно. Это эффективно: один ТВ-канал — один поток, независимо от количества зрителей.
Multicast-адреса находятся в диапазоне 224.0.0.0/4 (224.0.0.0 — 239.255.255.255). Каждый ТВ-канал — это отдельный multicast-адрес (например, 239.1.1.10 — Первый канал, 239.1.1.20 — Россия 1).
IGMP
IGMP (Internet Group Management Protocol) — протокол, который управляет подписками на multicast-группы:
- ТВ-приставка хочет смотреть канал → отправляет IGMP Join (подписка на группу)
- Роутер передаёт запрос провайдеру → провайдер начинает отправлять поток
- ТВ-приставка переключает канал → отправляет IGMP Leave (отписка от старой группы) + IGMP Join (подписка на новую)
- Провайдер прекращает старый поток и начинает новый
Версии IGMP:
- IGMPv2 — используется большинством провайдеров
- IGMPv3 — поддерживает фильтрацию источников (SSM), используется реже
IGMP Proxy на MikroTik
MikroTik не является полноценным multicast-маршрутизатором, но поддерживает IGMP Proxy — механизм пересылки IGMP-запросов между интерфейсами:
- Upstream — интерфейс в сторону провайдера (WAN)
- Downstream — интерфейсы в сторону ТВ-приставки (LAN, bridge, отдельный порт)
IGMP Proxy принимает IGMP Join от приставки на downstream-интерфейсе и пересылает на upstream. Multicast-поток от провайдера приходит на upstream и пересылается на downstream.
UDP-потоки
Собственно видео и звук ТВ-каналов передаются по протоколу UDP на multicast-адреса. Битрейт одного SD-канала — 3-5 Мбит/с, HD-канала — 8-15 Мбит/с. При просмотре нескольких каналов одновременно (несколько приставок) трафик суммируется.
Настройка IGMP Proxy
Базовая настройка
[admin@MikroTik] >/routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no
Здесь:
ether1— WAN-интерфейс (в сторону провайдера)bridge-LAN— LAN-интерфейс (в сторону приставки)upstream=yes— направление к источнику multicastupstream=no— направление к получателям (downstream)
Для PPPoE-провайдеров
У некоторых провайдеров multicast идёт через PPPoE-туннель, у других — мимо него (по нижнему интерфейсу). Это зависит от конфигурации провайдера:
[admin@MikroTik] ># Вариант 1: multicast через физический интерфейс (чаще) /routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no # Вариант 2: multicast через PPPoE (реже) /routing/igmp-proxy/interface add interface=pppoe-out1 upstream=yes add interface=bridge-LAN upstream=no
Если не уверены — попробуйте оба варианта. Начните с варианта 1 (физический интерфейс).
Для VLAN-схем
Если IPTV идёт через отдельный VLAN:
[admin@MikroTik] >/interface/vlan add name=vlan-iptv vlan-id=20 interface=ether1 /routing/igmp-proxy/interface add interface=vlan-iptv upstream=yes add interface=bridge-LAN upstream=no
Отдельный порт для приставки
Для выделения отдельного Ethernet-порта под ТВ-приставку:
[admin@MikroTik] ># Не добавляйте ether5 в bridge-LAN! /routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no add interface=ether5 upstream=no
Приставка на ether5 получит multicast-трафик напрямую.
Firewall для multicast
Multicast-трафик по умолчанию блокируется стандартным firewall MikroTik. Необходимо добавить разрешающие правила до запрещающих.
Полный набор правил
[admin@MikroTik] >/ip/firewall/filter add chain=input protocol=igmp action=accept \ place-before=0 comment="IPTV: Allow IGMP input" add chain=input dst-address=224.0.0.0/4 action=accept \ place-before=1 comment="IPTV: Allow Multicast input" add chain=forward protocol=igmp action=accept \ place-before=0 comment="IPTV: Forward IGMP" add chain=forward protocol=udp dst-address=224.0.0.0/4 action=accept \ place-before=1 comment="IPTV: Forward Multicast UDP" add chain=forward dst-address=224.0.0.0/4 action=accept \ place-before=2 comment="IPTV: Forward Multicast all"
Проверка порядка правил
Правила IPTV должны стоять до правил drop и reject:
[admin@MikroTik] >/ip/firewall/filter print
Если правила IPTV стоят после drop — multicast будет заблокирован.
IGMP Snooping
IGMP Snooping — механизм оптимизации multicast на bridge. Без него multicast-трафик отправляется на все порты bridge (как broadcast). С IGMP Snooping — только на порты, где есть подписчики.
[admin@MikroTik] >/interface/bridge set bridge-LAN igmp-snooping=yes
Это снижает нагрузку на сеть и повышает качество IPTV, особенно когда в bridge несколько устройств, а приставка — только одна.
Проверка работы IGMP Snooping:
[admin@MikroTik] >/interface/bridge/mdb print
Таблица MDB (Multicast Database) покажет, на каких портах bridge есть подписчики multicast-групп.
Таблица настроек IPTV по провайдерам
| Провайдер | Тип подключения | VLAN IPTV | Upstream IGMP Proxy | DHCP для IPTV VLAN | Примечание |
|---|---|---|---|---|---|
| Ростелеком | PPPoE | VLAN 20 (регионально) | ether1 или vlan-iptv | Да (регионально) | VLAN зависит от региона |
| Билайн | L2TP | Нет (10.0.0.0/8) | ether1 | Нет | Multicast через локальную сеть Билайн |
| Дом.ру | PPPoE / IPoE | Нет (обычно) | ether1 или pppoe-out1 | Нет | Попробуйте оба upstream |
| МТС | IPoE / PPPoE | VLAN (регионально) | ether1 или vlan-iptv | Регионально | Уточните VLAN в техподдержке |
| ТТК | PPPoE | VLAN 10/20 (регионально) | ether1 или vlan-iptv | Да | Похоже на Ростелеком |
| Башинформсвязь | PPPoE | VLAN 20 | vlan-iptv | Да | Стандартная VLAN-схема |
| ЛанТА | IPoE | Нет | ether1 | Нет | Простая настройка |
| NetByNet | IPoE | Нет | ether1 | Нет | Простая настройка |
Важно: VLAN ID и настройки могут различаться даже в пределах одного провайдера в разных регионах. Всегда уточняйте у техподдержки конкретные значения.
Подробная настройка по провайдерам
Ростелеком
Наиболее распространённая схема — IPTV через отдельный VLAN:
[admin@MikroTik] ># VLAN для IPTV (уточните VLAN ID у провайдера!) /interface/vlan add name=vlan-iptv vlan-id=20 interface=ether1 # DHCP на VLAN IPTV (в некоторых регионах) /ip/dhcp-client add interface=vlan-iptv add-default-route=no disabled=no # Маршрут для multicast /ip/route add dst-address=224.0.0.0/4 gateway=vlan-iptv # IGMP Proxy /routing/igmp-proxy/interface add interface=vlan-iptv upstream=yes add interface=bridge-LAN upstream=no
Билайн
IPTV идёт через локальную сеть Билайн (10.0.0.0/8), а не через L2TP-туннель:
[admin@MikroTik] ># Маршруты для multicast и локальной сети Билайн /ip/route add dst-address=224.0.0.0/4 gateway=<dhcp-gateway> comment="Multicast" add dst-address=10.0.0.0/8 gateway=<dhcp-gateway> comment="Beeline local" # IGMP Proxy /routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no
ТТК
Аналогично Ростелекому, часто с VLAN:
[admin@MikroTik] ># VLAN (уточните у ТТК) /interface/vlan add name=vlan-iptv vlan-id=20 interface=ether1 # IGMP Proxy /routing/igmp-proxy/interface add interface=vlan-iptv upstream=yes add interface=bridge-LAN upstream=no
Простые провайдеры (IPoE без VLAN)
Для провайдеров с простой схемой (IPoE, без VLAN для IPTV):
[admin@MikroTik] ># IGMP Proxy /routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no # Firewall /ip/firewall/filter add chain=input protocol=igmp action=accept place-before=0 add chain=forward protocol=igmp action=accept place-before=0 add chain=forward dst-address=224.0.0.0/4 action=accept place-before=1
IPTV по Wi-Fi
Теоретически IPTV может работать по Wi-Fi, но на практике это крайне нестабильно.
Проблемы IPTV по Wi-Fi
- Multicast по Wi-Fi = broadcast — Wi-Fi не поддерживает настоящий multicast. Multicast-пакеты передаются на минимальной скорости (basic rate, обычно 1-6 Мбит/с), что недостаточно для HD-канала (8-15 Мбит/с)
- Нет подтверждения доставки — в отличие от unicast, multicast по Wi-Fi не использует ACK. Потерянные пакеты не повторяются
- Интерференция — любые помехи приводят к артефактам на экране
- Нагрузка на всех клиентов — multicast-поток занимает эфирное время всех Wi-Fi-клиентов
Если всё-таки нужно IPTV по Wi-Fi
Используйте IGMP Proxy to Unicast — на стороне приставки или приложения. Некоторые IPTV-плееры (VLC, IPTV Pro) могут работать через unicast HTTP-стрим вместо multicast.
Альтернативный вариант — UDP Proxy (udpxy). Установите udpxy на MikroTik (через Container) или на отдельном сервере. Udpxy конвертирует multicast в unicast HTTP:
[admin@MikroTik] ># Схема с udpxy: Multicast (провайдер) → udpxy → HTTP unicast → Wi-Fi → IPTV-плеер
Для устройств Android/iOS используйте IPTV-плееры с поддержкой HTTP-потоков (OTT Player, IPTV Pro, VLC).
Рекомендация
Подключайте ТВ-приставку только по кабелю. Если нет возможности — используйте udpxy или powerline-адаптеры (Ethernet через электропроводку).
Проверка работоспособности
Проверка IGMP Proxy
[admin@MikroTik] >/routing/igmp-proxy/interface print
Убедитесь, что:
- Есть один upstream-интерфейс
- Есть хотя бы один downstream-интерфейс
- Интерфейсы активны (running)
Проверка multicast-трафика через Torch
Torch — встроенный анализатор трафика MikroTik. Это лучший инструмент для диагностики IPTV:
[admin@MikroTik] ># Multicast на WAN (от провайдера) /tool/torch interface=ether1 src-address=0.0.0.0/0 dst-address=224.0.0.0/4 # Multicast на LAN (к приставке) /tool/torch interface=bridge-LAN src-address=0.0.0.0/0 dst-address=224.0.0.0/4
При включённой приставке и выбранном канале вы должны увидеть UDP-потоки:
Dst.Address: 239.x.x.x (multicast-адрес канала)Tx Rate: 3-15 Мбит/с (зависит от качества канала)
Если на WAN трафик есть, а на LAN — нет, проблема в настройке IGMP Proxy или firewall.
Проверка IGMP Snooping (MDB)
[admin@MikroTik] >/interface/bridge/mdb print
Таблица покажет, на каких портах bridge какие multicast-группы активны. Если таблица пуста при включённой приставке — IGMP Snooping не работает или приставка не отправляет IGMP Join.
Проверка Firewall
[admin@MikroTik] ># Счётчики правил IGMP/Multicast /ip/firewall/filter print stats where comment~"IPTV"
Если счётчики (bytes, packets) растут — правила работают. Если нули — трафик не доходит до правил.
Проверка логов
[admin@MikroTik] >/system/logging add topics=igmp-proxy action=memory /log print where topics~"igmp"
Логи покажут IGMP Join/Leave-запросы и ошибки.
Типичные ошибки и решения
Ошибка: ТВ-приставка не получает поток
Симптом: Чёрный экран, «Нет сигнала», бесконечная загрузка.
Диагностика пошагово:
- Проверьте IGMP Proxy:
[admin@MikroTik] >/routing/igmp-proxy/interface print
Должен быть upstream + downstream.
- Проверьте firewall:
[admin@MikroTik] >/ip/firewall/filter print where action=accept
Правила для IGMP и multicast должны стоять до drop.
- Проверьте multicast на WAN через Torch:
[admin@MikroTik] >/tool/torch interface=ether1 dst-address=224.0.0.0/4
Если трафика нет — проблема на стороне провайдера или неправильный upstream.
- Проверьте multicast на LAN:
[admin@MikroTik] >/tool/torch interface=bridge-LAN dst-address=224.0.0.0/4
Если на WAN есть, а на LAN нет — проблема в IGMP Proxy или firewall.
- Проверьте, что приставка в правильной сети:
[admin@MikroTik] >/ip/arp print where interface=bridge-LAN
Приставка должна быть в списке ARP.
Ошибка: Каналы зависают и рассыпаются
Симптом: Изображение периодически замирает, появляются квадратные артефакты, звук прерывается.
Причины и решения:
- IGMP Snooping — включите, чтобы multicast не флудил все порты:
[admin@MikroTik] >/interface/bridge set bridge-LAN igmp-snooping=yes
- Перегрузка CPU — проверьте загрузку процессора:
[admin@MikroTik] >/system/resource print
Если CPU > 80%, рассмотрите:
-
Отключение лишних firewall-правил
-
Более мощную модель MikroTik
-
Fasttrack для не-multicast трафика
-
Потери пакетов на WAN — проверьте качество линии:
[admin@MikroTik] >/ping <gateway-провайдера> count=100
При потерях > 1% обратитесь к провайдеру.
- Недостаточная пропускная способность — 10 HD-каналов = ~100-150 Мбит/с. На тарифах с низкой скоростью может не хватать полосы
Ошибка: Медленное переключение каналов
Симптом: При переключении канала задержка 5-10 секунд.
Причины и решения:
- IGMPv2 → IGMPv3 — IGMPv3 быстрее переключает каналы. Но провайдер должен поддерживать IGMPv3
- Быстрый leave — некоторые провайдеры поддерживают fast leave (немедленная отписка):
[admin@MikroTik] >/interface/bridge set bridge-LAN igmp-snooping=yes fast-leave=yes
Внимание: fast-leave может вызвать проблемы, если несколько приставок на одном bridge. Используйте только при одной приставке.
- Нормальное поведение — задержка 2-3 секунды при переключении — это нормально для IPTV. Это время на IGMP Leave + IGMP Join + начало нового потока
Ошибка: IPTV работает на приставке, но не работает на ПК/телефоне
Симптом: STB показывает каналы, а VLC на компьютере или IPTV-приложение на телефоне — нет.
Причины и решения:
- Multicast не доходит до устройства — если устройство по Wi-Fi, multicast по Wi-Fi работает плохо (см. раздел «IPTV по Wi-Fi»)
- Firewall на компьютере — Windows Firewall может блокировать multicast. Временно отключите для проверки
- Нужен udpxy — для мобильных устройств и Wi-Fi используйте udpxy для конвертации multicast → unicast HTTP
Ошибка: IPTV перестало работать после обновления RouterOS
Симптом: После обновления RouterOS IPTV больше не работает.
Решение: Проверьте, не изменился ли синтаксис команд. В RouterOS 7 IGMP Proxy настраивается через /routing/igmp-proxy/, а не через /routing/igmp-proxy (без слеша). Также проверьте, что пакет routing установлен:
[admin@MikroTik] >/system/package print where name=routing
Если пакет отсутствует, IGMP Proxy не будет работать. Установите пакет из extra packages.
Ошибка: Multicast шторм (broadcast storm)
Симптом: Все устройства в сети тормозят, высокая загрузка CPU, трафик на bridge превышает норму.
Причина: Multicast-трафик без IGMP Snooping рассылается на все порты bridge как broadcast.
Решение:
[admin@MikroTik] ># Включите IGMP Snooping /interface/bridge set bridge-LAN igmp-snooping=yes # Проверьте, что IGMP Proxy работает /routing/igmp-proxy/interface print
Продвинутая настройка
Несколько ТВ-приставок
Если у вас несколько приставок на разных портах:
[admin@MikroTik] >/routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no add interface=ether4 upstream=no add interface=ether5 upstream=no
Или добавьте все порты с приставками в один bridge:
[admin@MikroTik] >/interface/bridge add name=bridge-IPTV igmp-snooping=yes /interface/bridge/port add bridge=bridge-IPTV interface=ether4 add bridge=bridge-IPTV interface=ether5 /routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-IPTV upstream=no
Мониторинг IPTV-трафика
Создайте скрипт для мониторинга multicast-трафика:
[admin@MikroTik] >/system/script add name=iptv-monitor source={ :local rxBytes [/interface/monitor-traffic ether1 as-value once] :local txBytes [/interface/monitor-traffic bridge-LAN as-value once] :log info ("IPTV WAN RX: " . ($rxBytes->"rx-bits-per-second" / 1000000) . " Mbps") :log info ("IPTV LAN TX: " . ($txBytes->"tx-bits-per-second" / 1000000) . " Mbps") }
Ограничение multicast-полосы
Если multicast-трафик мешает интернету, можно ограничить полосу:
[admin@MikroTik] >/queue/simple add name=iptv-limit target=224.0.0.0/4 \ max-limit=50M/50M comment="IPTV bandwidth limit"
Полная конфигурация IPTV (универсальная)
[admin@MikroTik] ># IGMP Proxy /routing/igmp-proxy/interface add interface=ether1 upstream=yes add interface=bridge-LAN upstream=no # IGMP Snooping на bridge /interface/bridge set bridge-LAN igmp-snooping=yes # Firewall правила для multicast (добавить в начало!) /ip/firewall/filter add chain=input protocol=igmp action=accept \ place-before=0 comment="IPTV: Allow IGMP" add chain=input dst-address=224.0.0.0/4 action=accept \ place-before=1 comment="IPTV: Allow Multicast input" add chain=forward protocol=igmp action=accept \ place-before=0 comment="IPTV: Forward IGMP" add chain=forward protocol=udp dst-address=224.0.0.0/4 action=accept \ place-before=1 comment="IPTV: Forward Multicast UDP" add chain=forward dst-address=224.0.0.0/4 action=accept \ place-before=2 comment="IPTV: Forward Multicast" # Логирование IGMP (для диагностики, отключить после настройки) /system/logging add topics=igmp-proxy action=memory
Чек-лист настройки IPTV
Используйте этот чек-лист для проверки настройки:
- IGMP Proxy: upstream на WAN-интерфейсе (или VLAN IPTV), downstream на LAN
- Firewall: правила для IGMP и multicast стоят до правил drop
- IGMP Snooping: включен на bridge-LAN
- VLAN (если требуется): создан VLAN-интерфейс, DHCP-клиент на нём (если нужен), маршрут для multicast через VLAN
- Приставка: подключена по кабелю (не Wi-Fi), получает IP, видна в ARP-таблице
- Torch: multicast-трафик виден на WAN и на LAN
- CPU: загрузка процессора при IPTV < 80%
Правильная настройка IPTV на MikroTik — это в первую очередь IGMP Proxy и firewall. Если эти два элемента настроены корректно, IPTV будет работать стабильно. Главная рекомендация — всегда подключайте ТВ-приставку по кабелю и включайте IGMP Snooping на bridge.
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
# Вариант 1: multicast через физический интерфейс (чаще)
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
# Вариант 2: multicast через PPPoE (реже)
/routing/igmp-proxy/interface
add interface=pppoe-out1 upstream=yes
add interface=bridge-LAN upstream=no
/interface/vlan add name=vlan-iptv vlan-id=20 interface=ether1
/routing/igmp-proxy/interface
add interface=vlan-iptv upstream=yes
add interface=bridge-LAN upstream=no
# Не добавляйте ether5 в bridge-LAN!
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
add interface=ether5 upstream=no
/ip/firewall/filter
add chain=input protocol=igmp action=accept \
place-before=0 comment="IPTV: Allow IGMP input"
add chain=input dst-address=224.0.0.0/4 action=accept \
place-before=1 comment="IPTV: Allow Multicast input"
add chain=forward protocol=igmp action=accept \
place-before=0 comment="IPTV: Forward IGMP"
add chain=forward protocol=udp dst-address=224.0.0.0/4 action=accept \
place-before=1 comment="IPTV: Forward Multicast UDP"
add chain=forward dst-address=224.0.0.0/4 action=accept \
place-before=2 comment="IPTV: Forward Multicast all"
/ip/firewall/filter print
/interface/bridge set bridge-LAN igmp-snooping=yes
/interface/bridge/mdb print
# VLAN для IPTV (уточните VLAN ID у провайдера!)
/interface/vlan add name=vlan-iptv vlan-id=20 interface=ether1
# DHCP на VLAN IPTV (в некоторых регионах)
/ip/dhcp-client add interface=vlan-iptv add-default-route=no disabled=no
# Маршрут для multicast
/ip/route add dst-address=224.0.0.0/4 gateway=vlan-iptv
# IGMP Proxy
/routing/igmp-proxy/interface
add interface=vlan-iptv upstream=yes
add interface=bridge-LAN upstream=no
# Маршруты для multicast и локальной сети Билайн
/ip/route
add dst-address=224.0.0.0/4 gateway=<dhcp-gateway> comment="Multicast"
add dst-address=10.0.0.0/8 gateway=<dhcp-gateway> comment="Beeline local"
# IGMP Proxy
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
# VLAN (уточните у ТТК)
/interface/vlan add name=vlan-iptv vlan-id=20 interface=ether1
# IGMP Proxy
/routing/igmp-proxy/interface
add interface=vlan-iptv upstream=yes
add interface=bridge-LAN upstream=no
# IGMP Proxy
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
# Firewall
/ip/firewall/filter
add chain=input protocol=igmp action=accept place-before=0
add chain=forward protocol=igmp action=accept place-before=0
add chain=forward dst-address=224.0.0.0/4 action=accept place-before=1
# Схема с udpxy:
Multicast (провайдер) → udpxy → HTTP unicast → Wi-Fi → IPTV-плеер
/routing/igmp-proxy/interface print
# Multicast на WAN (от провайдера)
/tool/torch interface=ether1 src-address=0.0.0.0/0 dst-address=224.0.0.0/4
# Multicast на LAN (к приставке)
/tool/torch interface=bridge-LAN src-address=0.0.0.0/0 dst-address=224.0.0.0/4
/interface/bridge/mdb print
# Счётчики правил IGMP/Multicast
/ip/firewall/filter print stats where comment~"IPTV"
/system/logging add topics=igmp-proxy action=memory
/log print where topics~"igmp"
/routing/igmp-proxy/interface print
/ip/firewall/filter print where action=accept
/tool/torch interface=ether1 dst-address=224.0.0.0/4
/tool/torch interface=bridge-LAN dst-address=224.0.0.0/4
/ip/arp print where interface=bridge-LAN
/interface/bridge set bridge-LAN igmp-snooping=yes
/system/resource print
/ping <gateway-провайдера> count=100
/interface/bridge set bridge-LAN igmp-snooping=yes fast-leave=yes
/system/package print where name=routing
# Включите IGMP Snooping
/interface/bridge set bridge-LAN igmp-snooping=yes
# Проверьте, что IGMP Proxy работает
/routing/igmp-proxy/interface print
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
add interface=ether4 upstream=no
add interface=ether5 upstream=no
/interface/bridge add name=bridge-IPTV igmp-snooping=yes
/interface/bridge/port
add bridge=bridge-IPTV interface=ether4
add bridge=bridge-IPTV interface=ether5
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-IPTV upstream=no
/system/script add name=iptv-monitor source={
:local rxBytes [/interface/monitor-traffic ether1 as-value once]
:local txBytes [/interface/monitor-traffic bridge-LAN as-value once]
:log info ("IPTV WAN RX: " . ($rxBytes->"rx-bits-per-second" / 1000000) . " Mbps")
:log info ("IPTV LAN TX: " . ($txBytes->"tx-bits-per-second" / 1000000) . " Mbps")
}
/queue/simple add name=iptv-limit target=224.0.0.0/4 \
max-limit=50M/50M comment="IPTV bandwidth limit"
# IGMP Proxy
/routing/igmp-proxy/interface
add interface=ether1 upstream=yes
add interface=bridge-LAN upstream=no
# IGMP Snooping на bridge
/interface/bridge set bridge-LAN igmp-snooping=yes
# Firewall правила для multicast (добавить в начало!)
/ip/firewall/filter
add chain=input protocol=igmp action=accept \
place-before=0 comment="IPTV: Allow IGMP"
add chain=input dst-address=224.0.0.0/4 action=accept \
place-before=1 comment="IPTV: Allow Multicast input"
add chain=forward protocol=igmp action=accept \
place-before=0 comment="IPTV: Forward IGMP"
add chain=forward protocol=udp dst-address=224.0.0.0/4 action=accept \
place-before=1 comment="IPTV: Forward Multicast UDP"
add chain=forward dst-address=224.0.0.0/4 action=accept \
place-before=2 comment="IPTV: Forward Multicast"
# Логирование IGMP (для диагностики, отключить после настройки)
/system/logging add topics=igmp-proxy action=memory