Мой Вам совет . Откажитесь от IGMPproxy, Под FreeBsd он не cтабилен, падает или еще хуже машину намертво вешает . Много перепробовал, остановился на udpxy. Про настройку можно почитать http://darkbsd.net/index.php/article/35 ... eebsd.htmlfe_nix_666 писал(а):Люди у кого получилось заставить работать igmpproxy. Поделитесь конфигом, а то не работает вообще(((
FreeBSD 8.0 + IPTV + igmpproxy
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- проходил мимо
Re: FreeBSD 8.0 + IPTV + igmpproxy
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- проходил мимо
Re: FreeBSD 8.0 + IPTV + igmpproxy
Предварительно проверяем наличие IPTV на порту !!!
Работает , отлично , и на ноуте, который за DIR300 . И на компе .
с таким набором ... нащупал ...
Схема .
inet - (em0)Freebsd(rl1_10.11.6.200/23)
/
switch(гавно) ---------- winXP (10.11.6.40/23)
|
(10.11.7.200/23) dir300(192.168.200.200/24) - winXP(192.168.200.201/24)
8.0-RELEASE-p2 FreeBSD 8.0-RELEASE-p2 #2 - на 7.2 тот же набор - НЕ пошел !
набрел в статье , мол таки да ...
#ядро
### igmp
options MROUTING
### POLLING
options DEVICE_POLLING
options HZ=1000
# --------
igmpproxy - ставил из портов .
cat /usr/local/etc/igmpproxy.conf |grep -Evi '^#|^$'
quickleave
phyint em0 upstream ratelimit 0 threshold 1
altnet 10.5.200.1/32
# 10.5.200.1/32 - Freebsd провайдера у Вас другой , (не уверен , нужно ли ... )
# но
# tcpdump -vvv -nnpi rl1
# 23:05:48.488247 IP (tos 0xe0, ttl 62, id 0, offset 0, flags [DF], proto UDP (17), length 1344)
# 10.5.200.1.49152 > 238.0.16.41.1234: [no cksum] UDP, length 1316
### tcpdump -nnpi em0
#23:46:13.113268 IP 10.5.200.1.49152 > 238.0.16.41.1234: UDP, length 1316
## собсно поток .
phyint rl1 downstream ratelimit 0 threshold 1
phyint rl0 disabled
phyint ng0 disabled
phyint lo0 disabled
phyint plip0 disabled
# необходимо disabled - на ВСЕХ не нужных интерфейсах!
# --------------------------------- end /usr/local/etc/igmpproxy.conf
# === ipfw фильтрация (топор) (в гавно-свитч еще локалка была включена ...)
table\(33\) - em0_ip(внешний) и rl1_ip(внутренний)
/sbin/ipfw -q add 746 pass igmp from table\(33\) to 224.0.0.0/4
#/sbin/ipfw -q add 750 drop igmp from any to 224.0.0.0/4 in via rl1
#
#ващето , достатодчно кажется 224.0.0.2/32 ну мож еще 224.0.0.1/32
# лишнее провайдер обрезает . * сноска1 (в PS !)
#___ PF !!! (Natит , без этих строк - не работало .)
# less /etc/pf.conf
pass in proto igmp all allow-opts
pass out proto igmp all allow-opts
( process , его автозапуск rc.local
###### ps auwx |grep -i igmp
root 1054 0,0 0,1 3284 1100 v0- S 9:57 0:00,77 /usr/local/sbin/igmpproxy /usr/local/etc/igmpproxy.conf
#######less /usr/local/etc/rc.d/rc-local.sh
#igmpproxy
/usr/local/sbin/igmpproxy /usr/local/etc/igmpproxy.conf &
# - (амперсант в конце строки ... )
)
##### TCPDUMP
#rl1 (внутренний ) tcpdump -nnpi rl1 | grep -i 'igmp'
#- клацаю по каналу с WinXP 10.11.6.40
23:20:50.376602 IP 10.11.6.40 > 224.0.0.2: igmp leave 238.0.16.32
23:20:50.377349 IP 10.11.6.200 > 238.0.16.32: igmp query v2 [gaddr 238.0.16.32]
23:20:50.614001 IP 10.11.6.40 > 238.0.16.41: igmp v2 report 238.0.16.41
23:20:51.600241 IP 10.11.6.40 > 238.0.16.41: igmp v2 report 238.0.16.41
23:20:52.600325 IP 10.11.6.40 > 238.0.16.41: igmp v2 report 238.0.16.41
#em0 (внешний) tcpdump -nnpi em0 | grep -i 'igmp'
#- переключаю канал WinXP 10.11.6.40
23:27:00.550944 IP 99.99.99.200 > 224.0.0.2: igmp leave 238.0.16.39
23:27:00.567214 IP 99.99.99.254 > 238.0.16.39: igmp query v2 [max resp time 10] [gaddr 238.0.16.39]
23:27:00.685212 IP 99.99.99.200 > 238.0.16.27: igmp v2 report 238.0.16.27
23:27:00.745008 IP 99.99.99.254 > 238.0.16.39: igmp query v2 [max resp time 10] [gaddr 238.0.16.39]
## IPTVplayer на 2-х компах TRAFSHOW
10.5.200.1..49152 238.0.16.41..1234 udp 8211840 348364
10.5.200.1..49152 238.0.16.24..1234 udp 3338496 137088
Удачи
PS
INET - dlink DES-3028 провайдера
на влане включен igmp_snooping
create mcast_filter_profile profile_id 1 profile_name qqq
create mcast_filter_profile profile_id 9 profile_name test
config mcast_filter_profile profile_id 1 add 224.0.0.2-224.0.0.2
(**сноска1 = !!! работает ... если открыть 224.0.0.0/24 - пров отключит за ALL GROUPS ! )
config mcast_filter_profile profile_id 9 add 238.0.0.0-238.255.255.255 (тут мультик ... )
show limited_multicast_addr ports 24 (мой)
Max Multicast Filter Group:
Port: 24
Profile Id: 1,9
Работает , отлично , и на ноуте, который за DIR300 . И на компе .
с таким набором ... нащупал ...
Схема .
inet - (em0)Freebsd(rl1_10.11.6.200/23)
/
switch(гавно) ---------- winXP (10.11.6.40/23)
|
(10.11.7.200/23) dir300(192.168.200.200/24) - winXP(192.168.200.201/24)
8.0-RELEASE-p2 FreeBSD 8.0-RELEASE-p2 #2 - на 7.2 тот же набор - НЕ пошел !
набрел в статье , мол таки да ...
#ядро
### igmp
options MROUTING
### POLLING
options DEVICE_POLLING
options HZ=1000
# --------
igmpproxy - ставил из портов .
cat /usr/local/etc/igmpproxy.conf |grep -Evi '^#|^$'
quickleave
phyint em0 upstream ratelimit 0 threshold 1
altnet 10.5.200.1/32
# 10.5.200.1/32 - Freebsd провайдера у Вас другой , (не уверен , нужно ли ... )
# но
# tcpdump -vvv -nnpi rl1
# 23:05:48.488247 IP (tos 0xe0, ttl 62, id 0, offset 0, flags [DF], proto UDP (17), length 1344)
# 10.5.200.1.49152 > 238.0.16.41.1234: [no cksum] UDP, length 1316
### tcpdump -nnpi em0
#23:46:13.113268 IP 10.5.200.1.49152 > 238.0.16.41.1234: UDP, length 1316
## собсно поток .
phyint rl1 downstream ratelimit 0 threshold 1
phyint rl0 disabled
phyint ng0 disabled
phyint lo0 disabled
phyint plip0 disabled
# необходимо disabled - на ВСЕХ не нужных интерфейсах!
# --------------------------------- end /usr/local/etc/igmpproxy.conf
# === ipfw фильтрация (топор) (в гавно-свитч еще локалка была включена ...)
table\(33\) - em0_ip(внешний) и rl1_ip(внутренний)
/sbin/ipfw -q add 746 pass igmp from table\(33\) to 224.0.0.0/4
#/sbin/ipfw -q add 750 drop igmp from any to 224.0.0.0/4 in via rl1
#
#ващето , достатодчно кажется 224.0.0.2/32 ну мож еще 224.0.0.1/32
# лишнее провайдер обрезает . * сноска1 (в PS !)
#___ PF !!! (Natит , без этих строк - не работало .)
# less /etc/pf.conf
pass in proto igmp all allow-opts
pass out proto igmp all allow-opts
( process , его автозапуск rc.local
###### ps auwx |grep -i igmp
root 1054 0,0 0,1 3284 1100 v0- S 9:57 0:00,77 /usr/local/sbin/igmpproxy /usr/local/etc/igmpproxy.conf
#######less /usr/local/etc/rc.d/rc-local.sh
#igmpproxy
/usr/local/sbin/igmpproxy /usr/local/etc/igmpproxy.conf &
# - (амперсант в конце строки ... )
)
##### TCPDUMP
#rl1 (внутренний ) tcpdump -nnpi rl1 | grep -i 'igmp'
#- клацаю по каналу с WinXP 10.11.6.40
23:20:50.376602 IP 10.11.6.40 > 224.0.0.2: igmp leave 238.0.16.32
23:20:50.377349 IP 10.11.6.200 > 238.0.16.32: igmp query v2 [gaddr 238.0.16.32]
23:20:50.614001 IP 10.11.6.40 > 238.0.16.41: igmp v2 report 238.0.16.41
23:20:51.600241 IP 10.11.6.40 > 238.0.16.41: igmp v2 report 238.0.16.41
23:20:52.600325 IP 10.11.6.40 > 238.0.16.41: igmp v2 report 238.0.16.41
#em0 (внешний) tcpdump -nnpi em0 | grep -i 'igmp'
#- переключаю канал WinXP 10.11.6.40
23:27:00.550944 IP 99.99.99.200 > 224.0.0.2: igmp leave 238.0.16.39
23:27:00.567214 IP 99.99.99.254 > 238.0.16.39: igmp query v2 [max resp time 10] [gaddr 238.0.16.39]
23:27:00.685212 IP 99.99.99.200 > 238.0.16.27: igmp v2 report 238.0.16.27
23:27:00.745008 IP 99.99.99.254 > 238.0.16.39: igmp query v2 [max resp time 10] [gaddr 238.0.16.39]
## IPTVplayer на 2-х компах TRAFSHOW
10.5.200.1..49152 238.0.16.41..1234 udp 8211840 348364
10.5.200.1..49152 238.0.16.24..1234 udp 3338496 137088
Удачи
PS
INET - dlink DES-3028 провайдера
на влане включен igmp_snooping
create mcast_filter_profile profile_id 1 profile_name qqq
create mcast_filter_profile profile_id 9 profile_name test
config mcast_filter_profile profile_id 1 add 224.0.0.2-224.0.0.2
(**сноска1 = !!! работает ... если открыть 224.0.0.0/24 - пров отключит за ALL GROUPS ! )
config mcast_filter_profile profile_id 9 add 238.0.0.0-238.255.255.255 (тут мультик ... )
show limited_multicast_addr ports 24 (мой)
Max Multicast Filter Group:
Port: 24
Profile Id: 1,9
- ttys
- *BSD
- Сообщения: 402
- Зарегистрирован: 2009-06-26 8:37:11
- Откуда: Ростов-на-Дону
- Контактная информация:
Re: FreeBSD 8.0 + IPTV + igmpproxy
нах тебе шейпер от pf? или он работает вместе с IPFIREWALL?GRooVE писал(а): Ядро:Код: Выделить всё
options ALTQ options ALTQ_CBQ options ALTQ_RED options ALTQ_RIO options ALTQ_HFSC options ALTQ_PRIQ options ALTQ_NOPCC options NETGRAPH options NETGRAPH_ETHER options NETGRAPH_SOCKET options NETGRAPH_TEE options NETGRAPH_MPPC_ENCRYPTION options NETGRAPH_BPF options NETGRAPH_IFACE options NETGRAPH_KSOCKET options NETGRAPH_PPP options NETGRAPH_PPTPGRE options NETGRAPH_TCPMSS options NETGRAPH_VJC options NETGRAPH_ONE2MANY options NETGRAPH_RFC1490 options NETGRAPH_TTY options NETGRAPH_UI options IPFIREWALL options IPFIREWALL_NAT options IPFIREWALL_VERBOSE options IPFIREWALL_VERBOSE_LIMIT=100 options IPFIREWALL_FORWARD options IPFIREWALL_DEFAULT_TO_ACCEPT options IPDIVERT options DUMMYNET options MROUTING options DEVICE_POLLING options HZ=2000 options RADIX_MPATH options LIBALIAS options ROUTETABLES=2
-
- проходил мимо
Re: FreeBSD 8.0 + IPTV + igmpproxy
Чуваки, я решил проблему!!!
FreeBSD 8.2-RELEASE, igmpproxy-0.1_1,1 из портов. ipf, ipnat. Ядро собрано с нужными опциями.
igmpproxy настраивал по инструкциям, всё было правильно и должно было работать, но не работало.
Проблему решила установка sysctl net.inet.igmp.sendra=0 (было 1).
Теперь полет нормальный.
Удачи!
FreeBSD 8.2-RELEASE, igmpproxy-0.1_1,1 из портов. ipf, ipnat. Ядро собрано с нужными опциями.
igmpproxy настраивал по инструкциям, всё было правильно и должно было работать, но не работало.
Проблему решила установка sysctl net.inet.igmp.sendra=0 (было 1).
Теперь полет нормальный.
Удачи!
-
- рядовой
- Сообщения: 15
- Зарегистрирован: 2011-04-21 14:51:59
Re: FreeBSD 8.0 + IPTV + igmpproxy
Народ! А победил кто-нибудь глухие зависоны сервера с igmpproxy? Лично у меня проблема такая... За шлюзом с igmpproxy стоит сервер IPTV, который забирает порядка сотни каналов у прова через этот шлюз и транслирует их хомячкам в сети. Так вот, с налёту всё работает нормально, каналы забираются и всё работает, но... При выключении сервера IPTV или "killall vlc" шлюз виснет наглухо. Пробовал перед перезагрузкой IPTV гасить igmpproxy - виснет от раза к разу. Сервак стоит далеко - не набегаешься reset нажимать Сейчас вот всё работает "не дыша", но, если что - опять бежать... Мож, есть рецепты? На серваке freebsd 7.4 (на 8.2 почему-то не поднялось нормально), igmpproxy из портов, "левые" интерфейсы в его конфиге загашены. Может, есть что-то другое на замену igmpproxy? Мне нужен только проброс igmp с одного интерфейса в другой. Причём на виртуальной машине не удалось получить такой же эффект, зараза....
- VampireNF
- ефрейтор
- Сообщения: 60
- Зарегистрирован: 2010-07-27 20:28:31
- Откуда: Санкт-Петербург
Re: FreeBSD 8.0 + IPTV + igmpproxy
Доброго всем времени суток! В продолжении темы про igmpproxy, у меня такая проблема: работал iptv в тестовом режиме и всё было прекрасно... до завершения теста. После теста большинство каналов стало зашифрованными, да для работы понадобился ViewRight PC Player. Остались 18 не зашифрованных каналов. Суть проблемы. Раньше всё работало через udpxy, но по понятным причинам такой подход более не состоятелен. Было решено настраивать igmpproxy. Дело не завелось. Тогда чтобы удостоверится, что IPTV вообще кажет на сервере был запущен VLC и в него закинут список не зашифрованных каналов, однако и он не захотел ничего показывать, хотя раньше работал, ведь он напрямую подключен к провайдеру. Вот что ловит tcpdump на интерфейсах.
Пробовал ставить переменную sysctl определяющую дефолтную версию IGMP в значение 2 (после этого перезагружался, т.к. наткнулся на англоязычный источник, что переменная вступает в силу до включения интерфейса и подключения к нему ИП), однако на внешнем интерфейсе всё равно 3-я версия летает. На сколько я понимаю провайдер работает на 2-ой. Но опять же повторюсь - раньше всё работало. На вопрос у провайдера "а работает ли тут у нас IPTV" они ответили "должно работать", многообещающе...
Код: Выделить всё
Проход пакетов через маршрутизатор:
re0 - внутренняя сеть
em0 - внешняя сеть
# tcpdump -n -i re0 port 1234 or igmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on re0, link-type EN10MB (Ethernet), capture size 96 bytes
23:47:26.733813 IP 192.168.173.1 > 233.166.172.91: igmp v2 report 233.166.172.91
23:47:27.100340 IP 192.168.173.1 > 233.166.172.91: igmp v2 report 233.166.172.91
23:47:34.740898 IP 192.168.173.1 > 224.0.0.2: igmp leave 233.166.172.91
23:47:34.741047 IP 192.168.173.254 > 233.166.172.91: igmp query v2 [gaddr 233.166.172.91]
23:47:43.141995 IP 192.168.173.254 > 233.166.172.91: igmp query v2 [gaddr 233.166.172.91]
23:47:53.175569 IP 192.168.173.254 > 233.166.172.91: igmp query v2 [gaddr 233.166.172.91]
^C^C
6 packets captured
302 packets received by filter
0 packets dropped by kernel
# /usr/local/etc/rc.d/igmpproxy status
igmpproxy is running as pid 40590.
# tcpdump -vv -n -i em0 port 1234 or igmp
tcpdump: listening on em0, link-type EN10MB (Ethernet), capture size 96 bytes
23:47:26.866791 IP (tos 0xc0, ttl 1, id 1936, offset 0, flags [DF], proto IGMP (2), length 40, options (RA))
10.82.198.109 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 233.166.172.91 to_ex { }]
23:47:27.072764 IP (tos 0xc0, ttl 1, id 3093, offset 0, flags [DF], proto IGMP (2), length 40, options (RA))
10.82.198.109 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 233.166.172.91 to_ex { }]
23:47:34.938885 IP (tos 0xc0, ttl 1, id 39642, offset 0, flags [DF], proto IGMP (2), length 40, options (RA))
10.82.198.109 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 233.166.172.91 to_in { }]
23:47:37.162906 IP (tos 0xc0, ttl 1, id 57848, offset 0, flags [DF], proto IGMP (2), length 40, options (RA))
10.82.198.109 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 233.166.172.91 to_in { }]
^C
4 packets captured
158604 packets received by filter
0 packets dropped by kernel
-
- проходил мимо
Re: FreeBSD 8.0 + IPTV + igmpproxy
можешь и trafshow. лично я им пользовался,когда искал их сетку!GRooVE писал(а):Если есть возможность, покажите, пожалуйста, вывод tcpdump'а на внешнем и внутреннем интерфейсах в момент инициализации и уже во время просмотра IPTV.
Заранее благодарен!