Меню

настройка igmp proxy openwrt

Блог Валерия Малько

Страницы

суббота, 9 февраля 2019 г.

Настройка igmpproxy, udpxy и xupnpd на прошивке Openwrt для просмотра IPTV.

Общее

3. устнановить текстовый редактор nano для более удобного редактирования конфигов:

для вставки текста из буфера обмена необходимо нажать правую кнопку мыши
CTRL+s — сохранить файл
CTRL+x — закрыть файл

1. Настройка igmpproxy

2. проверить работу IGMP snooping командой:

2. устнановить igmpproxy командой:

opkg update
opkg install igmpproxy

3. отредактировать конфиг igmpproxy:

у Вас она не будет работать т.к. работает только на сети моего провайдера!
можно разрешить igmpproxy слушать все возможные адреса, в этом случае возможна нестабильность, хотя у меня работает нормально:

сохранить и закрыть файл:
CTRL+s
CTRL+x

полный конфиг igmpproxy выглядит так:

config igmpproxy
option quickleave 1
# option verbose 2(none, minimal[default], more, maximum)

config phyint
option network wan
option zone wan
option direction upstream
list altnet 192.168.1.0/24
list altnet 0.0.0.0/0

config phyint
option network lan
option zone lan
option direction downstream

4. отредактировать конфиг файервол командой:

в данном файле ничего не удалять, только добавить строки:

config rule
option name ‘Allow-IPTV-IGMPPROXY’
option src ‘wan’
option proto ‘udp’
option dest ‘lan’
option dest_ip ‘224.0.0.0/4’
option target ‘ACCEPT’

сохранить и закрыть файл:
CTRL+s
CTRL+x

5. запустить igmpproxy командами:

/etc/init.d/firewall restart
/etc/init.d/igmpproxy enable
/etc/init.d/igmpproxy start

6. проверить работу igmpproxy командой:

2.Настройка udpxy

2. отредактировать конфиг udpxy:

необходимо изменить значение строки option disabled с «1» на «0»

сохранить и закрыть файл:
CTRL+s
CTRL+x

3. отредактировать конфиг файервол командой:

в данном файле ничего не удалять, только добавить строки:

config rule
option name ‘Allow-IPTV-UDPXY’
option src ‘wan’
option proto ‘all’
option dest_ip ‘224.0.0.0/4’
option target ‘ACCEPT’

сохранить и закрыть файл:
CTRL+s
CTRL+x

4. запустить udpxy командами:

/etc/init.d/firewall restart
/etc/init.d/udpxy enable
/etc/init.d/udpxy start

где 192.168.100.1 — ip-адрес роутера, либо использовать обычный плейлист с приложениями для просмотра IPTV, в которых можно настроить прокси, например под android есть приложение IPTV.

3. Настройка xupnpd

данный способ просмотра через DLNA можно использовать только, если остальные способы не поддержтиваются на устройстве.

1. устнановить xupnpd командой:

2. запустить xupnpd командами:

/etc/init.d/xupnpd enable
/etc/init.d/xupnpd start

3. настроить xupnpd, открыв в браузере адрес (ip подставить от своего роутера):

4. перейти в раздел «Playlists», выбрать и загрузить файл плейлиста провайдера, нажать «send», затем нажать «Reload»

источник

OpenWrt Project

User Tools

Site Tools

Sidebar

Table of Contents

IPTV / UDP multicast

Основные положения

Когда хост хочет начать получать широковещательный UDP трафик, то он должен принадлежать к группе «UDP multicast group». Контроль для широковещательных групп базируется на протоколе IGMP. Как только хост подписан, весь трафик для этой группы посылается ей используя broadcast L2 frames. Это важно, потому как многие роутеры направляют весь широковещательный трафик на все порты. В домашних сетях вы обычно используете Linux для управления проводными и беспроводными сетями, и если вы получаете широковещательный трафик по проводному каналу, то вы будете забивать им и беспроводные каналы тоже. К счастью в версии ядра Linux 2.6.34 есть возможность «IMGP snooping», которая отслеживает подобные ситуации и по умолчанию присутствует в OpenWrt. Таким образом у вас не будет нежелательного трафика на портах, который не были вами заданы для получения.

