Auteur Sujet: [Appel à contribution] Vos succès et échecs pour récupérer les flux multicast  (Lu 6742 fois)

0 Membres et 2 Invités sur ce sujet

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
Je regarde les paquets IGMP  que tu as fourni et ils sont complètement différents, je vois notamment des ports source et des ports de destination, pas de VLAN. Ils sont encapsulés ?

gartox

  • Abonné Bbox fibre
  • *
  • Messages: 24
  • Ronchin 59
re, oui pardon j'avais pas spécifié. Mikrotik permet de streamer une capture réseau vers un PC avec le protocole TZSP stream.
donc oui du coup c encapsulé dans UDP/37008.

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
J'ai ceci en règles FW et je vois bien passer le trafic IGMP mais aucun flux UDP n'arrive sur mon interface entrante.

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
A priori, le proxy IGMP pense qu'il est tout seul et envoie des requêtes v3 alors que le réseau Bytel envoie de requêtes v2.
Reste à comprendre les raisons de ce comportement.

gartox, utilises-tu PIM ?

gartox

  • Abonné Bbox fibre
  • *
  • Messages: 24
  • Ronchin 59
Salut,

Tes règles de la config par défaut foute le bordel je pense. Notamment la règle 4 qui à mon avis drop l'igmp entrant vers le router. On voit bien que la règle 15 a son compteur à 0 !
Je désactiverai les règles entre 1 et 10, pour y voir plus clair !


Et non pas de PIM, j'avais tenté au début quand je n'arrivait pas à faire marcher IGMP Proxy, mais en y réfléchissant c'était voué à l'échec car PIM nécessite que ce soit configuré des deux coté. Coté router à la maison et coté router de distribution coté Bouygue ce qui n'est pas le cas sauf sur leur infra backbone mais pas coté client.

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
En fait je m'étais déjà assuré que tout passe à travers un bridge.
J'ai testé avec une Debian et c'est le même problème, le proxy IGMP agit comme s'il était seul au monde et parfois ça fonctionne:

RECV Membership query   from 192.168.1.1     to 232.0.31.50
RECV V2 member report   from 192.168.1.2     to 232.0.31.50
Should insert group 232.0.31.50 (from: 192.168.1.2) to route table. Vif Ix : 0
Updated route entry for 232.0.31.50 on VIF #0
Joining group 232.0.31.50 upstream on IF address 176.133.29.231
joinMcGroup: 232.0.31.50 on enp0s31f6.100

