—Waking Trinity from far far away: How I finally got Wake-on-LAN working with a Linksys E3000 & TomatoUSB!

April 21, 2012

Success! After a month of trial and error (and more error), I’ve finally found a way to reliably turn on Trinity over the internet. Wake-on-LAN—you know, that feature where your computer’s onboard ethernet adapter listens to the internet for a magic packet of data telling it to wake up your computer. Why do I want to do this? I want to access Trinity on the go and on command via LogMeIn, without running her 24/7. That wouldn’t be very green now would it? I was really close after reading a guide on lifehacker, but somehow I couldn’t crack it. I could only achieve my goal from within my own wireless network at home, not very useful when I cross the pond. It seems after a period of about thirty minutes, dormant devices disappear from the router’s ARP cache, making it invisible to magic packet bursts sent from the outside of your home network (or so I’ve read). The solution? I needed better tools.

The stock Linksys firmware of my WRT54GS2 is ok, but it lacks several advanced features, mainly WOL. TomatoUSB is free*, open source firmware, written by third parties giving you greater control of your router’s settings and capabilities. I’ve heard good things about DD-WRT, it seems to reign in popularity, but TomatoUSB is a bit simpler to install so—yea, I went with TomatoUSB. The great thing about it is there’s a WOL feature built right into the interface. Simply log into the router, click the “WOL” heading, find your machine, and click on it to wake it up. Easy peasy. It seems the trick to doing this from outside your network is setting up remote access to your router. Doing so requires knowing your external IP address, the one given to you by your ISP [You can check it at whatsmyip.org]. The other problem with that is, sometimes they change it without telling you, and if you’re not at home to spot the address change you’ll be essentially locked out. No matter, that problem has been solved.

Want to know how to do this for yourself? Here’s what you’ll need:

  • A TomatoUSB compatible router
  • TomatoUSB firmware
  • A free hostname from Dyn.com (sign up for pro trial, cancel right away, keep 1 free hostname)
  • The MAC address of your computer’s ethernet adapter
  • Also, you’ll probably want to check to see if your BIOS allows hardware support for WOL, otherwise this will be a huge waste of your time (most new motherboards should)

I decided to go ahead and upgrade to the Linksys E3000, and give my old router to a relative. I had my eye on one for a while, and recently found a deal on a refurbished unit. It’s dual band, gigabit piping, and supports 802.11a/b/g/n*. Much better for my HTPC, you know for streaming Burn Notice and the like. It also has a USB port, which I can use for NAS (network attached storage) or (combined with TomatoUSB) to make my standard-ly boring USB printer wireless. The bonus of the TomatoUSB variant of Tomato is it allows more functionality out of my routers’s USB port, which doesn’t normally support wireless printing with the stock Linksys firmware. Shame. In either case WOL is the same for both.

Tired of the back story? Okay here we go…

If you haven’t already, download the appropriate TomatoUSB firmware for your router and keep it somewhere handy, like say your desktop. This is also a good time to head over to DynDNS and get your hostname. Make it something easy to remember like “fetchmyip.dyndns.org”. This will act as a place-holder for your external IP address, and should your ISP decide to change it, your router will let DynDNS know so your hostname will be redirected to it. Reset your router to factory defaults. With Wi-Fi switched off on your computer, and your router connected to your computer’s ethernet port, nothing else, open up your browser of choice and browse (hehe) to “192.168.1.1”. Log in with “admin”/”admin” and look for those advanced settings. Find “firmware upgrade”. Browse to the TomatoUSB firmware you downloaded and let it do its magic. Boom, now you’re running TomatoUSB.

Connect your router to your ISP’s modem, and connect your computer to ethernet port #1 on the router. Log into your new TomatoUSB-ified router with “admin”/”admin” and dive into the settings. There’s a bunch of great new stuff to feast your eyes on, but let’s focus on the task at hand. Set a static IP address for the computer you wish to wake using its MAC address. Also, change the default password to something more secure.

In the DDNS tab (under “Basic”), enter your DynDNS hostname and login information. This will allow DynDNS to receive updates to any changes to your external IP address.

Under Administration» Admin Access, enable these settings (choose a remote access port from 2525 to say 9000, as long as it’s unused):

Now to log into your router from outside the bubble, all you’ll have to type into your browser is something like: "https://fetchmyip.dyndns.org:[the port # you chose]" and input your credentials. No matter if your ISP changes things up on you, you’ll always be directed to your router. I bookmarked my WOL page for quick access which looks something like "https://fetchmyip.dyndns.org:1234/tools-wol.asp". This way, waking my computer from afar is just a few clicks away, wherever internet is available. It even works from a full shutdown.

Of note, if your computer loses power this might not work as your router might list it as disconnected and ignore it. To work around this, I’ve set my BIOS settings to force my computer to reboot the moment power is restored, thus re-establishing it on my network. You might want to look into that. You also might want to make sure you have a decent surge protector between your expensive hardware and that potentially lethal power outlet. Have a question? Feel free to ask.

—May the power protect you.

P.S. If this post, or any other, have helped you, why not consider a small donation to help us grow?

Advertisements

4 Responses to “—Waking Trinity from far far away: How I finally got Wake-on-LAN working with a Linksys E3000 & TomatoUSB!”

  1. Andrew Leith Says:

    I use TomatoUSB (Toastman) on my ASUS RT-N16, I’v experienced the same issues you have. One thing that I haven’t been able to do is to access the broadcast address pf the subnet from WAN. If I try to enter the address 192.168.1.255 into my port forward destination, it rejects it. How di you get around this?

  2. Carlos Says:

    If you’ve made it as far as installing Tomato and want to make this more secure, you can set up Tomato as an OpenVPN server.

    When connected to VPN, your router would be available as if your were inside your LAN. You could then turn off remote administration.

    Bit more secure than having remote admin hanging out in the wind to the whole world.

    • rrbrowne Says:

      —I’m using TomatoUSB, I don’t think there’s a version with both USB support as well as VPN, so it’s either or. Right now I really need the USB port access. But thanks for pointing that out. I actually stopped using it and forgot about it altogether. I’m willing to bet I could do the same with a 3rd party VPN provider but that’s a project for another day. Life tends to get in the way of my hobby. Take care Carlos


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: