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