Трансляция IPTV через сервер Debian/Ubuntu Linux в локальную сеть

Posted on 07/20/2010 by   |   Filed under templates, internet    Comments 11

Имеется сервер под linux, раздающий интернет в свою локальную сеть.

Задача: настроить возможность просмотра iptv в своей локалке.

Одним из вариантов решения является использование udpxy - сервера, который принимает multicast поток, идущий по UDP-протоколу, и отдает его по запросу со стороны компьютера локальной сети уже по TCP-протоколу.

Установку производим под root-ом (для Ubuntu: sudo su , для Debian: su root ).

Устанавливаем build-essential (необходим для сборки пакетов из исходников):

apt-get install build-essential

Добавим маршрут к подсети, откуда ведется трансляция. Для псковлайна маршрут выглядит так:

route add -net 239.1.0.0 netmask 255.255.0.0 dev eth0

где eth0 - интерфейс, смотрящий во внешнюю сеть.

Качаем udpxy отсюда: udpxy.1.0-Chipmunk-13.tgz или здесь

Копируем на сервер, затем распаковываем:

tar -xzvf udpxy.1.0-Chipmunk-13.tgz

Заходим в папку:

cd udpxy-1.0-Chipmunk-13

Устанавливаем udpxy:

make
make install

Перемещаем исполняемый файл udpxy, например в /usr/local/sbin/ :

mv udpxy /usr/local/sbin/

Запускаем:

/usr/local/sbin/udpxy -a ra0 -m eth0 -p 8888 -S -l /var /log/udpxy.log -B 2048K -c 2

где:

  • -a - интерфейс, который будет слушать udpxy в ожидании tcp-запросов (внутренняя сетевая карта);
  • -m - интерфейс, на который приходит мультикаст (внешняя сетевая карта);
  • -p - tcp-порт, на котором висит udpxy;
  • -B - размер буфера;
  • -S - вести статистику соединений;
  • -l - указание пути к файлу логов.
  • -c - колличество клиентов, имеющих возможность одновременно использовать ip-tv.

Добавляем в автозагрузку маршрут и udpxy:

echo "route add -net 239.1.0.0 netmask 255.255.0.0 dev eth0">> /etc/rc.local
echo "/usr/local/sbin/udpxy -a ra0 -m eth0 -p 8888 -S -l /var/log/udpxy.log -B 2048K -c 2">> /etc /rc.local

Теперь качаем плейлист:

wget http://pskovline.tv/iptv.m3u

и редактируем плейлист командой:

sed -e 's/^udp://@/http://192.168.1.1:8888/udp//' -i iptv.m3u

где 192.168.1.1 - ip-адрес сервера с udpxy. Т.е. этой командой преобразуем ссылки в плейлисте из вида

«udp:@239.1.3.234:1234»

в

«http: 192.168.1.1:8888/udp/239.1.3.234:1234»

Теперь можно открывать преобразованный плейлист плеером vlc на компьютерах в локальной сети.

Источник: http://wiki.pskovline.ru/tv/udpxy

Image Gallery

Services Overview

Curabitur sed urna id nunc pulvinar semper. Nunc sit amet tortor sit amet lacus sagittis posuere cursus vitae nunc.Etiam venenatis, turpis at eleifend porta, nisl nulla bibendum justo.

Contact Us

Nullam quam lorem, tristique non vestibulum nec, consectetur in risus. Aliquam a quam vel leo gravida gravida eu porttitor dui.

Address: 1458 TemplateAccess, USA
Telephone: +123-1234-5678
FAX: +458-4578
Others: +301 - 0125 - 01258
E-mail: mail@yoursitename.com