Ещё одним важным фактором является так же то, что из-за использования низкого уровня скорости (чтобы все клиенты могли «слушать»), а так же хитрых режимов энергосбережения – широковещание в беспроводных сетях работает не так, как этого от него ожидаешь. Зачастую широковещание бесполезно для IPTV .

Решение

Благодаря «IGMP snooping», утилита igmpproxy больше не должна создавать проблемы в беспроводных сетях. Теперь вы можете одновременно запускать обе утилиты igmpproxy и udpxy.

Проверьте, что поддержка «IGMP snooping» присутствует в вашей прошивке OpenWrt и включена!

Если команда выдаст сообщение содержащие « No such file or directory », то прошивка скомпилирована без поддержки «IGMP snooping» и просмотр IPTV затормозит вашу беспроводную сеть.

Если файл существует, то вывод команды выдаст либо « 1 », либо « 0 ». Если выдается « 1 », то ничего делать не надо, а если « 0 », то для включения «IGMP snooping» в файл /etc/config/network , в конфигурации интерфейса «lan», необходимо добавить строку:

Примечание: В версии OpenWrt Attitude Adjustment 12.09, «IGMP snooping» по умолчанию включен, поэтому никакие изменения в /etc/config/network для OpenWrt AA 12.09 не нужны! Однако начиная с ревизии r36463, «IGMP snooping» по умолчанию отключен и для его включения требуются вышеупомянутые действия.

IGMP proxy

Установка igmpproxy

Выполните команды устанавливающие igmpproxy:

После установки пакета, необходимо отредактировать файл конфигурации /etc/config/igmpproxy :

Настройки Firewall

Запуск igmpproxy

После добавления правил, необходимо перезапустить фаервол, добавить igmpproxy в автостарт и естественно запустить сам igmpproxy. Выполните следующие команды:

В дальнейшем igmpproxy будет сразу стартовать автоматически в процессе загрузки роутера.

Проверка сервиса igmpproxy

При отсутствии строки “/usr/sbin/igmpproxy /var/etc/igmpproxy.conf”, отладка сервиса из командной строки

В случае падений сервиса, можно добавить в cron команду

Подсети провайдера из которых идет вещание

Если вы не уверены, что надо написать в строках list altnet файла конфигурации /etc/config/igmpproxy , то закомментируйте эти строки и посмотрите на вывод igmpproxy в логе роутера. Пытайтесь после запуска igmpproxy подписываться на какие-либо каналы с помощью VLC или каким-нибудь другим клиентом (проигрывателем). Если в файле конфигурации не будет хватать сетей, то вы увидите в логе, что-то типа: « Warn: The source address 10.254.16.66 for group 233.32.240.222, is not in any valid net for upstream VIF ». Адрес, указанный после source address необходимо прописать в list altnet файла конфигурации /etc/config/igmpproxy . В случае нескольких адресов, прописать соответсвующую маску.

Читайте также:  автоматическая тонкая настройка что это такое

Для универсальности можно разрешить igmpproxy слушать все возможные адреса, прописав

Однако в этом случае возможна нестабильность.

Также следует учитывать, что значение 0.0.0.0/0 поддерживается начиная с ревизии r40729. На старых ревизиях igmpproxy откажется запускаться с данным значением, выдав ошибку: « The bits part of the address is invalid : 4286488 ».

udpxy

Альтернативным путем, который позволяет получить доступ к широковещательным UDP потокам, является утилита udpxy. Работает довольно хорошо, как на проводных, так и на беспроводных соединениях.

Установка udpxy

Выполните команды устанавливающие udpxy:

После установки пакета, возможно вам понадобится отредактировать стартовый скрипт /etc/init.d/udpxy в соответствии с вашими требованиями. Вас должна интересовать только строка OPTIONS=“-T -S -p 4022” . Вы можете ее оставить так, как она есть, но если вас что-то будет не устраивать в работе udpxy, то вы можете изменить ключи для запуска udpxy в соответствии с руководством по использованию данной утилиты.

