Простая настройка IPTV

IPTV - цифровое телевидениеНаш Internet-провайдер обновился до потокового IPTV. Отпускает он этот поток гражданам, страдающих от нехватки недостоверной информации, двумя способами - на зомбоящик с шифрованным каналом через "платную коробочку" с абонплатой (больше интересных каналов), и бесплатно на компьютер с последующим просмотром через всенародно любимый плеер VLC. Мною был выбран второй вариант как возможность испытать на этом полигоне Linux в виде двух дистрибутивов - CentOS 6.2 и Mandriva 2010.2.

Для передачи потокового IPTV провайдер использует передачу Multicast c протоколом IGMP.
Чтобы получать видео, в роутере необходимы некоторые настройки. Для роутера Linksys WRT54GL это означает, что в разделе Security нужно снять галочку Filter Multicast, разрешив тем самым прохождение широковещательных пакетов от провайдера в свою внутреннюю локальную сеть:

Настройка роутера

Теперь, если отключить на CentOS-компьютере файрвол iptables командой

service iptables stop

можно загрузить список каналов в формате *.m3u в плеер и приступить к просмотру телевидения.
Отмечу, что воспроизведение в плеере VLC начинается практически сразу после выбора канала.

Теперь внесем необходимые правила в iptables:

-A INPUT --protocol igmp -j ACCEPT
-A INPUT --dst 224.0.0.0/4 -j ACCEPT

вновь запустим его в работу командой
service iptables start

и убедимся, что показ телевидения не нарушился.

Если с CentOS потоковое телевидение настроилось с пол-оборота, то с Mandriva пришлось повозиться. Но почему именно Mandriva?
Так уж получилось, что автономный медиацентр на базе XBMC у меня собран на miniITX-материнке Atom производства ASUS.
Не знаю, что там намудрили в биосе или еще где-то славные асусовцы, но XBMC на этой материнке смог нормально заработать только на дистрибутиве Mandriva 2010 - только на ней более-менее нормально работал видеоинтерефейс. На CentOS, Убунту и уж не помню каких еще дистрибутивах он жутко тормозил - мышка двигалась скачками с шагом 5 и более секунд. Понятно, что причина в разных реализациях видеодрайверов, но от этого не легче.

И вот пришлось правила для Multicast впихивать в Mandriva. Повозившись, получил такой рецепт:

1. Изменить в конфиге /etc/shorewall/shorewall.conf строку на:

MULTICAST=Yes

2. Добавить в конфиг /etc/shorewall/rules строку
ACCEPT all fw:224.0.0.0/4

3. Перезапустить shorewall командой:
#/etc/init.d/shorewall restart

4. Для гарантии воспроизводимости результата лучше перезагрузить систему, а теперь запустить XBMC и приготовится ждать.

Именно ждать, потому что обнаружилась такая "фича" - если в VLC показ видео начинался практически сразу, то в XBMC после загрузки Mandriva работа IPTV начиналась где-то через минуту-две. Не знаю пока, чем это объяснить.
Но если уж заработала, то вовсю, на полном экране, ни в чем себе не отказывая

Просмотр в XBMC


PS. Но хуже всего оказалась другая внезапно обнаруженная "фича" - после отключения в роутере правила Filter Multicast через какое-то время отваливался роутерный WiFi, и все его клиенты лишались связи. Отваливание своеобразное - сам WiFi-канал сохранял работоспособность, т.е. коннект, уровень сигнала в норме, просто прекращается передача по нему самого контента.
Причем время отваливания WiFi могло исчисляться как минутами, так и часами.