Current routing table (Insert Route):
-----------------------------------------------------
#0: Dst: 239.255.3.22, Age:2, St: I, OutVifs: 0x00000001
#1: Dst: 232.0.31.50, Age:2, St: I, OutVifs: 0x00000001
#2: Src0: 89.86.97.6, Dst: 232.0.64.207, Age:1, St: A, OutVifs: 0x00000001
#3: Dst: 232.0.64.208, Age:1, St: I, OutVifs: 0x00000001
-----------------------------------------------------
About to call timeout 52 (#0)
Removing group 232.0.64.207. Died of old age.
Removed route entry for 232.0.64.207 from table.
Vif bits : 0x00000001
Setting TTL for Vif 0 to 1
Removing MFC: 89.86.97.6 -> 232.0.64.207, InpVIf: 1

Current routing table (Remove route):
-----------------------------------------------------
#0: Dst: 239.255.3.22, Age:2, St: I, OutVifs: 0x00000001
#1: Dst: 232.0.31.50, Age:2, St: I, OutVifs: 0x00000001
#2: Dst: 232.0.64.208, Age:1, St: I, OutVifs: 0x00000001
-----------------------------------------------------
RECV V2 member report   from 176.133.29.231  to 232.0.31.50
The IGMP message was from myself. Ignoring.
About to call timeout 53 (#0)
Removing group 232.0.64.208. Died of old age.
Removed route entry for 232.0.64.208 from table.

Current routing table (Remove route):
-----------------------------------------------------
#0: Dst: 239.255.3.22, Age:2, St: I, OutVifs: 0x00000001
#1: Dst: 232.0.31.50, Age:2, St: I, OutVifs: 0x00000001
-----------------------------------------------------
About to call timeout 54 (#1)
RECV V2 member report   from 176.133.29.231  to 232.0.31.50
The IGMP message was from myself. Ignoring.
Route activation request from 176.133.29.231 for 232.0.31.50 is from myself. Ignoring.
About to call timeout 45 (#0)
SENT Membership query   from 192.168.1.1     to 224.0.0.1
Sent membership query from 192.168.1.1 to 224.0.0.1. Delay: 10

Le truc drôle est que si je bloque les paquets IGMP, cela peut fonctionner.
Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   23  3954 ACCEPT     all  --  enp0s31f6.100 any     anywhere             anywhere             state RELATED,ESTABLISHED
    2   120 ACCEPT     tcp  --  enp0s31f6.100 any     anywhere             anywhere             tcp dpt:ssh
    0     0 ACCEPT     tcp  --  enp0s31f6.100 any     anywhere             anywhere             multiport dports http,https
    0     0 ACCEPT     icmp --  enp0s31f6.100 any     anywhere             anywhere           
  295 20102 ACCEPT     all  --  enx000ec6fe4cb1 any     anywhere             anywhere           

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   55 15866 ACCEPT     all  --  enp0s31f6.100 any     anywhere             anywhere             state RELATED,ESTABLISHED
   55 28197 ACCEPT     all  --  enx000ec6fe4cb1 any     anywhere             anywhere           
    0     0 ACCEPT     igmp --  enp0s31f6.100 any     anywhere             anywhere           
    0     0 ACCEPT     udp  --  enp0s31f6.100 any     212.195.48.0/24      192.168.1.2          udp dpts:20000:30000
    0     0 ACCEPT     udp  --  enp0s31f6.100 any     212.195.244.0/24     192.168.1.2          udp dpts:20000:30000
    0     0 ACCEPT     udp  --  enp0s31f6.100 any     62.34.201.0/24       192.168.1.2          udp dpts:20000:30000
    0     0 ACCEPT     udp  --  enp0s31f6.100 any     194.158.119.0/24     192.168.1.2          udp dpts:20000:30000
    0     0 ACCEPT     udp  --  enp0s31f6.100 any     195.36.152.0/24      192.168.1.2          udp dpts:20000:30000
    0     0 ACCEPT     all  --  any    any     193.251.97.0/24      anywhere             PKTTYPE = multicast
55190   75M ACCEPT     all  --  any    any     89.86.97.0/24        anywhere             PKTTYPE = multicast
    0     0 ACCEPT     all  --  any    any     static-176-165-8-0.ftth.abo.bbox.fr/24  anywhere             PKTTYPE = multicast
    0     0 ACCEPT     all  --  any    any     89.86.96.0/24        anywhere             PKTTYPE = multicast

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  306 52752 ACCEPT     all  --  any    any     anywhere             anywhere

##------------------------------------------------------
## Enable Quickleave mode (Sends Leave instantly)
##------------------------------------------------------
quickleave
#defaultdown

##------------------------------------------------------
## Configuration for eth0 (Upstream Interface)
##------------------------------------------------------
phyint enp0s31f6.100 upstream  ratelimit 0  threshold 1
altnet 0.0.0.0/0

##------------------------------------------------------
## Configuration for eth1 (Downstream Interface)
##------------------------------------------------------
phyint enx000ec6fe4cb1 downstream  ratelimit 0  threshold 1

Quand cela fonctionne c'est 1 ou 2 chaînes et timeout au bout de 5 minutes que ce soit avec igmp proxy ou mcproxy.

L'erreur de mcproxy est assez intéressante:
ERROR: failed to get multicast route stats! Error: Cannot assign requested address errno: 99
« Modifié: 05 janvier 2019 à 21:51:54 par mirtouf »

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
Pour être précis, le problème est là:
ip mroute
(192.168.1.2,239.255.255.250)    Iif: unresolved  State: unresolved
(176.133.29.231,232.0.64.206)    Iif: unresolved  State: unresolved

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
gartox, confirmes-tu que des flux multicast sont émis par le préfixe 176.165.8.0/24 ? Il s'agit d'un bloc ByTel dédié aux abonnés.

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
A priori, l'OLT envoie des general mebership query sur 224.0.0.1 mais de façon étrange je ne reçois rien quand j'utilise un routeur tiers. Tous les autres paquets IGMP passent.

Bien évidemment, rien dans nflog...

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
cette blague...

23:24:57.374650 IP 0.0.0.0 > all-systems.mcast.net: igmp query v2
23:24:58.145961 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 232.0.64.232: igmp v2 report 232.0.64.232
23:24:59.545937 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.192.152.143: igmp v2 report 239.192.152.143
23:25:00.346953 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.255.3.22: igmp v2 report 239.255.3.22
23:25:01.546956 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 224.0.0.251: igmp v2 report 224.0.0.251
23:25:06.950954 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 224.0.0.252: igmp v2 report 224.0.0.252
23:27:02.394776 IP 0.0.0.0 > all-systems.mcast.net: igmp query v2
23:27:03.423947 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.255.3.22: igmp v2 report 239.255.3.22
23:27:06.625959 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 224.0.0.251: igmp v2 report 224.0.0.251
23:27:08.425946 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.192.152.143: igmp v2 report 239.192.152.143
23:27:09.827008 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 224.0.0.252: igmp v2 report 224.0.0.252
23:27:10.026947 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 232.0.64.232: igmp v2 report 232.0.64.232
23:29:07.462388 IP 0.0.0.0 > all-systems.mcast.net: igmp query v2
23:29:08.498940 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.192.152.143: igmp v2 report 239.192.152.143
23:29:13.903939 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 232.0.64.232: igmp v2 report 232.0.64.232
23:29:15.105936 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.255.3.22: igmp v2 report 239.255.3.22
23:29:15.305935 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 224.0.0.251: igmp v2 report 224.0.0.251
23:29:16.105935 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 224.0.0.252: igmp v2 report 224.0.0.252
23:30:27.152191 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > all-routers.mcast.net: igmp leave 232.0.64.232
23:30:39.904391 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > all-routers.mcast.net: igmp leave 239.255.3.22
23:30:42.043597 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > 239.255.3.22: igmp v2 report 239.255.3.22
23:40:27.703941 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:28.304010 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:36.703955 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:38.103922 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:40.903937 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:41.503930 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:49.913925 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:50.313926 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:50.713950 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:59.314922 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:40:59.714918 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 2 group record(s)
23:41:02.716916 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:08.719959 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:09.119937 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:10.722956 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:11.522938 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:18.125923 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:18.725956 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:41:57.155941 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 4 group record(s)
23:41:57.355920 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 4 group record(s)
23:41:59.356925 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:00.156943 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:00.556919 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:00.756913 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:00.956929 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:02.156920 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:02.356917 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)
23:42:03.756916 IP plh29-h01-176-133-29-231.dsl.sta.abo.bbox.fr > igmp.mcast.net: igmp v3 report, 1 group record(s)

ça ne fonctionne plus sans raison.

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 297
  • Chelles (77)
    • L'antre de la bête
OK, j'ai pigé le truc il faudrait utiliser pimd mais je n'arrive pas à la configurer.
En attendant, il faut lancer pimd, le tuer puis lancer igmpproxy pour récupérer les flux.

pimd.conf si quelqu'un sait le configurer.
phyint igb0.100 enable igmpv2
phyint igb1 enable igmpv2

igmp-query-interval  12
igmp-querier-timeout 42
bsr-candidate priority 5

rp-candidate time 30 priority 20
rp-address 10.108.238.2 224.0.0.0/4

spt-threshold packets 0 interval 5