How To: Watch Hulu in Canada. The Definitive Guide.

Update, November 6th, 2010:

The method in this post no longer works. But, I’ve found a new workaround.

Disclaimer: The method described below almost certainly violates Hulu’s Terms of Use. I do not know the legal ramifications of breaking these TOU. I am not suggesting that you actually follow my fictional instructions.



I’ve finally cracked the nut on watching Hulu in Canada. At the time of writing, this method is 100% successful; I’m confident the method also works internationally, but I have not been able to get any corroboration. Before you read on, let me warn you that these instructions require basic tinkering skill on OS X, Linux and routers; advanced tinkering skill on Windows. At the bare minimum, you’ll need to know how to open a command prompt/terminal window in your operating system.

Instructions:

  1. Open Firefox. The workaround requires a Firefox add-on, so unfortunately the method is Firefox-only at this point in time.
  2. Install the “Modify Header” add-on, download it here: http://addons.mozilla.org/en-US/firefox/addon/967
  3. Configure the add-on using the instructions I previously posted for watching Comedy Central in Canada. Here’s a quick reference image: http://imgur.com/Feb4 VERY IMPORTANT NOTE: The IP address referenced in the instructions “12.13.14.15″ is being actively blocked by Hulu, You’ll need to replace it with a known American IP address. Ask an American friend for their IP or see Appendix A for instructions on how to find a US IP address. The address you use should not affect the method, it’s merely being used to trick a portion of Hulu’s geo-location algorithm.
    NOTE: These settings interfere with other sites that you WANT thinking you’re from Canada. You can always disable the rule in modify headers when not using Hulu.
  4. Block port 1935.
    This is the real breakthrough I came across. Turns out Hulu’s flash video player attempts a direct connection to your computer via the RTMP port to verify your real IP.  When you block this port it the falls back to HTTP allowing the video to play. Blocking ports is fairly straightforward on Mac and Linux, but looks to be somewhat difficult on Windows. See Appendix B for complete Port blocking instructions for all OSes.

Notes:

  • If you are able to navigate Hulu.com, load a video and watch the commercial but then get a blank player or an error message afterwords, then you have not properly blocked the port.
  • If you are not even able to navigation Hulu.com, you have misconfiguration the modify headers plugin, or you are using an IP address Hulu is actively blocking.
  • This work-around also works for other sites that have video players powered by Hulu on the backend. Discovery Channel for example.
  • It’s likely that non-Hulu-related restricted video websites may use a similar RTMP verification method will not function. You may want to disable the Port block when not watching Hulu. See Appendix C for instructions.
  • It’s unclear whether the holes that allow this workaround are a bug or a feature. My guess is that closing them my results in certain IP on US soil to be blocked inadvertently.

Thanks to Jason Pollock, who’s slashdot comment pointed me in the right direction; and the Reddit /r/Canada community – especially MarshallX and got_milk4 – who helped me out with my initial instructions.


Thoughts about Hulu:

In the past I’ve had some limited experience checking out Hulu in hotel rooms on trips to The States, I’ve generally been impressed by it and I’m sure I’ve written about my impressions in previous TV posts. After a few days of “real world” usage, I’ve changed my mind a little. I no longer see Hulu as this Holy Grail of online TV watching experiences that Canadians could only dream of. It’s not a real alternative to torrenting and it’s only somewhat better than Rogers On Demand or the various individual Canadian network TV experiences.

The selection of available shows is (I hesitate to say “terrible,” Hulu has a metric tonne of content) not great, I was not able to find full episode of any recently aired show I wanted to watch. As far as I could tell, if the show is new Hulu only has short clips. On the other hand, I was able to find full series of shows I’d have difficulty finding in torrents or elsewhere online – like Sliders and Firefly. Hulu’s movie selection is not even worth mentioning.

Aside from the selection, I was astonished by the amount of ads. Full length shows typically have a 15-90 second pre-roll ad, plus network ID, plus 15-60 second interstitial ads during the show at broadcast TV; due to the heaps of praise Hulu generally receives in the Tech media, I was under the impression that they served little to no advertising. Granted it’s less than regular TV, but more than I’d accidentally watch on a PVR and it’s more than the 0 I’d see in a torrent.