Непонятно, чем это можно объяснить, возможно, косяками в прошивке WRT54GL, но как видите, из официальных она последняя - 4.30.14, новее нет. Да, есть еще неофициальные, но знакомство с одной из них, Tomato Firmware v1.28.1816 вызвало отвратительные рефлексы по поводу того же WiFi - планшетом Samsung в режиме WPA/WPA2 AES так и не удалось приконнектиться к этому помидору - только WEP (в отличие от официальной прошивки Linksys). И в то же время со смартфоном LG P500 Optimus One помидор вязался нормально.
А между прочим, эта самая Tomato, который позиционируется как самая стабильная и безбажная среди альтернативных прошивок - что уж тогда говорить про остальные?
В-общем, ну их в болото, экспериментировать с DD-WRT после этого охота пока отпала.
Так что если будете заниматься IPTV, обращайте особое внимание на модель роутера и свежесть его прошивки.
Сейчас из бюджетных роутеров для IPTV больше всего нахваливают Zyxel Keenetic, типа и дешево и сердито, и вроде кино даже по WiFi смотреть можно - не знаю, не знаю, надо всё самому пробовать...


Попробовал еще такой эксперимент: чтобы разгрузить работу WRT54GL, который одновременно и транслировал Multicast, и обеспечивал WiFi, дал ему помощника в лице такого же WRT54GL.
При этом настроил их так, что один только транслировал Multicast, а другой только обеспечивал WiFi.
Увы и ах, но история повторилась - WiFi отваливался как и раньше.
Можно предположить, что что данный роутер уязвим к широковещательным пакетам даже изнутри локальной сети, т.е. они наводняли сеть и по локальным портам вводили его вайфайную компоненту в ступор.
Нехорошо, конечно, что господа из Cisco недоделали эту важную функцию и заморозили развитие версий в этой модели.


Нашлось некоторое компромиссное решение, обеспечивающее одновременную трансляцию IPTV и сохраняющее работоспособность WiFi. Оно обнаружилось в тонких настройках WiFi:

Тонкие настройки WiFi для IPTV

Суть его в понижении скорости канала WiFi, т.е. вместо дефолтового Transmission Rate, равного Auto, выбрается меньшая скорость, например, 24 Mbps.
Вероятно, при понижении скорости радиоканала меньше нагружается аппаратная часть роутера, и он успевает выполнить все свои функции в режиме реального времени.
Характерно, что даже при такой пониженной скорости на планшете Samsung Glaxy Tab P1000 удается не только комфортно сёрфить по Интернету, но и смотреть многие фильмы на локальном NAS через канал WiFi. Например, фильм Кандагар.avi с кодеком XViD, Frame rate 23.97 и разрешением 720x304 идет без каких-либо заминок изображения и звука.

Ваша оценка: Ничего Средняя оценка: 7 (3 votes)

вновь запустим его в работу командой
service iptables stop ? - start

Chawoosh аватар

shorewall - это для блондинок, тем более не понял зачем эта игрушка (как и iptables) за рутером от киски.
По поводу прошивок - томатные никогда не пробовал, родные от DD-WRT работают прекрасно, вполне приличный линукс внутри коробочки. У меня на соответствующей прошивке работает ASUS WL-500gP V2, на него без проблем цепляются и компы и трубки. И, кстати, сидит на тэгированной VLAN, чего ни одна официальная прошивка не умеет.

Abdula аватар

service iptables stop ? - start

да, мехническая ошибка, спасибо

shorewall - это для блондинок, тем более не понял зачем эта игрушка (как и iptables) за рутером от киски.

как по мне, так shorewall еще запутаннее, но если вносил правила непосредственно в iptables, они почему-то после ребута сбрасывались, поэтому пришлось лезть в shorewall.
Что до включенного файрвола: привычка у меня такая - держать его всегда включенным независимо где находишься. И еще никогда не подводила

Chawoosh аватар

После внесения изменений - iptables store не забывать, и она (табля) помнить будет.
Меня не подводят правильно сконфигурированные маршрутизаторы.

Abdula аватар

Меня не подводят правильно сконфигурированные маршрутизаторы.

В смысле, что этот Linksys сконфигурирован неправильно?

service iptables stop

Ребят, вы там как всё нормально? Голова не болит ?

RSS-материал