Пример изменения стартового скрипта /etc/init.d/udpxy

Настройки Firewall

Для того, чтобы udpxy мог работать с IGMP, вы должные добавить соответствующие правила в файл /etc/config/firewall :

Запуск udpxy

После добавления правил, необходимо перезапустить фаервол, добавить udpxy в автостарт и естественно запустить сам udpxy. Выполните следующие команды:

В дальнейшем udpxy будет сразу стартовать автоматически в процессе загрузки роутера.

Теперь когда вы захотите получить доступ, скажем, к udp://@239.64.64.58:1234 , то вы должны указать своему проигрывателю соединиться с адресом http://192.168.1.1:4022/udp/239.64.64.58:1234 . В данном примере, IP -адрес 192.168.1.1 является адресом вашего роутера в локальной сети.

Примечание по совместному использованию igmpproxy и udpxy

Если вы планируете использовать одновременно igmpproxy и udpxy, то в файле конфигурации фаервола – /etc/config/firewall у вас в итоге должно быть два правила:

источник

zveronline’s blog

с технической точки зрения

настройка iptv от ростелеком на openwrt

Для настройки я использую веб-интерфейс luci. Выделим порт под приставку, если она есть, для этого нужно соединить порт wan с портом для приставки в bridge, делается это через VLAN.

vlan 1 — группа lan, vlan 2 — группа wan. В моем случае порт 1 это порт wan, 4 порт по факту 3, нужно перенести этот порт из vlan 1 в vlan 2. Для этого указываем в vlan 2 значение «без тега», а в vlan 1 «выключено».

Далее рассказ о том как настроить iptv чтобы иметь возможность смотреть его с пк/raspberry/телевизора/холодильника/кофеварки… и если вы не собираетесь смотреть с чего либо кроме iptv приставки то дальше можно не читать.

На ppoe соединении нет iptv, он живет прямо на wan интерфейсе, чтобы подключиться к мультикастовой группе нужно выдать ip wan интерфейсу, для этого якобы создадим интерфейс, привяжем его к vlan 2 (wan) и пропишем какой-нибудь ip, например 10.10.10.1, но по факту похоже без разницы какой ip выдать, шлюз прописывать не надо.

Мы все еще не сможем подключиться к мультикастовой группе, ибо находимся за nat, для работы iptv в nat используется igmpproxy.

Установка igmpproxy

Выполните команды устанавливающие igmpproxy:

После установки пакета, необходимо отредактировать файл конфигурации /etc/config/igmpproxy :

Настройки Firewall

Вы так же должны разрешить IGMP для WAN интерфейса и перенаправить широковещательный трафик следующими правилами в файле /etc/config/firewall:

Запуск igmpproxy

После добавления правил, необходимо перезапустить firewall, добавить igmpproxy в автостарт и естественно запустить сам igmpproxy. Выполните следующие команды:

В дальнейшем igmpproxy будет сразу стартовать автоматически в процессе загрузки роутера.

Подсети провайдера из которых идет вещание

Если вы не уверены, что надо написать в строках list altnet файла конфигурации /etc/config/igmpproxy, то закомментируйте эти строки и посмотрите на вывод igmpproxy в логе роутера. Пытайтесь после запуска igmpproxy подписываться на какие-либо каналы с помощью VLC или каким-нибудь другим клиентом (проигрывателем). Если в файле конфигурации не будет хватать сетей, то вы увидите в логе, что-то типа: «Warn: The source address 10.254.16.66 for group 233.32.240.222, is not in any valid net for upstream VIF». Таким образом вы узнаете широковещательный адрес вашего провайдера и сможете добавить необходимую подсеть в файл конфигурации /etc/config/igmpproxy.

config interface ‘loopback’
option ifname ‘lo’
option proto ‘static’
option ipaddr ‘127.0.0.1’
option netmask ‘255.0.0.0’