The TV industry needs to find a better way to make money.


Appendix A. How to find a US IP address.

As I mentioned above in step 3, the X-Forwarded-For header requires a valid US IP address. It’s best if you use a unique-ish IP address, instead of the ones listed in my example. There are 2 simple ways to find a US IP address.

Method 1)
Ping a known US domain name, record the result. For example:

PING google.com (74.125.95.104): 56 data bytes

Downside: it’s hard to know for if the server that responds is actually located in the USA. If it works, run with it.

Method 2)
Pick a random valid IP address for a known US Organization. A few examples:
AT&T: 12.0.0.0-12.255.255.255, 32.0.0.0 – 32.255.255.255
MIT: 18.0.0.0-18.255.255.255
Xerox: 13.0.0.0-13.255.255.255

Downsides: none

Appendix B. Blocking Ports.

This is the tricky part. If you have a router or firewall that gives you a simple interface for blocking ports, I’d suggest using it, rather than OS-level configuration. Anyways, here are the instructions for various OSes:

Mac OS X:

sudo ipfw add 0 deny tcp from any to any 1935
sudo ipfw add 0 deny udp from any to any 1935

Third-party firmware routers (Tomato, DD-WRT, OpenWRT):

iptables -t nat -A PREROUTING -p tcp --dport 1935 -j DROP
iptables -t nat -A PREROUTING -p udp --dport 1935 -j DROP

Windows XP, Vista, 7:
See section 3 of MarshallX’s stellar Google doc for instructions. Based on comments I’ve seen on the Reddit post, this method is a little finicky.

Linux:

iptables -A INPUT -p tcp --dport 1935 -j DROP
iptables -A INPUT -p udp --dport 1935 -j DROP


Appendix C. Undoing the Block.

Mac OSX:

If these are the only firewall rules you’ve ever added:

sudo ipfw delete 00100
sudo ipfw delete 00200

If you’ve got other rules in the firewall run:

sudo ipfw list

Output will look similar to this:

00100 deny tcp from any to any dst-port 1935
00200 deny udp from any to any dst-port 1935
65535 allow ip from any to any

Use that first number as the ID for the ipfw delete command.

Windows: Delete the policies and filters you created (the ones with “Hulu” in the name).

