Alternative Tomato IPTV solution - udpxy

Discussion in 'Tomato Firmware' started by kornaz, Jul 13, 2009.

  1. kornaz

    kornaz Addicted to LI Member


    Just wanted to inform you that I successfully compiled latest udpxy release for Tomato firmware. udpxy is a "small-footprint UNIX/Linux daemon to relay multicast UDP traffic to client's TCP (HTTP) connection" - . I tested it on Linksys WRT54GL running stock Tomato 1.25 - works like a charm.

    Advantages of udpxy:

    1) No IGMP/multicast routing daemon is required.
    2) LAN bridge is not flooded with multicast traffic, so your wifi won't be killed if somebody on LAN is watching IPTV.
    3) IPTV can be played on any hardware/software video player, which supports streaming from http:// (eg., Xbox, Windows Media Player, etc.)

    You can get the binary from here - (123 KB).


    1) Disable internal Tomato IGMP proxy (igmprt): Advanced -> Firewall -> uncheck "Allow Multicast", press "Save".
    2) Allow multicast traffic in firewall:
    iptables -A INPUT -p igmp -j ACCEPT
    iptables -A INPUT -p udp -m udp -d -j ACCEPT
    3) Download binary to your router, chmod and launch it:
    chmod +x udpxy
    ./udpxy -S -a $(nvram get lan_ifname) -p <listening_port> -m $(nvram get wan_ifname)
    (Eg., ./udpxy -S -a $(nvram get lan_ifname) -p 1234 -m $(nvram get wan_ifname))
    4) Check if udpxy is running - browse to http://<router_LAN_IP>:<listening_port>/status (Eg.,

    Now you have to translate your udp:// URLs to http://. Let's say we have a channel on udp://@ Translated URL will look like this - http://<router_LAN_IP>:<listening_port>/udp/ (Eg. In conclusion, every "udp://@" in your playlist must be replaced with "http://<router_LAN_IP>:<listening_port>/udp/"

    Now enter this translated URL to your favorite video player and enjoy!

    Also, question to the maintainers of third-party Tomato firmwares - how about adding this udpxy solution to your firmware builds as an alternative to the current Tomato IGMP proxy igmprt?

  2. bogderpirat

    bogderpirat Network Guru Member

    i just wanted to drop a quick thank you in here - ever since i worked around my igmp issues, this application does an excellent job for me (unfortunately only on dd-wrt).
  3. T.lancer

    T.lancer LI Guru Member

    how would this work for an IPTV set top box? if you have to change the adresses of the channels then it would be kind of useless for set top boxes as you can't really get into the thing and change something like that.
  4. bogderpirat

    bogderpirat Network Guru Member

    this only makes sense for boxes that you can mess with - pcs, media centers (xbmc e.g.) and the such.
  5. logitiger

    logitiger Addicted to LI Member

    works quite ok on a WRT54G v2.2 using stock Tomato 1.25

    When opening a 4-5 mbit stream CPU usage is 60%. When opening a 8-9 mbit stream CPU usage gets to 100% and the video stutters :(
    HD channels just won't work.
  6. logitiger

    logitiger Addicted to LI Member

    update: when I disable the -S option (send statistics about client connections) I can play 8-9 mbit streams OK :D (CPU load is 60%)

    now let's find out how to start udpxy at boot of my router (should be easy I guess, but I'm new to Tomato/Busybox ;)
  7. bogderpirat

    bogderpirat Network Guru Member

    heh, great find! i had stopped using udpxy for the huge load on the router - it would regularly make the picture skip, even with SD streams.

    about the startup: enable the JFFS partition on the router, copy the executable over (by using wget to get it from some server you upload it to, or using winscp or something similar) and add the startup command to the init script. something like this perhaps:

    /jffs/udpxy -S -a br0 -p 4022 -m ppp0
  8. logitiger

    logitiger Addicted to LI Member


    When playing a 6mbit stream for like half an hour the video starts to stutter. Anybody knows why? The CPU & MEM load stays the same. Restarting the stream solves the problem tough, but I don't like to do that every half an hour :p
  9. kaiser

    kaiser Networkin' Nut Member

    First of all, I'm sorry for bringing old thread up.
    May I ask what kind solution you have found? I'm thinking about putting udpxy on my E2000 (with Shibby mod) if that is possible. But I would like to know about alternatives too.
  10. Toastman

    Toastman Super Moderator Staff Member Member

    Augusto (Teaman) added udpxy to his mod of Tomato some months ago, it's included in Toastman versions. I'd be interested to know how well it works for you if you have time to try it.
  11. kaiser

    kaiser Networkin' Nut Member

    I could try it but only after 10+ days.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice