The OpenNET Project / Index page

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

Проброс IPTV-трафика в локальную сеть при помощи OpenBSD и пакетного фильтра PF
Возникла необходимость обеспечения возможности просмотра 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
 
22.02.2011 , Источник: http://undeadly.org/cgi?action=arti...
Ключи: igmp, multicast, iptv, pf, openbsd, gateway / Лицензия: CC-BY
Раздел:    Корень / Администратору / Сетевая подсистема, маршрутизация / Пакетные фильтры и фаерволы / Пакетный фильтр в FreeBSD: ipfw, IP-Filter

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, Анонимко, 02:37, 23/02/2011 [ответить] [смотреть все]
  • +/
    Хочу использовать технологию для доставки сигнала по своим (не мультимедиа) протоколам.
    Что для этого нужно с точки аппаратной стороны и что нужно научиться понимать?

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

     
  • 1.2, mma, 10:27, 23/02/2011 [ответить] [смотреть все]
  • +/
    а зачем multicast_router и net.inet.ip.mforwarding когда трафик всеравно проксируется igmpproxy. Помоему оно тут лишнее
     
     
  • 2.4, banzai, 06:31, 24/02/2011 [^] [ответить] [смотреть все]
  • +/
    Нет. IGMP прокси, проксирует только igmp запросы.
    Получает запрос с внутренней сети, и подписывается на поток снаружи и добавляет маршрут в таблицу маршрутизации. ( можно посмотреть netstat -g ). Т.е. до клиента бежит multicast трафик.
    Скорее всего вы перепутали с udpxy, который как раз сам подписывается на поток и перегоняет его к вам уже по unicast.
     
     
  • 3.8, mma, 18:20, 24/02/2011 [^] [ответить] [смотреть все]
  • +/
    multicast_router не нужен точно. А вот forward нужен, тут я ошибся
     
  • 1.3, Аноним, 13:00, 23/02/2011 [ответить] [смотреть все]
  • +/
    Автор! Напишите версию OpenBSD, пожалуйста, на которой вы это делали.
     
  • 1.5, unscrubber, 07:33, 24/02/2011 [ответить] [смотреть все]  
  • +/
    у меня такое решение на FreeBSD 7 серии работает и давно уже более года , раньш... весь текст скрыт [показать]
     
  • 1.6, АнанистМус, 11:13, 24/02/2011 [ответить] [смотреть все]  
  • +/
    udpxy ни как не осилить?
    По дефолту 16 клиентво на один процесс.
     
     
  • 2.7, unscrubber, 11:30, 24/02/2011 [^] [ответить] [смотреть все]  
  • +/
    этому (udpxy) порту всего 13 месяцев, igmpproxy был доступен раньше.
    ну и они разные вещи делают вообщето.
    схожие, но udp и http раздача клиентам в локалкеэто не одно и тоже
     
     
  • 3.14, Leshka, 18:27, 01/03/2011 [^] [ответить] [смотреть все]  
  • +/
    Что-то я в свое время не осилил igmpproxy. На мой взгляд для локалки не будет заметно разницы между udpxy и igmpproxy по объему генерируемого трафика.
     
  • 1.12, FSA, 06:57, 27/02/2011 [ответить] [смотреть все]  
  • +/
    Тема заинтересовала, но у меня всё гораздо проще. IPTV идёт через ADSL модем. С модема убраны все разделдения портов на группы. Интернет настроен через PPPoE в модеме. VPI/VCI с потоком в режиме бридж, так же как и управляющий канал для приставки.
    Из неприятного - приходится отказаться от DHCP. Точнее оно присутствует из-за управляющего канала и выдаёт хитрые адреса с медленным интернетом. Так что при отсутствии приставки можно просто убрать управляющий канал, а при её наличии вбивать адреса устройств руками.
    Ещё встречался с проблемой, что некоторые каналы идут с 200 номера порта. Приходится играть с файерволом и перенаправлять их на порт выше 1024.
     
     
  • 2.13, Alexander Sheiko, 19:04, 27/02/2011 [^] [ответить] [смотреть все]  
  • +/
    Укртелеком? Если нет приставки и нужно смотреть передачи на локальном компе, стоящем за опенроутером - как вам удалось всё это сконфигурировать?
     
  • 1.16, _KUL, 19:21, 24/03/2012 [ответить] [смотреть все]  
  • +/
    Проброс IPTV для линукса, в примере используется Debian, может кому пригодиться

    http://rukul.ru/system-setting/linux-debian-проброс-multicast-iptv-пробросить

     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor