IPtv multicast
-
altnet сейчас вообще ни на что не влияет. Это дело присутствует в коде, но до ума его не довели. Можно не париться и вообще в конфиге не указывать.
Давай ещё раз к твоему случаю.
1. Upstream и downstream должны быть правильно присвоены.
2. Маршрутизация должна вести на upstream.
У меня это работает. Должно работать и у тебя.
Теперь что должно работать: IGMP пакеты, принятые на downstream interface, должны быть странслированы на upstream interface. -
Как то еще странно ведет себя прокси проходит наружу только 3 пакета и все.
Потом только переустановка прокси и еще 3 пакета пройдетПрокси жадный по поводу железа?
Машинка П-133
-
Нет, совсем не жадный.
Я тебе отправил новый бинарник для 1.2.2. В нём igmp шлётся строго с upstream, не обращая внимания на маршрутизацию.
Запусти его пожалуйста с -d и весь debug зашли мне обратно.
Похоже мы тут спамим с тобой, может лучше по почте продолжим? -
ок
-
После получения net dump'ов от filosoff96 и немерянного числа безуспешных попыток понять что же происходит я похоже набрёл на правду. Все IGMP пакеты, генерируемые его проигрывателем имеют IP Router Alert Option в IP-заголовке, а pf на данный момент такие пакеты тупо молча игнорирует. Вобщем они даже не доходят до демона igmpproxy.
Пока выхода два:- найти плэйер, который не вставляет это дело в IP (
Edited: например, http://www.nsplayer.org/Download-4.html) - запретить pf (но это не опция, это так - для теста)…
Вопрос задан разработчикам, посмотрим, что ответят. (Edited: в 2.0 решено http://redmine.pfsense.org/issues/show/54 )
Вот такая фикня -((((
PS: filosoff, если не жалко пришли пожалуйста дамп того, что шлёт твой хост 192.168.0.99 - очень интересно. - найти плэйер, который не вставляет это дело в IP (
-
-
В pfSense 2.0 есть галочка "разрешать IP options", т.е. pf не будет отфильтровывать эти пакеты.
Как ведёт себя igmpproxy в 2.0 я понятия не имею. -
К своему великому удивлению я обнаружил эту опцию в своём 1.2.2
Идём на downstream interface в Rules, кликаем Edit и в Advanced options есть галочка "This allows packets with ip options to pass otherwise they are blocked by default i.e. with multicast routing/proxing." Отмечаем её, сохранить, применить и всё. Работает. -
Теперь бы еще резюме с полным процессом настройки. Мне например не понятно чего указывать в настройках igmpproxy в параметрах downstream и upstream.
-
Процесс очень прост. Upstream - это тот нитерфейс, на котором к тебе приходит мультикаст (провайдер я предполагаю, т.е. WAN).
Downstream - интерфейсы где хочешь видеть этот multicast трафик. На счёт altnet можно не заморачиваться, этот параметр сейчас игнорируется. Что в правилах будет разрешено, то и будет проходить. -
Что в правилах будет разрешено, то и будет проходить.
И чего в правилах нужно добавить для воркания ИП-ТВ? Типа фром 239.0.2.17 ту эни локал?
-
На LAN нужно прежде всего разрешить IGMP c LAN на Multicast address (типа 239.0.2.17) и указать вышеупомянутую опция в Advanced Options.
На WAN нужно разрешить с (кто вещает) на 239.0.2.17 -
Если на интерфейсе LAN Везде Any, этого достаточно?
На WAN нужно разрешить с 239.0.2.17 (он вещает) на 192.168.1.0/24 ? -
На LAN any to any достаточно (хоть это и самое идиотское правило), только флажок Options нужен для некоторых плэйеров.
На WAN "кто вещает" будет какой-то НЕмультикаст адрес от провайдера, destination будет как раз 239.0.2.17. Можно для теста попробовать from any to 224.0.0.0/4 - это охватит всех потенциальных "вещателей" -
ОК буду тестить. Спасибо за помощь.
-
Вопрос про dump еще актуален?
-
Да.
-
Все заработало!!!
поставил галку System>Advansed>Disables the PF scrubbing option which can sometimes interfere with NFS and PPTP traffic. и все пошло IPTV - работаетСделано на PFSense 1.2.2
Сейчас сделаю DUMP -
Глобально…
-
login as: root
Using keyboard-interactive authentication.
Password:
Access denied
Using keyboard-interactive authentication.
Password:*** Welcome to pfSense 1.2.2-pfSense on pfsense ***
LAN* -> rl0 -> 192.168.1.1
WAN* -> rl1 -> 192.168.0.197(DHCP)pfSense console setup
0) Logout (SSH only)
1) Assign Interfaces
2) Set LAN IP address
3) Reset webConfigurator password
4) Reset to factory defaults
5) Reboot system
6) Halt system
7) Ping host
8) Shell
9) PFtop
10) Filter Logs
11) Restart webConfigurator
12) pfSense PHP shell
13) Upgrade from console
14) Disable Secure Shell (sshd)Enter an option: 8
Tcpdump -ni rl0 igmp
Tcpdump: Command not found.
tcpdump -ni rl0 igmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on rl0, link-type EN10MB (Ethernet), capture size 96 bytes
21:02:00.809035 IP 192.168.1.10 > 239.255.255.250: igmp v2 report 239.255.255.250
21:02:02.309062 IP 192.168.1.10 > 239.255.0.149: igmp v2 report 239.255.0.149
21:02:14.989864 IP 192.168.1.10 > 224.0.0.2: igmp leave 239.255.0.149
21:02:14.990634 IP 192.168.0.1 > 239.255.0.149: igmp query v2 [max resp time 10] [gaddr 239.255.0.149]
21:02:14.996316 IP 10.255.189.193 > 239.255.0.149: igmp query v2 [max resp time 10] [gaddr 239.255.0.149]
21:02:15.351567 IP 192.168.1.10 > 239.255.0.147: igmp v2 report 239.255.0.147
21:02:15.809513 IP 192.168.1.10 > 239.255.0.147: igmp v2 report 239.255.0.147
21:02:15.989921 IP 192.168.0.1 > 239.255.0.149: igmp query v2 [max resp time 10] [gaddr 239.255.0.149]
21:02:15.994993 IP 10.255.189.193 > 239.255.0.149: igmp query v2 [max resp time 10] [gaddr 239.255.0.149]
21:02:21.852423 IP 192.168.1.10 > 224.0.0.2: igmp leave 239.255.0.147
21:02:21.852563 IP 192.168.0.1 > 239.255.0.147: igmp query v2 [max resp time 10] [gaddr 239.255.0.147]
21:02:21.858282 IP 10.255.189.193 > 239.255.0.147: igmp query v2 [max resp time 10] [gaddr 239.255.0.147]
21:02:22.213463 IP 192.168.1.10 > 239.255.0.148: igmp v2 report 239.255.0.148
21:02:22.309727 IP 192.168.1.10 > 239.255.0.148: igmp v2 report 239.255.0.148
21:02:22.851775 IP 192.168.0.1 > 239.255.0.147: igmp query v2 [max resp time 10] [gaddr 239.255.0.147]
21:02:22.855880 IP 10.255.189.193 > 239.255.0.147: igmp query v2 [max resp time 10] [gaddr 239.255.0.147]
21:02:26.687382 IP 192.168.1.10 > 224.0.0.2: igmp leave 239.255.0.148
21:02:26.687536 IP 192.168.0.1 > 239.255.0.148: igmp query v2 [max resp time 10] [gaddr 239.255.0.148]
21:02:26.694203 IP 10.255.189.193 > 239.255.0.148: igmp query v2 [max resp time 10] [gaddr 239.255.0.148]
21:02:27.106393 IP 192.168.1.10 > 239.255.1.126: igmp v2 report 239.255.1.126
21:02:27.309885 IP 192.168.1.10 > 239.255.1.126: igmp v2 report 239.255.1.126
21:02:27.687591 IP 192.168.0.1 > 239.255.0.148: igmp query v2 [max resp time 10] [gaddr 239.255.0.148]
21:02:27.691460 IP 10.255.189.193 > 239.255.0.148: igmp query v2 [max resp time 10] [gaddr 239.255.0.148]
21:02:31.790911 IP 192.168.1.10 > 224.0.0.2: igmp leave 239.255.1.126
21:02:31.791035 IP 192.168.0.1 > 239.255.1.126: igmp query v2 [max resp time 10] [gaddr 239.255.1.126]
21:02:31.796586 IP 10.255.189.193 > 239.255.1.126: igmp query v2 [max resp time 10] [gaddr 239.255.1.126]
21:02:32.113347 IP 192.168.1.10 > 239.255.0.145: igmp v2 report 239.255.0.145
21:02:32.310384 IP 192.168.1.10 > 239.255.0.145: igmp v2 report 239.255.0.145
21:02:32.790948 IP 192.168.0.1 > 239.255.1.126: igmp query v2 [max resp time 10] [gaddr 239.255.1.126]
21:02:32.796553 IP 10.255.189.193 > 239.255.1.126: igmp query v2 [max resp time 10] [gaddr 239.255.1.126]