Настройка igmpproxy Lanta-TV или Domolink-TV Тамбов.

6th Май 2010 | Метки: , , ,
Опубликовал: Andrey [rtty] Shidakov

Наши местные провайдеры начали транслировать IP-TV. Всё мое домашнее оборудование находится за сервером FreeBSD, который просто так пропускать мультикаст не будет. Для решения этой проблемы я использовал igmpproxy. Итак приступим к настройке:

1. Для начала надо убедиться, что ядро собрано с опцией

options         MROUTING

если нет, то пересобираем.

2. Устанавливаем igmpproxy из портов (очень желательно обновить порты):

cd /usr/ports/net/igmpproxy
make install clean

3. Конфигурационный файл igmpproxy (/usr/local/etc/igmpproxy.conf):

quickleave
 
phyint vlan101 upstream  ratelimit 0  threshold 1 # Вместо vlan101 введите имя вашего внешнего интерфейса
         # altnet 213.140.243.0/24 # Для домолинка
         altnet 10.0.0.0/8 # Для Ланта-ТВ
 
phyint vlan1 downstream  ratelimit 0  threshold 1 # Вместо vlan1 введите имя вашего локально интерфейса.
        altnet 192.168.37.0/24 # Ваша локальная сеть

4. Добавляем в /etc/sysctl.conf строку:

net.inet.igmp.sendra=0

Выполняем:

sysctl net.inet.igmp.sendra=0

5. Запускаем и проверяем что все впорядке:

igmpproxy -dv /usr/local/etc/igmpproxy.conf

6. Добавляем в /etc/rc.conf:

igmpproxy_enable="YES"

7. Запускаем:

service igmpproxy start

Если установлен фаервол PF, то разрешаем igmp трафик:

# $loc - внутренний интрфейс
pass in quick on $loc allow-opts
pass on $loc proto igmp all allow-opts
# $ext внешний интерфейс, $gw шлюз
pass out quick on $ext allow-opts
pass in quick on $ext reply-to($ext $gw) to 224.0.0.0/4
  1. denis
    30th Ноябрь 2010 в 14:06

    Настроил по твоей статье. Заметил такую фичу: при переключении канала, интерфейс уходит в даун и потом поднимается. Эту канитель с интрефейсом можно убрать? или оно только у меня?

  2. 1st Декабрь 2010 в 00:14

    Всмысле переключении канала? Какой интерфейс уходит в даун?

  3. denis
    9th Декабрь 2010 в 14:08

    Да, при переключении канала.
    Аплинк, на пару сек, потом поднимается.

  4. 10th Декабрь 2010 в 12:20

    Странно у меня все нормально было. Сейчас у меня проще — на свиче отдельный вилан и тегируемый порт на компе где смотрю. Без igmpproxy обхожусь ;)

  5. 24th Апрель 2011 в 16:44

    А зачем делать п.4? на что он влияет, хуже не будет?

  6. 27th Апрель 2011 в 20:11

    Dmitriy Kalinin, написал бы лучше что ты добавил в fw чтоб его не делать)

  7. atriel
    30th Май 2011 в 12:33

    freebsd 8.2 при запуске igmpproxy выдает:
    # igmpproxy -dv /usr/local/etc/igmpproxy.conf
    adding VIF, Ix 0 Fl 0x0 IP 0xfac7a8c0 sk0, Threshold: 1, Ratelimit: 0
    adding VIF, Ix 1 Fl 0x0 IP 0x9d4b97b2 nfe0, Threshold: 1, Ratelimit: 0
    There must be at least 2 Vif’s where one is upstream.

    И после фря тупо виснит =( помогает только ресет.
    С этим чтото сотворить реально ?

  8. Можете конфиг показать?
    судя по сообщению — у Вас ни один из интерфейсов не объявлен как апстрим

    Тупо виснет — процессор уходит в 100% или как?

Вы должны авторизоваться для отправки комментария.