IPTV = igmpproxy + IPtables

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Умираю
проходил мимо

IPTV = igmpproxy + IPtables

Непрочитанное сообщение Умираю » 2009-11-28 19:21:46

Проблемма такова, есть 2 интерфеса:

eth0 - Локальная сеть 192.168.100.0/24, ШЛЮЗ 192.168.100.3(тут и стоит ИГМП прокся+иптабляс)
eth1 - Сеть вышестоящего провайдера. 172.20.20.0/24 172.20.21.0/24 172.20.22.0/24 172.20.23.0/24 172.20.24.0/24 172.20.25.0/24

Вышестоящий провайдер предоставляет IPTV своей сети. Хочу запроксить себе в сеть.

ПРОБЛЕМА:
1. Не знаю подсети, адреса сервера вещания видео.
2. Я устал бегать с бубном.

Скачав у вышестоящего провайдера ЛИСТ с каналами(84) Открыл с помощью редактора увидел:

Код: Выделить всё

#EXTINF:0,ТВ 3 
udp://@234.5.2.14:20000
#EXTINF:0,7TV
udp://@234.5.2.13:20000
#EXTINF:0,MTV rus
udp://@234.5.2.15:20000
#EXTINF:0,Euronews
udp://@234.5.2.16:20000
#EXTINF:0,Столица
udp://@234.5.2.17:20000
#EXTINF:0,Style
udp://@234.5.2.18:20000
#EXTINF:0,2x2
udp://@234.5.2.41:20000
#EXTINF:0,TV Club
udp://@234.5.2.42:20000
#EXTINF:0,Eurosport
udp://@234.5.2.100:20000
#EXTINF:0,Eurosport2
udp://@234.5.2.101:20000
#EXTINF:0,РБК
udp://@234.5.2.104:20000
#EXTINF:0,MTV-Hits
udp://@234.5.2.108:20000
#EXTINF:0,Extreme Sports
Так вот igmpproxy.conf

Код: Выделить всё

quickleave
phyint eth1 upstream ratelimit 0 threshold 1

        #altnet 10.0.0.0/24
        #altnet 172.20.0.0/24
        #altnet 192.168.100.0/24
        altnet 234.0.0.0/8

#altnet 172.20.0.0/16
#altnet 234.0.0.0/8
#altnet 234.5.0.0/16
phyint eth0 downstream ratelimit 0 threshold 1
Правила которые добовляю:

Код: Выделить всё

iptables -A INPUT -p igmp -j ACCEPT
iptables -A FORWARD -s 172.20.0.0/16 -p udp -j ACCEPT
iptables -A INPUT -i eth1 -d 234.5.0.0/16 -j ACCEPT

modprobe ipt_TTL
iptables -t filter -A INPUT -d 234.0.0.0/240.0.0.0 -i eth1 -j ACCEPT
iptables -t filter -A INPUT -s 234.0.0.0/240.0.0.0 -i eth1 -j ACCEPT
iptables -t filter -A FORWARD -d 234.0.0.0/240.0.0.0 -j ACCEPT
iptables -t filter -A FORWARD -s 234.0.0.0/240.0.0.0 -j ACCEPT
iptables -t mangle -A PREROUTING -d 234.0.0.0/240.0.0.0 -p udp -j TTL --ttl-inc 1
После того как подключаюсь ИПТВ_плеером, вот:
http://p-t-k.ru/soft/IpTvPlayer-setup.exe IPTV Player v.0.28.1
Регистрация
http://p-t-k.ru/soft/igmp_v2.reg
Лист
http://p-t-k.ru/soft/PTK_IPTV-v2.m3u

После чего, tcpdump'ом на инт. eth0(внутренний интерфейс) наблюдаю вот такую вещь:

Код: Выделить всё

# tcpdump -vvv -ni eth0 igmp
18:32:27.720733 IP (tos 0x0, ttl 1, id 58, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.142 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_in { }]
18:47:05.665199 IP (tos 0x0, ttl 1, id 21833, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.154 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 224.0.0.252 to_in { }]
18:47:05.683735 IP (tos 0x0, ttl 1, id 21835, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.154 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 224.0.0.252 to_in { }]
18:50:21.696409 IP (tos 0x0, ttl 1, id 33295, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.39 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_in { }]
18:50:22.214082 IP (tos 0x0, ttl 1, id 33300, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.39 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_in { }]
18:50:24.611859 IP (tos 0x0, ttl 1, id 22778, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.112 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_ex { }]
18:50:24.629462 IP (tos 0x0, ttl 1, id 22781, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.112 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_ex { }]
19:00:37.061177 IP (tos 0x0, ttl 1, id 32295, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.150 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_ex { }]
19:00:37.103983 IP (tos 0x0, ttl 1, id 32297, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.150 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 224.0.0.251 to_ex { }]
19:00:37.616225 IP (tos 0x0, ttl 1, id 32310, offset 0, flags [none], proto IGMP (2), length 48, options (RA)) 192.168.100.150 > 224.0.0.22: igmp v3 report, 2 group record(s) [gaddr 239.255.255.250 to_ex { }] [gaddr 224.0.0.251 to_ex { }]
19:00:52.095040 IP (tos 0x0, ttl 1, id 471, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.106.115 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_ex { }]
19:00:52.635721 IP (tos 0x0, ttl 1, id 472, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.106.115 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_ex { }]
19:01:06.746981 IP (tos 0x0, ttl 1, id 502, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 169.254.104.120 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_ex { }]
19:01:07.070614 IP (tos 0x0, ttl 1, id 503, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 169.254.104.120 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.255.255.250 to_ex { }]
19:02:46.428853 IP (tos 0x0, ttl 1, id 39883, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.116 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_ex { }]
19:02:47.181992 IP (tos 0x0, ttl 1, id 39893, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.116 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_ex { }]
19:03:09.551296 IP (tos 0x0, ttl 1, id 41950, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.116 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_in { }]
19:03:10.182496 IP (tos 0x0, ttl 1, id 41985, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.116 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_in { }]
19:03:11.603161 IP (tos 0x0, ttl 1, id 42025, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.116 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_ex { }]
19:03:12.182533 IP (tos 0x0, ttl 1, id 42046, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.116 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 239.192.152.143 to_ex { }]
^[[A^[[A19:15:45.564279 IP (tos 0x0, ttl 1, id 2705, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.154 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 224.0.0.252 to_ex { }]
19:15:45.573680 IP (tos 0x0, ttl 1, id 2706, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.154 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 224.0.0.252 to_in { }]
19:15:45.725228 IP (tos 0x0, ttl 1, id 2712, offset 0, flags [none], proto IGMP (2), length 40, options (RA)) 192.168.100.154 > 224.0.0.22: igmp v3 report, 1 group record(s) [gaddr 224.0.0.252 to_ex { }]

И тд... два дня и не получается... КУДА копать, подскажите плз.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.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/

sparhawk
проходил мимо
Сообщения: 1
Зарегистрирован: 2009-12-20 10:54:10

Re: IPTV = igmpproxy + IPtables

Непрочитанное сообщение sparhawk » 2009-12-20 12:02:34

Код: Выделить всё

iptables -t filter -A INPUT -d 234.0.0.0/240.0.0.0 -i eth1 -j ACCEPT
По-моему, надо разрешить форвардинг на 224.0.0.0/4.
Еще не уверен, работает ли igmpproxy с IGMPv3 - нигде про это не сказано, в исходниках разбираться не стал.