The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Раздел полезных советов: Проброс IPTV-трафика в локальную се..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Проброс IPTV-трафика в локальную се..."  +/
Сообщение от auto_tips on 23-Фев-11, 02:37 
Возникла необходимость обеспечения возможности просмотра IPTV сразу на нескольких устройствах в домашней сети. Реализации данной схемы мешало то, что полученный от провайдера модем имел два раздельных порта для данных и для IPTV. Простейшим решением было бы закорачивание IPTV-порта в домашний коммутатор, но такая схема  нарушает принципы построения безопасных систем и сулит появление паразитного трафика. В связи с этим было решено организовать перенаправление IPTV-трафика через локальный шлюз, на котором используется пакетный фильтр PF и IGMP-прокси.

1. Включаем поддержку переброса между сетевыми интерфейсами мультикаст трафика, для OpenBSD:

   echo "multicast_router=YES" >> /etc/rc.conf.local

перезагружаем систему.

Активируем перенаправление мультисаст трафика:

   sysctl net.inet.ip.mforwarding=1

в /etc/sysctl.conf сохраняем настройку "net.inet.ip.mforwarding=1".

2. Устанавливаем пакет net/igmpproxy с реализацией igmp-прокси:

   pkg_add igmpproxy

Отображаем свои сетевые настройки в файле конфигурации /etc/igmpproxy.conf:

   quickleave
   altnet 0.0.0.0/0    # принимаем igmp-трафик из всех подсетей
   phyint vr2 upstream  ratelimit 0  threshold 1
   phyint vr0 downstream ratelimit 0  threshold 1
   phyint pppoe0 disabled

Добавляем запуск igmpproxy в /etc/rc.local, чтобы прокси запустился после перезагрузки.

3. Настраиваем параметры внешнего сетевого интерфейса, через который приходит IPTV-поток. Для работы  igmpproxy на интерфейсе должен быть IP-адрес, для получения которого обычно можно использовать DHCP или назначить вручную (бывают случаи привязки IP к MAC-адресу телеприставки, что потребует подмены MAC-адреса на сетевом интерфейсе шлюза).

4. Настраиваем правила для прохождения IGMP-трафика и multicast-потока в пакетном фильтре PF (в нашем случае - это UDP трафик на 5002 порт).  Основной проблемой, возникающей в процессе настройки, является то, что в IGMP пакетах используется опция протокола IP "Router Alert", которая по умолчанию вычищается из пакетов при использовании PF (для отключения чистки расширенных опций необходимо использовать параметр allow-opts). В pf.conf добавляем примерно следующее:

   LAN  = "vr0"
   IPTV = "vr2"

   block on $IPTV
   pass in on $IPTV inet proto udp from any to any port 5002
   pass on {$LAN, $IPTV} proto igmp allow-opts

URL: http://undeadly.org/cgi?action=article&sid=20110222002946
Обсуждается: http://www.opennet.ru/tips/info/2538.shtml

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от Анонимко on 23-Фев-11, 02:37 
Хочу использовать технологию для доставки сигнала по своим (не мультимедиа) протоколам.
Что для этого нужно с точки аппаратной стороны и что нужно научиться понимать?

Мне это видится как подписка на поток сигналов выбранного типа.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от mma on 23-Фев-11, 10:27 
а зачем multicast_router и net.inet.ip.mforwarding когда трафик всеравно проксируется igmpproxy. Помоему оно тут лишнее
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от Аноним email(??) on 23-Фев-11, 13:00 
Автор! Напишите версию OpenBSD, пожалуйста, на которой вы это делали.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от banzai on 24-Фев-11, 06:31 
Нет. IGMP прокси, проксирует только igmp запросы.
Получает запрос с внутренней сети, и подписывается на поток снаружи и добавляет маршрут в таблицу маршрутизации. ( можно посмотреть netstat -g ). Т.е. до клиента бежит multicast трафик.
Скорее всего вы перепутали с udpxy, который как раз сам подписывается на поток и перегоняет его к вам уже по unicast.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от unscrubber on 24-Фев-11, 07:33 
у меня такое решение на FreeBSD 7 серии работает и давно уже (более года), раньше правда igmpproxy в портах не было, щас все легко и просто.

по поводу конфигов, помоему у меня с 0.0.0.0/0 не работало, если такое наблюдается - можно перечислить как это у провайдера сделано например: altnet 10.0.0.0/8 и altnet 224.0.0.0/4

в PF использовал правила
mcast_ll= "10.0.0.0/8"
mcast_as= "224.0.0.0/4"
pass quick on {$int_if $ext_if} proto igmp to {$mcast_ll $mcast_as} allow-opts modulate state label "mcast"
pass quick on {$int_if $ext_if} proto udp to {$mcast_ll $mcast_as} port {1234, 9875} keep state label "mcast udp"

единственное  с чем не доконца разобрался - наблюдал много не очень нужных мне пакетов которые просто решил блокировать:
block in quick on $ext_if proto 103 all label "block in PIMv2 Cisco Hello spam"

а в целом отличный проксик, с ключом -d инфы выдает очень много и подробно (если чего не выходит то можно поколупатся и поанализировать), очень благодарен умельцам которые ее с линукса портировали.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от АнанистМус on 24-Фев-11, 11:13 
udpxy ни как не осилить?
По дефолту 16 клиентво на один процесс.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от unscrubber on 24-Фев-11, 11:30 
этому (udpxy) порту всего 13 месяцев, igmpproxy был доступен раньше.
ну и они разные вещи делают вообщето.
схожие, но udp и http раздача клиентам в локалкеэто не одно и тоже
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от mma on 24-Фев-11, 18:20 
multicast_router не нужен точно. А вот forward нужен, тут я ошибся
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

12. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от FSA email(ok) on 27-Фев-11, 06:57 
Тема заинтересовала, но у меня всё гораздо проще. IPTV идёт через ADSL модем. С модема убраны все разделдения портов на группы. Интернет настроен через PPPoE в модеме. VPI/VCI с потоком в режиме бридж, так же как и управляющий канал для приставки.
Из неприятного - приходится отказаться от DHCP. Точнее оно присутствует из-за управляющего канала и выдаёт хитрые адреса с медленным интернетом. Так что при отсутствии приставки можно просто убрать управляющий канал, а при её наличии вбивать адреса устройств руками.
Ещё встречался с проблемой, что некоторые каналы идут с 200 номера порта. Приходится играть с файерволом и перенаправлять их на порт выше 1024.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от Alexander Sheiko on 27-Фев-11, 19:04 
Укртелеком? Если нет приставки и нужно смотреть передачи на локальном компе, стоящем за опенроутером - как вам удалось всё это сконфигурировать?
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и п..."  +/
Сообщение от Leshka on 01-Мрт-11, 18:27 
Что-то я в свое время не осилил igmpproxy. На мой взгляд для локалки не будет заметно разницы между udpxy и igmpproxy по объему генерируемого трафика.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

16. "Раздел полезных советов: Проброс IPTV-трафика в локальную се..."  +/
Сообщение от _KUL (ok) on 24-Мрт-12, 19:21 
Проброс IPTV для линукса, в примере используется Debian, может кому пригодиться

http://rukul.ru/system-setting/linux-debian-проброс-multicast-iptv-пробросить-через-nat-в-лока

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру