0

Hello i have probably noob question by i already spent some time on it and messed a local network as well so:

I have miniPC for real time log purposes between network and IPTV set-top box. The box has DHCP on it so it can provide IP to the box as well. Also app called loglicent is used to capture logs coming trough from set-top box.

Eth0 is plugged to outside network, with multicast set on it. Eth1 has set-top box on it with IP, non multicast services are working (playing from storage and such) but live stream - multicast one, does not.

I tried https://github.com/pali/igmpproxy but this did not work well, since the miniPC started behave as a router and other devices were asking for that mcast, with no resposne of course.

So i wonder, is there any easy way, how to simply trunk mcast traffic between eth0 and eth1? With logclient app still working.

J B
  • 93
  • 8

1 Answers1

0

igmpproxy is the right way to deal with your situation. However, for the multicast traffic to flow across your router, you have to set the following sysctl variables:

sysctl net.ipv4.conf.all.rp_filter=2 sysctl net.ipv4.conf.all.mc_forwarding=1

What igmpproxy does is that it forwards join/leave requests for multicast groups coming from your STB to the upstream network, however, if mc_forwarding is disabled no multicast traffic will be routed and rp_filter is usually needed because most of the multicast TV streams usually have some weird source IPs that may overlap with your own network space..

Peter Zhabin
  • 2,276
  • 8
  • 10
  • thank you! would it be also possible to use https://github.com/troglobit/pimd ? i understand that you cant set mc_forwarding = 1 until you have multicast router set - viz https://www.network-builders.com/threads/sysctl-permission-denied-on-mc_forwarding-keys.109119/ – J B Oct 15 '18 at 11:38
  • Using PIM is an overkill in your case, igmpproxy does all the work needed to feed streams to your STB. However, you might also need to allow multicast via iptables with something like `iptables -A INPUT -d 224.0.0.0/240.0.0.0 -i eth0 -j ACCEPT iptables -A FORWARD -p udp -d 224.0.0.0/240.0.0.0 -j ACCEPT` – Peter Zhabin Oct 15 '18 at 14:45