config globals ‘globals’
option ula_prefix ‘fdef:106b:cb4f::/48’

config interface ‘lan’
option ifname ‘eth0.1’
option force_link ‘1’
option type ‘bridge’
option proto ‘static’
option ipaddr ‘192.168.1.1’
option netmask ‘255.255.255.0’
option ip6assign ’60’

config interface ‘wan’
option ifname ‘eth0.2’
option _orig_ifname ‘eth0.2’
option _orig_bridge ‘false’
option proto ‘pppoe’
option username ‘***’
option password ‘***’
option peerdns ‘0’
option dns ‘77.88.8.1 77.88.8.8’

config switch
option name ‘switch0’
option reset ‘1’
option enable_vlan ‘1’

config switch_vlan
option device ‘switch0’
option vlan ‘1’
option ports ‘0t 2 3 5’
option vid ‘1’

Читайте также:  как ввести настройки сервера

config switch_vlan
option device ‘switch0’
option vlan ‘2’
option ports ‘0t 1 4’
option vid ‘2’

config interface ‘wan6’
option proto ‘6to4’

config interface ‘iptv’
option proto ‘static’
option ifname ‘eth0.2’
option ipaddr ‘10.10.10.1’

настройка iptv от ростелеком на openwrt : 36 комментариев

Не могли бы выложить сюда конфиг /etc/config/network. В начале не совсем наглядно, откуда появились eth0.1 eth0.2 eth0.3

config interface ‘loopback’
option ifname ‘lo’
option proto ‘static’
option ipaddr ‘127.0.0.1’
option netmask ‘255.0.0.0’

config globals ‘globals’
option ula_prefix ‘fdef:106b:cb4f::/48’

config interface ‘lan’
option ifname ‘eth0.1’
option force_link ‘1’
option type ‘bridge’
option proto ‘static’
option ipaddr ‘192.168.1.1’
option netmask ‘255.255.255.0’
option ip6assign ’60’

config interface ‘wan’
option ifname ‘eth0.2’
option _orig_ifname ‘eth0.2’
option _orig_bridge ‘false’
option proto ‘pppoe’
option username ‘****’
option password ‘****’
option peerdns ‘0’
option dns ‘77.88.8.1 77.88.8.8’

config switch
option name ‘switch0’
option reset ‘1’
option enable_vlan ‘1’

config switch_vlan
option device ‘switch0’
option vlan ‘1’
option ports ‘0t 2 3 5’
option vid ‘1’

config switch_vlan
option device ‘switch0’
option vlan ‘2’
option ports ‘0t 1 4’
option vid ‘2’

config interface ‘wan6’
option proto ‘6to4’

config interface ‘iptv’
option proto ‘static’
option ifname ‘eth0.2’
option ipaddr ‘10.10.10.1’
option netmask ‘255.255.255.0’
option delegate ‘0’
option auto ‘0’

после того как нашел нужную подсеть как найти нужный адрес и порт для vlc?

ну для этого нужен плейлист к iptv ростелекома, в котором будут адреса и порты каналов.
вот то что у меня есть http://file.zveronline.ru/iptv/, где я их взял я уже не помню

проблема в том что у меня не ростелеком. в сети не нашел плайлист своего провайдера. Как самому найти, сделать плейлист?

Этого я не знаю, самому интересно, теоретически нужно перебрать все адреса сети, вручную это нереально, нужна какая-то софтина

сеть большая и еще порты надо перебирать — это очень долго. Прога — http://www.progdvb.com/rus/

Почему не реально? В СпидиЛайн 255 адресов всего перебрать. Так они каналы еще не шифруют. Очень даже хороший плейлист получился

Подскажите пожалуйста, у меня в настройках switch0 не виден wan порт, видны только cpu и lan-порты, как сделать чтобы его увидеть И в настройках канала wan порт идет как ethernet adapter ‘eth1’. Либо может мне тогда объединять порты в bridge как-то по-другому?

У меня тоже не виден, с его точки зрения они все просто порты одного свитча, 1,2,3 и т.д.
Методом не научного тыка я понял что первым был wan
Например у asus rt n12 они были ещё и в обратном порядке

