# IPTV / UDP multicast problem

**URL:** <https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735>\
**Category:** Installing and Using OpenWrt\
**Created:** [June 1, 2024, 10:20am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735 "2024-06-01T10:20:27Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 1, 2024, 10:20am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/1 "2024-06-01T10:20:27Z")

</div>

Hello,  
i'm using a BPI-R3 with OpenWrt 23.05.2.  
I'm trying to view my ISP's iptv network stream in VLC.  
So I installed igmpproxy as explained [here](https://openwrt.org/docs/guide-user/network/wan/udp_multicast)  
Unfortunately it doesn't work. I was told that this string should work in VLC **rtp://233.136.0.202:7500/202** and it doesn't.

So here is my configuration :

**/etc/config/igmpproxy :**

```plaintext
config igmpproxy
	option quickleave 1
	option verbose 3

config phyint
	option network wan
	option zone wan
	option direction upstream
	list altnet 0.0.0.0/0

config phyint
	option network lan
	option zone lan
	option direction downstream

```

**/etc/config/network :**

```plaintext
config device
	option name 'br-lan'
	option type 'bridge'
	list ports 'lan1'
	list ports 'lan2'
	list ports 'lan3'
	list ports 'lan4'
	list ports 'sfp2'

config interface 'lan'
	option device 'br-lan'
	option igmp_snooping 1
	option proto 'static'
	option ipaddr '192.168.1.1'
	option netmask '255.255.255.0'
	option ip6assign '60'

```

as you can see **option type 'bridge'** is not set in the **interface lan** but in the **device** , not sure sure if it changes something, but as the tutorial said to add the **option igmp\_snooping 1** in **lan** I've done as they say.

also i can see this in the tutorial :

> In older versions of igmpproxy it used to require firewall rules. However current versions insert the rules automatically during start-up of the igmpproxy daemon

unfortunately, i don't see any rule added in the firewall...is it because I have firewall4 so nftables?

Thank you for helping

---

<div class="post-metadata">

**Author:** ![lleachii](https://forum.openwrt.org/letter_avatar/lleachii/32/5_5575768a8748004e209b776fc1b2916d.png) [@lleachii](https://forum.openwrt.org/u/lleachii)\
**Post date:** [June 1, 2024, 10:37am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/2 "2024-06-01T10:37:31Z")

</div>

In my experience, VLC can indeed do multicast, but it doesn't make IGMP subscription requests needed for the igmpproxy. YMMV.

Is your IPTV provider the one who told you the URI would work?

I would suggest trying quickleave 0.

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 1, 2024, 10:38am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/3 "2024-06-01T10:38:28Z")

</div>

> [@lleachii](#):
>
> Is your IPTV provider the one who told you the URI would work?

no, it's a guy with the same ISP as me and using debian as a router. from his home, that link works in VLC.

And here is how he configured his igmpproxy

```plaintext
quickleave

phyint enp2s0 upstream ratelimit 0 threshold 1
	altnet 77.128.0.0/9
	altnet 224.0.0.0/8

phyint lan0 downstream ratelimit 0 threshold 1
	altnet 192.168.1.2/24

phyint wlp4s0 disabled
phyint lo disabled

```

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 1, 2024, 10:42am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/4 "2024-06-01T10:42:11Z")

</div>

additionaly here is my **firewall rules** , i don't see anything new added in it since i installed igmpproxy :

 ![image](https://forum.openwrt.org/uploads/default/original/3X/4/2/42c4f0f9cd9c600fd7e46b04321ee55e73e7e6a1.png)

Edit:  
i found where the rules landed in Luci, i can see them in STATUS\>\>FIREWALL

 ![image](https://forum.openwrt.org/uploads/default/original/3X/2/3/2359111d8d532d06d1f19d50654e392e5154e2df.png)

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 1, 2024, 11:23am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/5 "2024-06-01T11:23:03Z")

</div>

i can see this in my logs : **can't join group 233.136.0.202 on interface br-wan; Errno(98): Address in use**

```plaintext
Sat Jun 1 13:23:52 2024 user.notice igmpproxy[7039]: RECV Membership query from 192.168.1.1 to 233.136.0.202
Sat Jun 1 13:23:52 2024 user.notice igmpproxy[7039]: RECV V2 member report from 192.168.1.10 to 233.136.0.202
Sat Jun 1 13:23:52 2024 user.debug igmpproxy[7039]: Should insert group 233.136.0.202 (from: 192.168.1.10) to route table. Vif Ix : 0
Sat Jun 1 13:23:52 2024 user.info igmpproxy[7039]: Updated route entry for 233.136.0.202 on VIF #0
Sat Jun 1 13:23:52 2024 user.debug igmpproxy[7039]: Joining group 233.136.0.202 upstream on IF address 192.168.20.1
Sat Jun 1 13:23:52 2024 user.notice igmpproxy[7039]: Joining group 233.136.0.202 on interface br-wan
Sat Jun 1 13:23:52 2024 user.warn igmpproxy[7039]: can't join group 233.136.0.202 on interface br-wan; Errno(98): Address in use
Sat Jun 1 13:23:52 2024 user.debug igmpproxy[7039]: Joining group 233.136.0.202 upstream on IF address 93.22.XX.XX
Sat Jun 1 13:23:52 2024 user.notice igmpproxy[7039]: Joining group 233.136.0.202 on interface br-wan
Sat Jun 1 13:23:52 2024 user.warn igmpproxy[7039]: can't join group 233.136.0.202 on interface br-wan; Errno(98): Address in use

```

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 1, 2024, 11:44am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/6 "2024-06-01T11:44:26Z")

</div>

and here is a tcpdump

```plaintext
root@OpenWrt:~# tcpdump -i br-wan igmp
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on br-wan, link-type EN10MB (Ethernet), snapshot length 262144 bytes
13:42:14.472896 IP 192.168.20.1 > 233.136.0.202: igmp v2 report 233.136.0.202
13:42:15.812889 IP 192.168.20.1 > 233.32.36.161: igmp v2 report 233.32.36.161
13:42:18.109196 IP one.one.one.one > all-systems.mcast.net: igmp query v2
13:42:18.432900 IP 192.168.20.1 > 233.136.0.202: igmp v2 report 233.136.0.202
13:42:24.572968 IP 192.168.20.1 > 239.255.255.250: igmp v2 report 239.255.255.250
13:42:25.212889 IP 192.168.20.1 > 233.32.36.161: igmp v2 report 233.32.36.161
13:42:28.216225 IP 192.168.20.1 > all-routers.mcast.net: igmp leave 233.32.36.161
13:42:28.310807 IP one.one.one.one > 233.32.36.161: igmp query v2 [max resp time 4] [gaddr 233.32.36.161]
13:42:28.710590 IP one.one.one.one > 233.32.36.161: igmp query v2 [max resp time 4] [gaddr 233.32.36.161]
13:42:29.110694 IP one.one.one.one > 233.32.36.161: igmp query v2 [max resp time 4] [gaddr 233.32.36.161]
13:42:48.108512 IP one.one.one.one > all-systems.mcast.net: igmp query v2
13:42:57.212946 IP 192.168.20.1 > 239.255.255.250: igmp v2 report 239.255.255.250
13:42:57.212973 IP 192.168.20.1 > 233.136.0.202: igmp v2 report 233.136.0.202
13:43:18.104342 IP one.one.one.one > all-systems.mcast.net: igmp query v2
13:43:20.492911 IP 192.168.20.1 > 233.136.0.202: igmp v2 report 233.136.0.202
13:43:27.933058 IP 192.168.20.1 > 239.255.255.250: igmp v2 report 239.255.255.250

```

---

<div class="post-metadata">

**Author:** ![lleachii](https://forum.openwrt.org/letter_avatar/lleachii/32/5_5575768a8748004e209b776fc1b2916d.png) [@lleachii](https://forum.openwrt.org/u/lleachii)\
**Post date:** [June 2, 2024, 1:27am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/7 "2024-06-02T01:27:07Z")

</div>

> [@shdf](#):
>
> `wan`

> [@shdf](#):
>
> `-i br-wan`

Can we see the whole network config?

Is there a reason WAN is placed in a bridge?

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 2, 2024, 7:10am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/8 "2024-06-02T07:10:18Z")

</div>

i have a BPI-R3  
 ![image](https://forum.openwrt.org/uploads/default/original/3X/2/b/2b454cfa352633e0af7819084b9f1e4642a73d0a.jpeg)

 ![Sans titre-1](https://forum.openwrt.org/uploads/default/original/3X/3/4/3478bd2a23adb8323ecec9c8888c4f6c98c71b56.jpeg)

ETH1 is an SFP port and it is bridged with the WAN port which is RJ45.

I have an ONU inserted in Eth1, to connect to my ISP. i made an interface called "onu" in order to manage it on the ip address 192.168.20.1

My network is on 192.168.1.0/24

My network config :

```plaintext
config interface 'loopback'
	option device 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config globals 'globals'
	option ula_prefix 'fd3f:f494:0214::/48'
	option packet_steering '1'

config device
	option name 'br-lan'
	option type 'bridge'
	list ports 'lan1'
	list ports 'lan2'
	list ports 'lan3'
	list ports 'lan4'
	list ports 'sfp2'

config interface 'lan'
	option device 'br-lan'
	option proto 'static'
	option igmp_snooping 1
	option ipaddr '192.168.1.1'
	option netmask '255.255.255.0'
	option ip6assign '60'

config device
	option name 'br-wan'
	option type 'bridge'
	list ports 'eth1'
	list ports 'wan'

config device
	option name 'eth1'
	option macaddr 'ce:a4:39:bd:8a:9a'

config device
	option name 'wan'
	option macaddr 'ce:a4:39:bd:8a:9a'

config interface 'wan'
	option device 'br-wan'
	option proto 'dhcp'
	option vendorid 'neufbox_BANANAPI-R3'
	option reqopts '1 3 6 12 14 15 17 28 40 42'
	option ipv6 '1'
	option peerdns '0'
	list dns '8.8.8.8'
	list dns '8.8.4.4'
	list dns '1.1.1.1'

config interface 'wan6'
	option device 'br-wan'
	option proto 'dhcpv6'
	option peerdns '0'
	option reqaddress 'try'
	option defaultreqopts '0'
	option reqopts '23 25 26'
	option noclientfqdn '1'
	option noacceptreconfig '1'
	list dns '2001:4860:4860::8888'
	list dns '2001:4860:4860::8844'
	option reqprefix 'auto'

config interface 'onu'
	option proto 'static'
	option device 'br-wan'
	option netmask '255.255.255.0'
	option ipaddr '192.168.20.1'

```

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 2, 2024, 10:27am UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/9 "2024-06-02T10:27:07Z")

</div>

I've just reinstalled my ISP's router and it works. so there's no problem on my PC either...it's in the BPI-R3 configuration that something's wrong...

 ![RTHnfiF1](https://forum.openwrt.org/uploads/default/original/3X/6/a/6a8daf9f35fcd73cc732fb3c1cc0ea425975d0a7.jpeg)

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 2, 2024, 3:36pm UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/10 "2024-06-02T15:36:13Z")

</div>

i found the culprit : it's my ONU SFP...  
i removed it and used my ISP external ONT in the wan port (RJ45) and it worked immediatly.

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [June 2, 2024, 4:39pm UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/11 "2024-06-02T16:39:22Z")

</div>

i just found this about what could be the reason :

> [@Support MA5671A SFP GPON](https://forum.openwrt.org/t/support-ma5671a-sfp-gpon/48042/12):
>
> It apparently this stick doesn't forward IGMP, my IPTV doesn't work with this stick but works with another "more dumb" lantiq-based stick (Sercomm FGS202) which doesn't use Openwrt

followed by this message :

> [@Support MA5671A SFP GPON](https://forum.openwrt.org/t/support-ma5671a-sfp-gpon/48042/14):
>
> no, it's my stock image with the OCMI modded... I don't really want to flash random images because they might hardware damage the thing by pulling the wrong I/O pin the openwrt just doesn't forward IGMP traffic, normally they have igmpproxy package for that but it require a clear LAN/WAN interface meanwhile the GPON stick doesn't really expose the L2 WAN interface to the openwrt OS so I have no idea how to make it work

---

<div class="post-metadata">

**Author:** ![shdf](https://forum.openwrt.org/user_avatar/forum.openwrt.org/shdf/32/80311_2.png) [@shdf](https://forum.openwrt.org/u/shdf)\
**Post date:** [March 19, 2025, 9:17pm UTC](https://forum.openwrt.org/t/iptv-udp-multicast-problem/199735/12 "2025-03-19T21:17:02Z")

</div>

FINALY !!  
we found how to fix the problem, based [on this issue on github](https://github.com/hack-gpon/hack-gpon.github.io/issues/323#issuecomment-1985476097)

[fs.com](http://fs.com) said to run this command in the ONT :

> fw\_setenv omci\_iop\_mask 8

it worked for us with a different value, 1.

> fw\_setenv omci\_iop\_mask 1

in other words, without this command, multicast traffic doesn't arrive in the right vlan.

Maybe @minhng99 in case you're still interested in the reason for this problem  
if you look at : **/etc/init.d/omcid.sh**  
then you'll see this code that manipulates this variable

```plaintext
        tmp=`fw_printenv omci_iop_mask 2>&- | cut -f2 -d=`
        if [-n "$tmp"]; then
                omci_iop_mask=$tmp
        else
                config_get omci_iop_mask "default" "omci_iop_mask" 0
        fi

```