Linux: you’re on your on. I think you run the same commands you use to block the ports, instead of “DROP” use “ADD”. But I can’t guarantee that.

  • Pingback: OHRYAN.CA » How To: Watch Hulu In Canada (Maybe?)

  • Seba

    This indeed worked yesterday on hulu.com. It's not working now, maybe Hulu changed their way of cross-checking. It is working in other hulu based channels like Discovery Channel, maybe they are using an older version?
    This is confirmed to work on BBC.com ABC.com and some others.

  • Robsays

    This hack is pure effing genius! I was wondering if you knew what was necessary to fix the hack? It seems like they've figured out the 1935 part…

  • ohryan

    I was noticing that too. Odd thing is, it works now WITHOUT the port block (for me, on mac).

  • Robsays

    I tried blocking the ports on the mac, blocking them on the router, block them on both, and still can't figure it out. It's like Hulu knows all my moves before I make 'em.

  • Zrenfire

    For finding a US IP:
    Google: site:http://whatismyipaddress.com/ip/ “United States”

  • ohryan

    Good tip!

  • Rick

    …are you a redditor?!

  • ohryan

    yes.

  • noname

    I am getting errors watching – I haven't changed anything since it worked. Anybody experiencing this effect too? I get: “Sorry we are unable to strem the video. Please check your internet connection and try again.”

  • noname

    I am getting errors watching – I haven't changed anything since it worked. Anybody experiencing this effect too? I get: “Sorry we are unable to strem the video. Please check your internet connection and try again.”

  • Steven

    To undo Linux port drop, replace DROP with ACCEPT.

  • Echinos

    That will add another rule, the DROP rule will still be there.

    Change the -A at the beggining to a -D (delete), leave the rest of the line the same, ie:

    Add rules:
    iptables -A INPUT -p tcp –dport 1935 -j DROP
    iptables -A INPUT -p udp –dport 1935 -j DROP

    Delete Rules:
    iptables -D INPUT -p tcp –dport 1935 -j DROP
    iptables -D INPUT -p udp –dport 1935 -j DROP

  • Guest

    OK guys – I have a problem. I have followed the directions but I still cannot see Hulu. I am running Windows XP Professional 2002 SP3 on a virtual machine.

    I did the Modify Header part right because I can now see Comedy Central.

    But, when I tried to follow MarshallX’s steps for blocking the port I have a discrepancy. In Section C it says to set both the source and destination IP addresses to “Any IP Address.” When I try that I get an error that says “The source and destination address cannot be the same.”

    I tried googling this error but with no luck. Any ideas?

    Thanks

  • Anonymous

    I believe Hulu have patched the hole.

  • Dcason

    Aug 17/10

    Hi, I tried it today but no luck …. are they’re any updates for this or is it just child-proof which is why I can’t get teh little sod to work !? (grin)

    Cheers’
    Dave

  • http://Website Rusty Shackleford

    It doesn’t work anymore. Goodbye Molto Mario with nary a torrent to be found.

  • Ryan

    Is this no longer working?

  • Shannon

    I haven’t been able to make this work no matter what I do. Am I doing something wrong or has Hulu caught on?

  • Anonymous

    Yeah, it stopped working a couple of weeks ago.

  • hulucanada

    i set up a website with all the links to get u setup to watch hulu and more any where in the world on ur ps3 xbox360 wiii pc ipod ipad have fun

    https://sites.google.com/site/tvonps3xboxwii/

  • http://twitter.com/best_vpn Best VPN

    Other alternative is just to hook up with a VPN. I use VPN Authority ( http://www.vpnauthority.com )…. makes it WAY easier to link up to hulu. :) anyways, my 2 cents.

  • NellyF

    Sweet deal – VPN Authority also worked great for me. Recommend them for their customer support and super cheap too! Thanks!

  • GermanMan

    Thank you!! VPN Authority worked awesome for me… the customer service was A+ and was super easy to connect to.

    Best part is that I get my HULU and Pandora!! highly recommended!!! :) just my 2 cents.

  • GermanMan

    Thank you for this. Worked amazingly. I’d highly recommend them as well. The customer service and price is phenomenal.

  • Ass

    worked perfectly just yesterday, not today!

  • Anonymous

    Yeah, unfortunately I’ve been getting some sketchy results with this method. Haven’t tracked down why. I suppose it’s possible that Hulu is doing some sort of blacklisting.

  • Chinadoll

    Absolutely brilliant! worked for me in seconds and i’m no techie! :) My props to these folks!

  • Anonymous

    I think the obvious downside with a VPN is that one with a reliable enough connection will cost money.

  • http://www.facebook.com/people/Ann-Moroz/1486901350 Ann Moroz

    I use personal vpn http://vpn-account.com to access Hulu. It works great for me.

  • Marty

    Agreed with Ryan that this site costs a bit of money, but it’s a decent service and faster (i.e. no buffering time) when compared with the free services.

    Not sure why the link to the site was removed .. took me a while to find it online, but it’s pretty simple http://www.vpnauthority.com for those interested. :)

  • Montypython

    Ya – paying for something that’s free in the states.. but it’s such a small price for not having to live in the states. :) w00t w00t!

    i’m on the service and it works! Just finished my first month and will be extending for a year!

  • Topgear10

    so whats a free way to wach hulu ?
    does anyone know some hacks or programs to run ?

  • http://www.vpnadvice.com VPNAdvice

    Nice tutorial. Hate to see it’s not working anymore.

  • JohnkiM

     These guys are launch a beta event for their proxy service. They claim no speed loss while watching Hulu and other channels. http://www.facebook.com/event.php?eid=131412486934389

  • Kra1953

    use hotspot shield ,it is free

  • Elpet

    An unnecessary anti-US slam.  Grow up! 

  • Nick

    Hi Ryan,

    I couldn’t find your contact information but I launched a
    new service that will allow people to watch Hulu outside of USA. It has
    all the benefits of VPN and minus the drawbacks of VPN as well. It’s
    called UnoTelly (http://www.unotelly.com). I will be greatly appreciated if you can try it out!

  • Frank

    cool – thanks Marty! tried hulu for the first time. I must say it’s damn impressive.

  • Pingback: Duimschroef - Pijnlijk Rechtvaardig over games en tech

  • Anonymous

    Hello, my group is just establishing our first website, searching and working out what is needed. This blog stuck out right away.

    Online Real Estate Marketing
    glutathione

  • Anonymous

    I thought it is going to be some boring old post, but it really compensat for ours time. I will posted a link to the article on our blog.

  • ibivi

    Hi.  None of this works anymore because Firefox no longer allows 3rd party add-ons.  So frustrating!

  • Rob Marin

    Ok as of 5 minutes ago a good free vpn service to access hulu in canada is raptor vpn. If u have trouble getting email while using it, find out if you can secure your smtp connection, if not, you can sign up for a free email account with gmail. Gmail works with programs like outlook and windows mail. Raptor appears to be 100% free, and limitles. Any questions or comments feel free to email me at [email protected].
    Enjoy

  • Meghan

    Wicked… love it.  Thanks!

  • JohnBerz

    Cool – still works great.  Thanks guys.

  • Zardoz

    Agreed – hotspot shield works. It’s a small program, and can be turned off and on at your leisure.

  • ced

    Dude I did all what you said and it doesn’t work anymore :( I’m writing this comment on March 15, 2012. Please fix it if you can.

  • ced

     Where are you? I just did that in Canada and doesn’t work :(

  • ohryan

    Haha, I love that you’re asking me to fix something that Hulu has done. Brilliant. You could try the newer method that I linked to at the top of the post: http://ohryan.ca/blog/2010/11/06/how-to-watch-hulu-in-canada-a-new-method/ But I don’t think that one works anymore either. 

    Sorry. 

  • Rjill7475

    I have a better alternate. Go to http://www.unotelly.com and try free 7 days unodns to watch main U.S. channels like hulu and netflix anywhere in world.

  • Sean

    I found a great guide on watching Hulu in Canada here: http://www.howtogetitincanada.com/how-to-watch-hulu-in-canada/.  They recommend the use of a VPN that has thousands of US locations and works for me daily to watch Hulu, listen to Pandora, etc.  Check it out if you’re looking for a VPN solution.  

  • LaSelvaBeach

    Thanks so much!  This totally works for the daily show website.

  • Bderek16

    I
    am a big fan of US netflix and hulu. Unfortunately when I moved from US
    to canada, I was disappointed  to see the level of difference between
    the broadcasting of these channels. Then I decided to take any vpn
    service subscription and tried so many but one of my net friend told me
    about the backdoor access for http://www.unotelly.com/unodns and now I can
    watch all US channels without any cost. For this you just need to change
    your dns settings with the below settings, refresh and get started.

    Primary DNS to 23.21.182.24
    Secondry DNS to 184.169.139.227

    Enjoy !! Do let me know if feels any trouble in launch.

  • ohryan

    Why would I pay for a DNS service when I can use Tunlr for free? 

  • Namred

     Canadians think that by running down the USA, it makes them better!!!

  • Karl

    From my experience proxies are not very reliable and kind of slow. VPN services tend to do a better job overall and are somewhat more safe.  I`m using this VPN service for some time now, it`s pretty fast and user friendly.

  • aprilandy

    I’ve always watched Hulu using Blockless.com service. It’s way affordable than other VPN and gets you the best streaming speed as well.

  • Angel Bekk

    I used https://blockless.com/channels in watching HULU in Canada. I enjoy Watching TV shows & movies free online. Love the  current episodes of Family Guy, Glee, SNL and many more hit shows. No registration required.

  • Fxdisposal

    I’ve been using Jumpto, I access Pandora , hulu and many other sites that as a Canadian are restricted. Try it

  • Lith

    thanks for this post, personnaly i use this method : http://www.how-to-change-ip-address.com/look-hulu-cbs-abroad/ and it’s work perfertly

  • Alma Ayala

    I can watch hulu at Ottawa using EstoyEn service, i have been enjoying it at my Android, AppleTV and PS3,Very good service and low prices.