Как я поднимал IPTV Ростелеком из под OpenWRT 24.10.4
Прочел множество форумов, но либо информация по другому провайдеру (билайн, либо вообще забугорные), либо она очень сжатая. Постараюсь в эту тему объяснить все максимально просто и без воды.
В интернете первым делом наткнулся на статью:
https://www.linux.org.ru/forum/admin/1731112
На последней странице пользователь под ником MaxML выкладывает конфиг, который мне неподходит. Все равно ошибка мультикаста.
Связываюсь с людьми, спрашиваю кто что делал и какой результат получил, результаты к сожалению отрицательные(
Тут я понимаю, что нужно брать как референс пример выше и делать свой конфиг. CTRL+C CTRL+V - не сработает.
1. Шаг первый. Подготовка.
1.1. Заходим в терминал и подключаемся к роутеру через SSHssh root@192.168.1.1
1.2. После подключения, выполните команду:cat /sys/devices/virtual/net/br-lan/bridge/multicast_snooping
1.2.1. Если команда выдает "No such file or directory", то ваша прошивка скомпилирована без IGMP Snooping. Дальнейшие действия не имеют никакого смысла, т.к. даже при соблюденных условиях вы будете наблюдать на экране артефакты.
1.2.2. Если же файл существует и выдает результат в виде нуля или единицы, то можем приступать к другому этапу.
1.3. Установка IGMPProxy. Установка проходит через SSH, но можно и установить и через вебморду в разделе "Система" >> "Пакеты". Мы рассмотрим установку через SSH. Выполняем следующие команды:opkg update
opkg install igmpproxy
После установки IGMPProxy переходим к этапу настройки конфигурационных файлов.
2. Шаг второй. Конфигурация.
2.1. /etc/config/network
Вариант с форума linux.org.ru - мне не подошел совсем, потому было решено писать свой конфиг.
Переходим в Сеть > Интерфейсы > Устройства.
Далее у стандартного моста br-lan забираем LAN4. Его мы будем выделять как раз под IPTV (это крайний правый порт, если смотреть на роутер сзади)
На всякий случай включаю IGMP Snooping в br-lan , хоть он и практической полезности не несет.
Создаю еще один мост под названием br-iptv и выдаю ему LAN4 и уже включаю IGMP Snooping и принудительно указываю версию IGMP 2
На этом настройки конкретно в устройствах исчерпываются, переходим в:
Сеть > Интерфейсы
Там создаю интерфейс с протоколом статического адреса и названием iptv_lan. В настройках указываю IPv4 адрес: 192.168.100.1, а маску сети IPv4: 255.255.255.0 , указываю устройство br-iptv
Еще создаю один интерфейс с названием iptv. В нем указываю только IPv4-адрес с маской 10.0.0.1/24, ему выдаю устройство WAN
На этом настройки /etc/config/network заканчиваются.
2.2. /etc/config/igmpproxy
config igmpproxy
option quickleave 1
config phyint
option network 'iptv'
option zone 'iptv'
option direction 'upstream'
list altnet 192.168.0.0/16
list altnet 172.16.0.0/12
list altnet 10.0.0.0/8
config phyint
option network 'iptv_lan'
option zone 'lan'
option direction 'downstream'
config phyint
option network 'loopback'
option direction 'disabled'
В List Altnet указываете IP адрес, которые выловите при подключении IPTV. Выловить IP адреса можно с вебморды. Статус >> URL Log
При попытке запустить IPTV будут сыпаться такие запросы в URL Log:
Чтобы скопировать мой конфиг. Нужно выполнить команду:nano /etc/config/igmpproxy и переписать сохранив на CTRL+S и закрыть на CTRL+X
Mon Dec 15 23:43:31 2025 user.warn igmpproxy[17798]: The source address 198.11.9.9 for group 221.71.225.4, is not in any valid net for upstream VIF[0].
Нас интересует The source address 198.11.9.9, а именно сам IP адрес. Его как раз и необходимо будет указать list altnet. Пример: list altnet 198.11.9.9
config defaults
option syn_flood '1'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
list network 'lan'
list network 'iptv_lan'
config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
list network 'wan'
list network 'wan6'
config zone
option name 'iptv'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '0'
list network 'iptv'
config forwarding
option src 'lan'
option dest 'wan'
# Разрешаем IGMP от upstream (iptv) — чтобы мультикаст проходил в локальную сеть через igmpproxy
config rule
option name 'Allow-IPTV-IGMP'
option src 'iptv'
option proto 'igmp'
option target 'ACCEPT'
option family 'ipv4'
# Разрешаем мультикаст-udp (тот же 224.0.0.0/4) от провайдера в локальную сеть
config rule
option name 'Allow-IPTV-Multicast-UDP'
option src 'iptv'
option proto 'udp'
option dest 'iptv_lan'
option dest_ip '224.0.0.0/4'
option target 'ACCEPT'
# Если приставке нужны DNS/DHCP ответы через WAN (обычно нет), но оставляем DHCP rules для WAN
config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'
config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-IGMP'
option src 'wan'
option proto 'igmp'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-MLD'
option src 'wan'
option proto 'icmp'
option src_ip 'fe80::/10'
list icmp_type '130/0'
list icmp_type '131/0'
list icmp_type '132/0'
list icmp_type '143/0'
option family 'ipv6'
option target 'ACCEPT'
После того, как выставили конфиг пробуем перезапуск модулей:/etc/init.d/firewall restart
/etc/init.d/igmpproxy enable
/etc/init.d/igmpproxy start
/etc/init.d/network restart
После всех этих действий у вас должно заработать IPTV, но будут артефакты на экране, чтобы от них избавиться необходимо выполнить команду:ethtool -K wan gro off
Если артефакты уйдут, значит причина в этом, это команду необходимо прописать в RC.LOCAL, чтобы при каждом перезапуске системы у вас выполнялась эта команда:nano /etc/RC.LOCAL
вписываем ethtool -K wan gro off
3. Система настроена и работает.
Очень надеюсь, что смог Вам помочь в настройке IPTV от Ростелекома!
Ниже выложу ссылку на GitHub где лежат конфигурационные файлы.
https://github.com/v1rtuozz/openwrt-iptv-rostelecom