-
-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MagentaTV IGMP Proxy #2
Comments
Not having the IPTV on a separate VLAN simplifies the setup a whole bit. Basically, now you only need to configure I expect the configuration of
If IPTV does not work with only iptables -t nat -A POSTROUTING -d 239.35.0.0/16 -j MASQUERADE -o eth8.7
iptables -t nat -A POSTROUTING -d 232.0.0.0/16 -j MASQUERADE -o eth8.7 |
Nice, thanks so much! I will report back in a couple of days if this works. |
Update:
Notes:
Edit: Firewall rule also needed: (Thank you so much for creating this project and all the guides!!) |
I guess I can put the iptables command in the "on boot script" (if I can't get it to using the firewall rules). |
Nope, that’s a typo 😅 |
Thanks for summarizing the info for Magenta TV in this issue. Currently it seems to work with a receiver MR601 without stuttering. I installed the edge2 kernel and igmpproxy as described and also had to create the Internet In rules mentioned above. There is still a problem after restarting the UDM Pro, as igmpproxy seems to be started too early and exits again immediately. A device does not seem to be available at the time. |
I can try again later but I can't recall having any problems with a restart. The UDMP restarts twice (when auto reboot into the custom kernel is enabled) (first without the custom kernel and then into the custom kernel). igmpproxy can only start with the custom kernel I guess? |
Also the magenta tv receiver MR201 as the second unit operates without stutter. However, the connection is broken on both devices after about 3-10 minutes and apparently has to be re-established. In udm traffic monitor you can see that the throughput goes down. Under opnsense it was necessary to provide the firewall rules to allow options, is it possible that there is still something missing with the ip4 headers? I think the reboot problem is related to my use of ppp0 as an upstream gateway. But igmpproxy can be restarted manually as workaround. |
I think I also experienced the same issue with a disconnect after 3 - 10 minutes. I just re-enabled all of the old firewall rules (coming from my USG): https://www.bjoerns-techblog.de/2017/06/deutsche-telekom-entertain-mit-dem-ubiquiti-unifi-security-gateway/ That seems to have fixed it (at least for me on 401/201(?)) |
I created the firewall rules, but the behavior has not changed. However, by another problem I can not reprovision the UDM Pro. Therefore, it will probably come down to a Factory Reset.
|
IGMP Header Validation was disabled in some 5.x firmware I think. Try running the latest RC (5.43.36) on the switches and turn on IGMP Snooping. |
Closing this issue now. If you find any issues again, I can re-open the issue. |
running this now for over a week with my udm pro and a 401 receiver without any stuttering and problems! thanks a lot to you guys for this solution. Now I can finally switch completely to the udm pro. 👍 My igmpproxy configuration running VDSL with an Draytek Vigor 165 and VLAN7 configured on the router:
In addition needed:
Open question I will check in a few days:
|
after a few more weeks its nearly working like a charm, but I noticed problems after a reboot /restart of the UDM Pro: The igmproxy service is started automatically, but my Media Receiver begins stuttering after a few seconds... I have to manually stop and restart the igmpproxy, then it works until to the next reboot. @ALL any hints how to get this solved or which logfiles could help? |
Yeah. Same problem here. I need to restart it after a UDM-Pro reboot. Probably an issue regarding igmpproxy and not udm-kernel-tools though. (Maybe WAN isn't active yet?) Perhaps it's also possible to have a delayed "restart" script for igmpproxy? |
any ideas for a solution? |
I haven't tested them myself, but I can think of two possible solutions:
|
thanks @fabianishere, I will test option 2 (because with this option everything regarding igmpproxy is configured in 1 place) and will give feedback. |
Thanks for both options! The second option could potentially address #13(?) I am unsure about one thing though. When the unifi service is stopped (UniFi Network Application/Controller), igmpproxy will also stop (if I'm reading this correctly). Also, I'm not sure if this is really an issue, but rescanvif seems to call |
ok seems that option 2 is not implemented:
I will try Option 1 and give feedback. |
A quick feedback regarding option 1: A first test was positive and the media receiver works without stuttering after a reboot of my UDM Pro. Looks good :) I will do a few more tests just to be sure. And I think the questions of @TheJulianJES regarding the unifi.service dependency is absolutely reasonable, we need to clarify which option is the best. |
after a few more reboot-tests (including a live power outage) I would say option 1 is working without any problems. 👍 |
For anyone who wants to try the |
I have build an updated setup where the IPTV configuration happens entirely in a separate container. I haven't fully tested this approach yet, but it might be worth a try, since it drastically reduces the overall setup necessary (and does not lose the IGMP Proxy configuration when the UniFi container is reset). The following script should replace most of the current guide: # Run inside UbiOS
tee /mnt/data/on_boot.d/15-iptv.sh <<EOF >/dev/null
if podman container exists iptv; then
podman rm -f iptv
fi
podman run --network=host --privileged \
--name iptv --rm -i -d \
-v /run:/var/run/ -v /run:/run \
-e IPTV_WAN_INTERFACE="eth8" \
-e IPTV_WAN_RANGES="213.75.0.0/16 217.166.0.0/16" \
-e IPTV_LAN_INTERFACES="br0" \
fabianishere/udm-iptv:1.0
# NAT the IP-ranges to IPTV network
iptables -t nat -A POSTROUTING -d 213.75.112.0/21 -j MASQUERADE -o iptv
iptables -t nat -A POSTROUTING -d 217.166.0.0/16 -j MASQUERADE -o iptv
EOF
chmod +x /mnt/data/on_boot.d/15-iptv.sh For the full description, see https://github.com/fabianishere/udm-kernel-tools/blob/container-setup/docs/iptv.md |
@fabianishere just tried your new approach (which is really great and clean) but with no luck. When executing the on_boot script the itv container is downloaded and started, but at the same time my internet connection drops. this is my script (using DSL via ppp0 and br10 as my IOT Network where my IPTV devices are located) :
any idea how to get it running? |
@nicx Currently, it tries to create a VLAN interface on ppp0 (for VLAN 4), but for your setup I guess that is not needed. Let me adjust the script to support that. |
@fabianishere great point. Any idea when you could do that? I am asking because if its not today then I have to implement the old solution again. I was just too fast here :) |
@nicx Working on it at the moment. |
@nicx Could you try the following: if podman container exists iptv; then
podman rm -f iptv
fi
podman run --network=host --privileged \
--name iptv -i -d --restart always \
-e IPTV_WAN_INTERFACE="ppp0" \
-e IPTV_WAN_VLAN="0" \
-e IPTV_WAN_RANGES="232.0.0.0/16 87.141.0.0/16" \
-e IPTV_LAN_INTERFACES="br10" \
fabianishere/udm-iptv:1.1 -d -v |
@fabianishere now its working but throws some warnings on start:
how can I now debug inside the container? or run the command "systemctl status igmpproxy"? |
In addition here is the generated config, seems ok so far. The
|
To view the logs of igmpproxy, run the following command: podman logs iptv You can ignore the warnings you get while starting the container, they won't affect igmpproxy. As for the altnets, that's currently hardcoded, but I could provide an option to also override this. |
@fabianishere after a few reboot tests I can say the new solution so far works rock solid for me :) Thanks a lot! |
Thanks @fabianishere and @TheJulianJES! Due to this issue discussion I managed to get Magenta TV working perfectly. |
Hi, first of all thank you for your work! I've come to a point where I can't go any further. I have nothing to do with IT myself and needed your help. I would be very thankful. my setup Vigor 160 - UDM Pro - PoE Switch - magenta receiver 401 |
Just had quite a bit of time putting together all of the bits here, so figured I could jot things down and have all in a short howto: Firewall RulesSetup of stuff inside scriptsunifi-os shell
curl -L https://udm-boot.boostchicken.dev -o udm-boot_1.0.5_all.deb
dpkg -i udm-boot_1.0.5_all.deb
exit Now create a startup script for running igmpproxy correctly: vim /mnt/data/on_boot.d/15-iptv.sh
chmod +x /mnt/data/on_boot.d/15-iptv.sh This needs to go into the container: if podman container exists iptv; then
podman rm -f iptv
fi
podman run --network=host --privileged \
--name iptv -i -d --restart always \
-e IPTV_WAN_INTERFACE="ppp0" \
-e IPTV_WAN_VLAN="0" \
-e IPTV_WAN_RANGES="232.0.0.0/16 87.141.0.0/16" \
-e IPTV_WAN_DHCP_OPTIONS="-O staticroutes -V IPTV_RG" \
-e IPTV_LAN_INTERFACES="br0" \
fabianishere/udm-iptv:1.3 -d -v After +- 5mins, still a short freeze. Will investigate what I have to do with this, likely some firewall rule still missing. EDIT: Updated to use updm-iptv:1.3 and since then it seems to work stable without any further changes required 🤷🏻 |
MagentaTV by Telekom comes in on VLAN 7 where the normal internet traffic also arrives. There is no longer two separated VLANs.
I guess I can skip the step "Creating VLAN and obtaining IP address" in https://github.com/fabianishere/udm-kernel-tools/blob/master/docs/iptv.md#creating-vlan-and-obtaining-ip-address?
This is the configuration that I'm currently using on my USG 3P successfully (Note: I'm doing the VLAN tagging (7) on my DrayTek Vigor 165 modem but it can also be done on the USG):
(The
prefix-only
thing is only there to prevent a high cpu usage on the USGs with IPv6 -- hopefully this is fixed on the UDM-Pro)Could /etc/igmpproxy.conf look something like this?
I'm getting my UDM-Pro in a couple of days (would have never bought one without this project and I'm not sure if it's good or bad that I bought one lol), so I can try if this works and I'll update this question if and how I got it to work.
(Again, thanks so much for doing this!!)
There's also some information in the following articles:
(although the article is in German, the addresses used by MagentaTV are specified): https://www.heise.de/ct/artikel/MagentaTV-auf-pfSense-Co-4698826.html
(Attention: this is the "old way" -- no longer done like this afaik): https://www.projectiwear.org/~plasmahh/t_home.html
(This also seems to be the "old way" with two separate VLANs since it's mentioned that it's a "non BNG" connection): https://telekomhilft.telekom.de/t5/Fernsehen/Brauche-Hilfe-fuer-Einrichtung-von-igmpproxy-auf-Linux-Router/td-p/3446240
The text was updated successfully, but these errors were encountered: