• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

IPtv multicast

Scheduled Pinned Locked Moved Russian
270 Posts 50 Posters 353.9k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H
    HardSE
    last edited by Jun 30, 2009, 8:02 AM

    @Eugene:

    А в чём проблема?

    Если у Вас не возникло проблем с просмотром и настройкой IPTV через роутер на pfsense - выложите пожалуйста хотя бы коротенькую инструкцию как это сделать, спасибо!
    p.s. машина за роутером на WinXP SP3

    1 Reply Last reply Reply Quote 0
    • E
      Eugene
      last edited by Jun 30, 2009, 2:22 PM

      Нет, я не настраивал, пытаюсь понять, что хотите сделать.
      Где сервер, который мультикастит - на LAN или на WAN? и где машина принимающая? машина одна или несколько хотят принимать?

      http://ru.doc.pfsense.org

      1 Reply Last reply Reply Quote 0
      • H
        HardSE
        last edited by Jun 30, 2009, 8:19 PM Jun 30, 2009, 8:17 PM

        Сервер который мультикастит на WAN (сервер провайдера), адрес WAN (серый) получаю также у провайдера через DHCP. Также есть локалка дома за роутером (NAT) , соединены через свитч, т.е. LAN. Адреса раздаю через DHCP на системы WinXP и Vista (2 ноута). Пока настроить IPTV хотя бы на одной машине с WinXP.

        1 Reply Last reply Reply Quote 0
        • E
          Eugene
          last edited by Jun 30, 2009, 8:21 PM

          А как провайдер начинает давать Вам multicast? Вы должны послать IGMP-membership request? На какой IP провайдера идёт трафик?

          http://ru.doc.pfsense.org

          1 Reply Last reply Reply Quote 0
          • H
            HardSE
            last edited by Jul 1, 2009, 2:04 PM Jul 1, 2009, 7:43 AM

            Насколько я понял да, я должен послать IGMP-membership request , мой IP-адрес WAN (на роутре) такого вида 172.22.x.x , ip-адрес ноута в домашней сетке 192.168.0.15. Предполагаю что и IP-адрес сервера осуществляющий трансляцию IPTV также вида 172.22.x.x.
            Добавлено:
            Сеть из которой идет вещание у моего провайдера 224.0.0.0/4

            1 Reply Last reply Reply Quote 0
            • E
              Eugene
              last edited by Jul 3, 2009, 12:59 AM

              Нужно во-первых понять на какой-адрес идёт мультикаст 224.x.x.x для этого запускаем tcpdump на LAN примерно так
              tcpdump -i <lan interface="" name="">-n -s0 net 224.0.0.0/4
              Потом запускаем ваше приложение, которое должно брать TV и смотрим IGMP.
              Далее на этот IGMP адрес создаём правило на LAN
              Разрешить с сетки LAN IGMP протокол на наш 224.x.x.x
              Возможно заработает, если нет, то в-первых надо посмотреть на WAN:

              1. проходит ли IGMP запрос с LAN на WAN
              2. начинает ли Ваш провайдер мультикастить на Ваш сегмент сети.</lan>

              http://ru.doc.pfsense.org

              1 Reply Last reply Reply Quote 0
              • H
                HardSE
                last edited by Jul 3, 2009, 5:15 AM

                Насколько я понял из гугла , ядро должно быть скомпилировано с опцией MROUTING для возможности форварда мультикаст трафика, pfsense 1.2.3-RC1 - ей поддерживает? Где можно посмотреть опции с которыми скомпилировано ядро?
                tcpdump - вечером сделаю.

                1 Reply Last reply Reply Quote 0
                • S
                  Shraik
                  last edited by Jul 6, 2009, 6:04 AM

                  У меня еще хуже
                  интернет приходит по PPPoe
                  а локальная сеть в которой идет вещание IP-TV по DHCP

                  приходится прописывать
                  WAN = PPPoe  (интернет)

                  а локалка выпадает, т-к. на одну сетевуху pfsense не позволяет привесить DHCP +PPPoe

                  даже если получить адрес с помощью dhclient то управлять этой подсетью не получается.
                  Но это оставим на будущее.

                  Для начала если сказать что WAN =DHCP  то по идее для трансляции мультикаста надо настраивать igmpproxy что у меня тоже не получилось.

                  1 Reply Last reply Reply Quote 0
                  • H
                    HardSE
                    last edited by Jul 6, 2009, 9:10 AM

                    tcpdump на LAN интерфейсе поймал следующие пакеты:

                    12:54:58.919844 IP 192.168.1.15 > 224.0.0.22: igmp v3 report, 1 group record(s)
                    12:54:59.449206 IP 192.168.1.15 > 224.0.0.22: igmp v3 report, 1 group record(s)
                    12:55:00.467064 IP 192.168.1.15 > 224.0.0.22: igmp v3 report, 1 group record(s)

                    Создал правило для LAN разрешить IGMP протокол с 192.168.1.15 на 224.0.0.22 - не заработало.
                    на WAN интерфейсе tcpdump поймал следующие пакеты:

                    12:59:02.759448 IP 172.25.0.1 > 224.0.0.1: igmp query v2
                    12:59:10.164216 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                    12:59:10.165510 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                    12:59:10.166887 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                    12:59:10.168778 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                    12:59:10.170064 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42

                    как проверить что проходит IGMP запрос с LAN на WAN ?

                    1 Reply Last reply Reply Quote 0
                    • E
                      Eugene
                      last edited by Jul 6, 2009, 3:52 PM

                      Проверить просто - подержать подольше (минуты три) tcpdump на WAN и посомотреть проходят "igmp v3 report" или нет.
                      Можно глянуть на это правило: "Разрешить с сетки LAN IGMP протокол на наш 224.x.x.x"
                      лучше через```
                      pfctl -sr | grep <lan interface="" namve=""></lan>

                      По поводу мультикаст рутинга (видите PIM на WAN - провайдер хочет раутинг) - на pfSense это не заработает. Мы пытаемся работать, как простой клиент IGMP. Для этого необходимо и достаточно отправить IGMP membership request/report провайдеру и дальше пропустить multicast stream извне на LAN.
                      Давайте сначала попробуем IGMP победить, ибо без этого ничего не выйдет.

                      http://ru.doc.pfsense.org

                      1 Reply Last reply Reply Quote 0
                      • H
                        HardSE
                        last edited by Jul 7, 2009, 11:18 AM

                        Не проходят igmp v3 report - дампил больше 3х минут, ни один не попался…

                        1 Reply Last reply Reply Quote 0
                        • E
                          Eugene
                          last edited by Jul 7, 2009, 12:51 PM

                          А rule всё-таки не показали…
                          Ладно, "мы пойдём другим путём" (с) не моё.
                          Создайте Loadbalancer в Services->Loadbalancer Type=Gateway(failover) на интерфейсе WAN с мониторингом DefaultGatewayWAN.
                          Далее в созданном ранне правиле для IGMP поменяйте gateway с default на только что созданный Loadbalancer.
                          IGMP должны начать проходить с LAN на WAN. Если нет, то всё-таки нужен или скриншот правил на LAN, или pfctl -sr | grep<lan interface="" name=""></lan>

                          http://ru.doc.pfsense.org

                          1 Reply Last reply Reply Quote 0
                          • H
                            HardSE
                            last edited by Jul 8, 2009, 7:18 AM

                            Не не проходят IGMP, по чему непонятно…
                            Вот правила LAN
                            pass in quick on re0 inet proto udp from any port = bootpc to 255.255.255.255 port = bootps keep state label "allow access to DHCP server on LAN"
                            pass in quick on re0 inet proto udp from any port = bootpc to 192.168.1.1 port = bootps keep state label "allow access to DHCP server on LAN"
                            pass out quick on re0 inet proto udp from 192.168.1.1 port = bootps to any port = bootpc keep state label "allow access to DHCP server on LAN"
                            block drop in on ! re0 inet from 192.168.1.0/24 to any
                            block drop in on re0 inet6 from fe80::2e0:42ff:fe38:1b1 to any
                            pass out quick on re0 proto icmp all keep state label "let out anything from firewall host itself"
                            pass out quick on re0 all flags S/SA keep state label "let out anything from firewall host itself"
                            pass in quick on re0 inet from any to 192.168.1.1 flags S/SA keep state label "anti-lockout web rule"
                            pass in quick on re0 proto igmp all keep state label "USER_RULE: LAN_IGMP"
                            pass in quick on re0 inet from 192.168.1.0/24 to any flags S/SA keep state label "USER_RULE: Default LAN -> any"
                            pass in quick on re0 inet proto tcp from any to 127.0.0.1 port = ftp-proxy flags S/SA keep state label "FTP PROXY: Allow traffic to localhost"
                            pass in quick on re0 inet proto tcp from any to 127.0.0.1 port = ftp flags S/SA keep state label "FTP PROXY: Allow traffic to localhost"

                            1 Reply Last reply Reply Quote 0
                            • E
                              Eugene
                              last edited by Jul 8, 2009, 1:36 PM

                              Я не вижу loadbalancer'а в Ваших правилах.

                              http://ru.doc.pfsense.org

                              1 Reply Last reply Reply Quote 0
                              • H
                                HardSE
                                last edited by Jul 8, 2009, 1:52 PM

                                @Eugene:

                                Я не вижу loadbalancer'а в Ваших правилах.

                                Сорри, loadbalancer - создавал. И менял правило для LAN. Он создался с ip-адресом WAN интерфейса + 10 в последнем разряде, после этого я генерировал IGMP запросы? но по tcpdump -i <wan interface="" name="">-n -s0 net 224.0.0.0/4  -  ни один igmp v3 report так и не прошел. Чуть позже смогу выложить правила для LAN c loadbalancer-ом.</wan>

                                1 Reply Last reply Reply Quote 0
                                • H
                                  HardSE
                                  last edited by Jul 8, 2009, 4:05 PM

                                  Правила с включённым лоадбаленсером:

                                  pass in quick on re0 inet proto udp from any port = bootpc to 255.255.255.255 port = bootps keep state label "allow access to DHCP server on LAN"
                                  pass in quick on re0 inet proto udp from any port = bootpc to 192.168.1.1 port = bootps keep state label "allow access to DHCP server on LAN"
                                  pass out quick on re0 inet proto udp from 192.168.1.1 port = bootps to any port = bootpc keep state label "allow access to DHCP server on LAN"
                                  block drop in on ! re0 inet from 192.168.1.0/24 to any
                                  block drop in on re0 inet6 from fe80::2e0:42ff:fe38:1b1 to any
                                  pass out quick on re0 proto icmp all keep state label "let out anything from firewall host itself"
                                  pass out quick on re0 all flags S/SA keep state label "let out anything from firewall host itself"
                                  pass in quick on re0 inet from any to 192.168.1.1 flags S/SA keep state label "anti-lockout web rule"
                                  pass in quick on re0 proto igmp from any to <vpns>keep state label "NEGATE_ROUTE: Negate policy route for local network(s)"
                                  pass in quick on re0 route-to (fxp0 84.52.X.X) inet proto igmp all keep state label "USER_RULE: LAN_IGMP"
                                  pass in quick on re0 inet from 192.168.1.0/24 to any flags S/SA keep state label "USER_RULE: Default LAN -> any"
                                  pass in quick on re0 inet proto tcp from any to 127.0.0.1 port = ftp-proxy flags S/SA keep state label "FTP PROXY: Allow traffic to localhost"
                                  pass in quick on re0 inet proto tcp from any to 127.0.0.1 port = ftp flags S/SA keep state label "FTP PROXY: Allow traffic to localhost"</vpns>

                                  и то что удалось надампить на WAN - во время попыток посмотреть IPTV:

                                  19:59:28.773573 IP 172.25.0.1 > 224.0.0.1: igmp query v2
                                  19:59:30.174871 IP 172.25.0.1 > 239.255.10.60: igmp query v2 [max resp time 10] [gaddr 239.255.10.60]
                                  19:59:31.173620 IP 172.25.0.1 > 239.255.10.60: igmp query v2 [max resp time 30] [gaddr 239.255.10.60]
                                  19:59:34.228291 IP 172.25.0.1 > 239.255.10.60: igmp query v2 [max resp time 30] [gaddr 239.255.10.60]
                                  19:59:46.566442 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:02.286527 IP 172.25.0.1 > 224.0.0.13: PIMv2, Bootstrap, length 36
                                  20:00:02.287693 IP 172.25.0.1 > 224.0.0.13: PIMv2, Bootstrap, length 36
                                  20:00:13.530540 IP 192.168.90.22.37266 > 233.34.28.6.1001: UDP, length 1316
                                  20:00:15.865689 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:15.866983 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:15.883895 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:15.885180 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:15.886464 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:17.115696 IP 172.25.0.1 > 239.255.10.41: igmp query v2 [max resp time 10] [gaddr 239.255.10.41]
                                  20:00:18.111663 IP 172.25.0.1 > 239.255.10.41: igmp query v2 [max resp time 30] [gaddr 239.255.10.41]
                                  20:00:21.127125 IP 172.25.0.1 > 239.255.10.41: igmp query v2 [max resp time 30] [gaddr 239.255.10.41]
                                  20:00:28.771786 IP 172.25.0.1 > 224.0.0.1: igmp query v2
                                  20:00:45.764935 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42
                                  20:00:45.766224 IP 172.25.0.1 > 224.0.0.13: PIMv2, Hello, length 42

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    Eugene
                                    last edited by Jul 9, 2009, 12:59 PM

                                    Должен признать, я был не прав. На сегодняшний день, видимо, смотреть IPtv через pfSense невозможно. И проблема не в том, что мультикаст передать через pfSense нельзя, это похоже работает:

                                    20:00:13.530540 IP 192.168.90.22.37266 > 233.34.28.6.1001: UDP, length 1316
                                    

                                    Проблема в том, что невозможно передать IGMP. Будем ждать пока кто-нибудь не соорудить igmpproxy пакетикт для pfSense.
                                    Прошу прощения за то, что морочил Вам голову.

                                    http://ru.doc.pfsense.org

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      HardSE
                                      last edited by Jul 9, 2009, 1:08 PM

                                      @Eugene:

                                      Должен признать, я был не прав. На сегодняшний день, видимо, смотреть IPtv через pfSense невозможно. И проблема не в том, что мультикаст передать через pfSense нельзя, это похоже работает:

                                      20:00:13.530540 IP 192.168.90.22.37266 > 233.34.28.6.1001: UDP, length 1316
                                      

                                      Проблема в том, что невозможно передать IGMP. Будем ждать пока кто-нибудь не соорудить igmpproxy пакетикт для pfSense.
                                      Прошу прощения за то, что морочил Вам голову.

                                      Да на самом деле igmpproxy уже есть в пакетах, которые предлагаются через Web-интерфейс, в pfSense 1.2.3RC1 - точно есть. У меня он стоит, но как его настроить тоже непонятно. Был бы благодарен если бы подсказали верные настройки. В Web-интерфейсе есть выбор : WAN/LAN , upstream/Downstream и Network Address - что и куда нужно прописать?

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        Eugene
                                        last edited by Jul 9, 2009, 1:09 PM

                                        Как говорят наши американские друзья "уау!", не знал, не знал… у меня везде 1.2-RELEASE стоит. На досуге обязательно гляну и отпишу.

                                        http://ru.doc.pfsense.org

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          HardSE
                                          last edited by Jul 15, 2009, 7:04 AM

                                          Удалось ли заставить работать IPTV через IGMP ?

                                          1 Reply Last reply Reply Quote 0
                                          22 out of 270
                                          • First post
                                            22/270
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            This community forum collects and processes your personal information.
                                            consent.not_received