Skip to main content

Blocking Adverts from the Roku Menu

UPDATE: 18 May 2013 - A new firmware (v5) has changed the way ads are handled on the Roku such that this guide is no longer relevant. 

Roku are are a pretty neat little media streaming box but one thing that I think lets them down are the trashy and mostly irrelevant adverts on the home page. Wouldn't it be great if you could get rid of these?

The ads are served by the third party ad platform, ZEDO. You can block the ads from displaying by simply blocking this domain entirely or by being more targeted and blocking the specific sub-domain serving the Roku ads. A TCPDUMP of my Roku shows that the ad images currently come from 'd7.zedo.com' (although this may change).

I block them by adding a custom DNS record for this sub-domain to my home router pointing to the loopback address (127.0.0.1). There are or course many other ways you could do this, but the best way will largely depend on your own set-up and resources.

Comments

  1. Excellent! Works like a charm. thx

    ReplyDelete
  2. If you could also post the domains to block ads on Crackle and Popcornflix you'd be doing the Roku world a great service...

    ReplyDelete
  3. As Crackle is a free ad supported service I don't think filtering it's adverts would be in the right spirit.

    ReplyDelete
  4. Dear Paul:

    I wonder if you could be a bit more guidance on this.

    I've a CLEAR router (Hub Express), and 'm on a Mac.

    I can't find where to put the DNS record in, other than in the NETWORK PREFS on the Mac itself.

    Would you mind giving me a step-by-step, please?

    ReplyDelete
    Replies
    1. Sorry, I'm neither a Mac user or at Hub Express owner. Like I say there are many ways to achieve this with the info I've provided, your best bet is to get googling.

      Delete
  5. Looks like an update changed to different Ad servers.
    Do you know what the new servers are?

    I used wireshark via tomato and the servers I got didn't stop the ads when I filtered them.

    Appreciate your feedback and thanks for the blog post. I was successful with blocking zedo but now they're back.

    ReplyDelete
  6. Hi, trying to wireshark my roku and still having a hard time figuring out where my ads are coming from. Just trying to block a dirty Crackle ad that is showing in my main roku menu.

    ReplyDelete
  7. Thank you for this post. I use OpenDNS and blocked all traffic to zedo.com and my ads are gone. Now all I have is a virtual billboard that says ROKU. I have the new v5 interface and that often tasteless ad is about 10"x25" on my screen. Got rid of things I don't want my kids seeing(me either for that matter). Really appreciate it.

    ReplyDelete
  8. Never mind. They came back. I have now traced the ads to one of two domains api.roku.com and cloudservices.roku.com. After blocking those the ads disappear but so does the channel store. All my channels work, but I can't get to new ones. Works for me though as I have all the channels I want. Still checking...

    ReplyDelete
    Replies
    1. Thanks Matt, that is pretty much where I'd got to as well. I'll post something if I find a solution, but right now I'm not overly optimistic.

      Delete
  9. The ads and Channel Store channel images are being served from http://channels.roku.com/images/* and the file names include a uid appended with -hd.jpg or -sd.jpg. You can filter these by using some kind of proxy or content filtering system and regex the file name but doing so will render the channel store useless.

    ReplyDelete
    Replies
    1. Forgot to mention that this applies to v5 of the UI. I've "fixed" my Roku3 but my older Roku with the older UI is still displaying the ads. The ads should go away when it gets the update. Unless of course Roku gets wind of this and changes things again.

      Delete
  10. The older UI ads can still be blocked by following the original post.

    ReplyDelete
  11. I just set up a Roku 3, and blocked cloudservices.roku.com and api.roku.com as Matt suggested, which works; the Channel Store is collateral damage. I wanted to add that this also prevents you from adding channels from the roku.com web interface to your account. You can add them on the web interface, but you won't see them on the Roku until you lift the blocking and let it phone home.

    As a workaround: Add the channel in the web interface, lift the blocking, go to Settings and do a scan for new software (you'll see the channel added), then restore the blocking.

    ReplyDelete
  12. All you have to do is block cloudservices.roku.com and nothing else. This will block ads but allow you to have your channel store and still update.

    I deployed a project for work with 90 rokus all on one account and wanted to block ads. This method worked for me with no problems.

    ReplyDelete
    Replies
    1. I tried blocking - cloudservices.roku.com and I still have ads on Roku3.

      Delete
  13. Guys, I have traced new ads to be coming from Akamai domain. Roku has changed the way they’re hosting advertisements. So far it appears as they are constantly rotating IPs from where the ads come from.

    Here is an example from Wireshark capture:
    HTTP GET /images/20140829101524-FA_2014_APS-RedOaks_Roku3_HD_350x490._V344320249_-hd-hd.jpg HTTP/1.1

    So far I have traced the ads to be coming from following IPs which can be blocked on the router…not sure however if this will change in future but so far it’s been working.

    23.74.8.91
    23.74.8.106
    23.74.8.104
    23.3.96.137
    23.3.96.155
    23.3.98.89
    23.3.98.49
    23.3.98.72
    23.210.5.21
    23.210.5.97
    23.210.5.90
    23.210.5.121
    23.63.227.122
    23.63.227.146
    23.63.227.147
    199.117.103.88
    67.132.183.51

    ReplyDelete
  14. Just an FYI, blocking inbound and outbound to "cloudservices.roku.com" does block the large ad in the menu interface on the right side in the latest software.

    After you block it, you have to wait, as the device seems to be caching the last ad. After the block happens the channel list also works, however it takes a long time to load. Mine takes 20-30 seconds on a Roku 3. I tried updating from the system menu and that also appears to be working, however no updates have actually came through so I can't say for sure.

    I have added channels from the channel list and it has worked with the block.

    After the last ad expires, the spot for it will be filled with a grey backdrop that says Roku on it. Anyway for people who like specifics I blocked;

    Inbound Any protocol Any port cloudservices.roku.com
    Outbound Any protocol Any port cloudservices.roku.com

    You can probably get away with only blocking outbound, but I haven't had time to try it.

    ReplyDelete
  15. Thanks for the info !

    ReplyDelete

Post a Comment

Popular posts from this blog

Moodle on Centos or Red Hat 7 (with SELinux!)

Why the need for another 'Installing Moodle' guide? Two reasons, Systemd and SELinux. The steps are presented as a Bash script, which may be run on a virgin system, installing a complete working Moodle stack in one go, including enforcing SELinux. In addition to the absolute basics it also includes adding ClamAV virus for file uploads and Memcached for sessions and 'MUC'. It does not cover any extras you will need to get your site up to production, e.g. securing your database  or updating your virus definitions automatically. Neither does it do any extra PHP configuration (upload limits, execution time etc.) or any extra complexities that might be desirable. For all of this you should goto  docs.moodle.org .

Spawning many VirtualBox machines from a single VDI

What I'm taking about here is a way to have many VirtualBox machines based upon a single hard drive image. There are many reasons why you might like to do this, but the most compelling is probably saving time by not having to install an OS over and over again, especially useful if you do anything like software testing. Our goal is a single vdi (virtual disk) file which contains a vanilla installation of our favourite OS which we can then use to conjure up a fresh new machine in a jiffy. Assuming you already have VirtualBox installed our first step is (maybe for the last time ever!) to install our OS into a new virtual machine. Now I shan't go through this as it's pretty straight forward and if you're reading this it's the sort of thing you have probably done a hundred times before. One thing of note during the initial setup is the 'Virtual Hard Disk' configuration. Be sure to allocate enough space to allow for all potential applications of the image. It wou...

Row a Concept2 on Zwift with a $10 Raspberry Pi!

Short story, I made a program. Instructions and download here:  https://github.com/mrverrall/go-row Despite there being an appetite for rowing in Zwift the fact is a rowing machine is not a bicycle and a Concept2 rower won't connect directly to Zwift. The Zwift gods tease a rowing release every now and again, but it's been coming 'soon' for years now. Don't hold your breath. But people do row in Zwift, so how do they do it? To get the data from the rowers computer, the PM5, into something Zwift recognises as a bicycle you need a device that translates between the rower and the device running Zwift. There are solutions already available to do this. Some are expensive like the  NPE CABLE (about £90 in the UK) and some are 'free' like the  RowedBiker  app. The downside with RowedBiker is that it needs to run on a extra device separate from the one running Zwift. If you have a compatible device lying around, great, otherwise you'll need to buy one. Meanwh...