Help with igmp-proxy, unable to have tv stream, MRT_DEL_MFC; Errno(49)

Started by sn4k3, March 11, 2025, 09:15:21 PM

Previous topic - Next topic
Currently trying to make my IPTV to work, signal comes from ISP IPTV_WAN (vlan105).
TV android box is on igc5 (192.168.105.10) direct cable connect to opnsense router
TV rewind or past programs works because it uses internet for such (vlan100), however if I attempt to see a live tv channel it works for just 5 seconds and then image stops/freeze leading to a black image after a second, it can be resumed by change channel and then have 5 more seconds before image freeze.
It's known that we need IGMP for this to work, I have configured such as:

IPTV_WAN    upstream    10.0.0.0/8, 224.0.0.0/4
IPTV_LAN    downstream    192.168.105.0/24

But I'm getting some errors which are:

2025-03-08T20:09:49    Warning    igmpproxy    The source address 87.103.118.105 for group 239.195.7.1, is not in any valid net for upstream VIF[0].   
2025-03-08T20:09:44    Warning    igmpproxy    MRT_DEL_MFC; Errno(49): Can't assign requested address   
2025-03-08T20:08:48    Warning    igmpproxy    The source address 87.103.118.105 for group 239.195.7.1, is not in any valid net for upstream VIF[0].   
2025-03-08T20:07:48    Warning    igmpproxy    The source address 87.103.118.105 for group 239.195.7.1, is not in any valid net for upstream VIF[0].   
2025-03-08T20:07:39    Warning    igmpproxy    MRT_DEL_MFC; Errno(49): Can't assign requested address

I even tried to put 0.0.0.0/1 and 128.0.0.0/1 as upstream to cover all network but I still got the MRT_DEL_MFC; Errno(49).

Extra logs:

2025-03-10T19:49:02    Notice    igmpproxy    All routes removed. Routing table is empty.   
2025-03-10T19:49:02    Warning    igmpproxy    MRT_DEL_MFC; Errno(49): Can't assign requested address   
2025-03-10T19:49:02    Notice    igmpproxy    Removing MFC: 10.2.57.152 -> 239.195.1.141, InpVIf: 1   
2025-03-10T19:49:02    Warning    igmpproxy    MRT_DEL_MFC; Errno(49): Can't assign requested address   
2025-03-10T19:49:02    Notice    igmpproxy    Removing MFC: 10.2.59.228 -> 239.195.5.36, InpVIf: 1   
2025-03-10T19:49:02    Warning    igmpproxy    MRT_DEL_MFC; Errno(49): Can't assign requested address   
2025-03-10T19:49:02    Notice    igmpproxy    Removing MFC: 10.2.59.228 -> 239.195.6.27, InpVIf: 1   
2025-03-10T19:49:02    Warning    igmpproxy    MRT_DEL_MFC; Errno(49): Can't assign requested address   
2025-03-10T19:49:02    Notice    igmpproxy    Removing MFC: 10.2.59.228 -> 239.0.5.1, InpVIf: 1   
2025-03-10T19:49:02    Notice    igmpproxy    Got a interrupt signal. Exiting.   
2025-03-10T19:49:02    Warning    igmpproxy    select() failure; Errno(4): Interrupted system call   
2025-03-10T19:48:24    Notice    igmpproxy    Joining group 224.0.0.22 on interface igc5   
2025-03-10T19:48:24    Notice    igmpproxy    Joining group 224.0.0.2 on interface igc5   
2025-03-10T19:48:24    Notice    igmpproxy    adding VIF, Ix 1 Fl 0x0 IP 0x3552380a vlan0.105, Threshold: 1, Ratelimit: 0   
2025-03-10T19:48:24    Notice    igmpproxy    adding VIF, Ix 0 Fl 0x0 IP 0xfe69a8c0 igc5, Threshold: 1, Ratelimit: 0

Run from terminal with debug (Permanent spam of):

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.59.228 to 239.195.6.27 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.57.152 to 239.195.1.141 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.59.228 to 239.0.5.1 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.59.228 to 239.196.6.19 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.59.228 to 239.195.6.27 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.59.228 to 239.0.5.1 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
Route activate request from 10.2.57.152 to 239.195.1.141 on VIF[1]