У меня netgear wndr3700v2 (ethernet + 4 lan порта) и у меня тоже нумерация идет в обратном порядке, при этом такой порядок: cpu, порт4 (всегда отключен, хз что это), порт3 (начинается lan) и еще 3 lan порта. У Вас на скриншоте видно, что к wan порту подключен кабель, у меня же подключен только один lan порт (приставка тв), остальные 3 пустые, т.е. вариантов для поиска wan нету

а интернет то вы как настраиваете? мне для pppoe соединения нужно указать vlan в котором wan порт, и кажется этот vlan у меня был с самого начала, хотя я не помню…
на крайняк можно использовать вместо wan любой другой порт, так же врубив его в отдельном vlan и так он станет в роли wan, ну например если физически порт выгорит

Инет настраивается просто через pppoe (также как у Вас, судя по скрину), создается интерфейс через pppoe протокол (vlan не используется) и в физических настройках выбирается ethernet adapter (eth1) (писал выше, у Вас на картинке такого нет). В том и вопрос, что это особенность этого роутера и как его запилить (если это возможно конечно) под наши реалии, в частности ростелеком

И кстати чем отличается постройка моста описанного Вами, от того если при создании нового интерфейся (iptv, например) в настройках канала ставить галку создания моста и выбирать мой ethernet adapter (wan) или это не тоже самое? Заранее извиняюсь за дилетанские вопросы

Полагаю это уже относится к соединению разных сетевушек, и это то что нужно, но проверить мне не на чем

Ну у меня этот свитч это eth0, eth0.1 и 0.2 это какраз таки vlanы, если у вас есть и eth0 и eth1 то это явно разные сетевушки, а это окно настройки коммутатора относится только к одной из них


хотя вот wifi к свитчу присобачен

Здравствуйте! Не могли бы вы помочь настроить IPTV приставки Ростелекома на роутере с прошивкой OpenWRT (TP-Link WRD4300), для этого нужно знать VLAN? Знаний на перепрошивку и первоначальную настройку роутера у меня хватило, на установку соединения с интернетом ПК по кабелю тоже, а вот поднять IPTV приставки не получается. В моем случае 3 приставки 2/3/4 порты. Причина по которой пришлось переходить с официальной прошивки на OpenWRT в том, что на оф. для IPTV можно назначить только 2 порта.

если порт wan и порты для приставки являются одной сетевушкой то нужно порт wan и нужный порт для приставки включить в один vlan, таким образом получится мост

Читайте также:  настройки для советника forex setka trader

Подскажите… У меня иптв подключается по тегированному влан, инет по pppoe. Стоит только создать подключение для иптв, пропадает инет. Что я делаю не так?

Подскажите пожалуйста, у меня такая схема: оптический терминал + роутер тп-линк 1043nd. У оптического терминала 2порта для интернета и 2порта iptv.
Интернет — поднимается через PPPoE, а iptv мост. Можно ли выделить какой-нибудь из ланов роутера под ван и туда направить иптв из теминала. Чтобы в итоге на оставшихся ланах были интернет+иптв.

Мои VLANID тэги которым ростелеком сплитит трафик имеют значения что то типа 501 для TV и 300 для интернета. Всё успешно работает на Zyxel, но никак не могу разобраться с OpenWrt. Где мне задать эти значения тэгов.
В разделе Switch в качестве VLAN ID мне интерфейс позволяет ввести только значения от 1 до 15.
Где задаются тэги? Возможно что мой роутер не поддерживает такие значения для VLANID?

возможно, ибо у меня любые введенные принимает

Ребята помогите настроить iptv на openwrt

та же самая беда VLAN ID (VID) не даёт прописать более 15 / а надо 1601 — это VID Ростелекома (то есть кольца VLAN-а)