Current routing table (Activate Route):
-----------------------------------------------------
#0: Src0: 10.2.59.228, Dst: 239.0.5.1, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#1: Src0: 10.2.59.228, Dst: 239.196.6.19, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#2: Src0: 10.2.59.228, Dst: 239.195.6.27, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#3: Src0: 10.2.59.228, Dst: 239.195.5.36, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
#4: Src0: 10.2.57.152, Dst: 239.195.1.141, Age:2, St: A, OutVifs: 0x00000000, dHosts: yes
-----------------------------------------------------
About to call timeout 10 (#0)
SENT Membership query   from 192.168.105.254 to 224.0.0.1
Sent membership query from 192.168.105.254 to 224.0.0.1. Delay: 10
Created timeout 11 (#0) - delay 10 secs
(Id:11, Time:10)
Created timeout 12 (#1) - delay 115 secs
(Id:11, Time:10)
(Id:12, Time:115)
Route activate request from 10.2.59.228 to 239.195.21.23 on VIF[1]
No table entry for 239.195.21.23 [From: 10.2.59.228]. Inserting route.
No existing route for 239.195.21.23. Create new.
Found existing routes. Find insert location.
Inserting after route 239.196.6.19
Inserted route table entry for 239.195.21.23 on VIF #-1
No downstream listeners for group 239.195.21.23. No join sent.


root@router:~ # ifmcstat -f inet
igc1:
        inet 192.168.1.254
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01
igc2:
        inet 192.168.2.254
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01
igc3:
        inet 192.168.101.254
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01
igc5:
        inet 192.168.105.254
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.22 mode exclude
                        mcast-macaddr 01:00:5e:00:00:16
                group 224.0.0.2 mode exclude
                        mcast-macaddr 01:00:5e:00:00:02
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01
lo0:
        inet 127.0.0.1
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.1 mode exclude
vlan0.100:
        inet 89.114.244.158
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01
vlan0.101:
        inet 10.168.105.49
        igmpv3 rv 2 qi 125 qri 10 uri 3
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01
vlan0.105:
        inet 10.56.82.53
        igmpv2
                group 224.0.0.1 mode exclude
                        mcast-macaddr 01:00:5e:00:00:01

Under firewall, IPTV_WAN and IPTV_LAN, I have a very permissive allow any all to all rule with IP Options enabled.
Firewall log:

Interface        Time    Source    Destination    Proto    Label   
IPTV_WAN        2025-03-11T20:14:15    95.136.4.135:3042    239.195.7.3:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_WAN        2025-03-11T20:13:55    87.103.118.100:3042    239.195.7.1:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_WAN        2025-03-11T20:13:51    192.168.2.14    224.0.0.1    igmp    Allow IPTV_WAN IGMP to pass on   
IPTV_WAN        2025-03-11T20:13:15    95.136.4.135:3042    239.195.7.3:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_LAN        2025-03-11T20:12:55    192.168.105.10    239.255.255.250    igmp    Allow IPTV_LAN IGMP to pass   
IPTV_WAN        2025-03-11T20:12:54    87.103.118.100:3042    239.195.7.1:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_LAN        2025-03-11T20:12:54    192.168.105.10    224.0.0.251    igmp    Allow IPTV_LAN IGMP to pass   
IPTV_LAN        2025-03-11T20:12:52    192.168.105.10    239.0.5.1    igmp    Allow IPTV_LAN IGMP to pass   
IPTV_LAN        2025-03-11T20:12:48    192.168.105.254    224.0.0.1    igmp    Allow IPTV_LAN IGMP to pass   
IPTV_LAN        2025-03-11T20:12:48    192.168.105.254    224.0.0.1    igmp    let out anything from firewall host itself   
IPTV_WAN        2025-03-11T20:12:14    95.136.4.135:3042    239.195.7.3:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_WAN        2025-03-11T20:11:54    87.103.118.100:3042    239.195.7.1:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_WAN        2025-03-11T20:11:51    192.168.2.14    224.0.0.1    igmp    Allow IPTV_WAN IGMP to pass on   
IPTV_WAN        2025-03-11T20:11:14    95.136.4.135:3042    239.195.7.3:2042    udp    Allow IPTV_WAN multicast to pass   
IPTV_WAN        2025-03-11T20:10:53    87.103.118.100:3042    239.195.7.1:2042    udp    Allow IPTV_WAN multicast to pass

OPNsense 25.1.3-amd64
FreeBSD 14.2-RELEASE-p2