Не получается сделать как написано в статье.
Создаю соединение — bridge с портом wan.
На вкладке Switch, выбираю порт для приставки, и тут начинается самое интересное:
1. Если я ставлю vlan1 — untagged, vlan2 — off. То приставка получает IP при загрузке, получает список каналов, но воспроизведение потока не происходит.
2. Если я ставлю vlan1 — off, vlan2 — untagged, то идёт воспроизведение, но список каналов больше не подтягивается и приставка при перезагрузке не может получить ip адрес.
3. Если я выбираю bridge для vlan1 и vlan2 одновременно, а не только для vlan2, то приставка получает ip адрес, но при загрузке выдаётся окно:
—————-
IP адрес получен
Соединение есть
Сервис недоступен
ТРЕБУЕТСЯ ПЕРЕЗАГРУЗКА
—————-
Разумеется одновременно сделать untagged vlan1 и vlan2 нельзя. Куда копать?
До этого на сран^w старом D-LINK DIR-620 проблемы с iptv вообще не было — создал отдельное подключение со static ip и всё.

очень похоже что приставка получает список каналов из интернета а не из своей внешней сети, правда я такого никогда не видел но предлагаю попробовать использовать igmproxy, а порт под приставку вообще не выделять

Самое интересное, что на DIR-620 было два подключения и проблем не было.
Попробую igmpproxy. Или лучше udpxy чтобы и на вафлю сразу раздавать?

Вопрос. Как мне указать приставке, с какого адреса получать список каналов?

Как мне указать приставке, с какого адреса получать список каналов чтобы она могла работать через IGMPROXY или UDPXY?

В итоге настроил со СТАНДАРТНОЙ прошивкой вот по этой инструкции http://rt48.ru/nastrojka/asus/asus-rt-g32
Отдельный порт просто под IPTV не надо было выделять, кто бы мог подумать?

Большое спасибо. Смотрел на других сайтах, там сложно. У вас понятно.
D-Link DIR-320. Настроил телевизоры методом проб и ошибок. Раза 3-4 сброс настроек делал. Конечно порты перепутаны. WAN вроде Порт 3.
Перешел на эту прошивку из-за постоянного зависания интернета, ТВ. Было подключено так DIR-320 (>интернет, ТВ, Wi-Fi (телефоны, планшеты, ноутбук) + DSL 2540U (ПК, Смарт ТВ, ноутбук). Скока раз перенастраивал. Купил коммутатор, думал проблемка в DSL 2540U. Не помогло. Сейчас у меня подключено DIR-320 + DES 1008C. Думаю можно и вернуть маршрутизатор DSL

Здравствуйте .Помогите если сможете, у меня следующая проблема: приобрел роутер tp link archer c7 с целью, что нужно раздать через роутер одновременно iptv и интернет по квартире т.к не люблю лишние провода. Провайдер предоставляет iptv и интернет по выделенной линии (iptv-dinamic ip , интернет- pppoe-соединение) метрики разные при подключении . Прошил роутер кастомнойo penwert 18.06.1 настроил как положено (igmpproxy и все дела), сначала по отдельности поднял pppoe соединение -проверил интернет есть все нормально, затем создал подключение wan-dhcp для iptv (тоже отдельно) проверил iptv работает на всех устройствах и на пк — по lan и по wi fi. И вот кульминация поднял dual access ppoe на роутере и заработал одновременно iptv и интернет на всех портах lan и по wi fi счастье да и только, но вот только не без ложки дегтя : в режиме duall access ppoe при просмотре iptv перестала работать как в народе говорят отмотка назад( воспроизведение из архива локальной сети провайдера) провайдер использует для этого dns который не видно из интернета(10.168.5.10-edge.tolkun.tv) по которому и обновляется программа передач, работает воспр. из архива. Когда делаю по умолчанию шлюз локалки(172.22.223.254) iptv работает как положено, но тогда пропадает интернет(шл.10.168.255.174) и наоборот работает интернет не работает в полном объеме iptv. Подчеркиваю — по отдельности все работает как надо.

Ваш метод просто зашкаливает по хардкорности, я не заморачивался и пробросил до iptv приставки канал по vlan, хотя ещё проще было бы отдельный провод протянуть.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

источник