I've worked from home for quite some time and having both fast and reliable internet access has of course always been a huge concern for me. In order to increase both the speed and reliability of my internet connection, I recently made an upgrade.

My Ubiquiti Home Network

Regular readers will know about my Ubiquiti Home Network, a seriously worthwhile investment I made into getting myself kitted out with something to replace the awful WiFi router provided by my Internet Service Provider (ISP).

Seriously, I couldn't be more impressed with the hardware and if you follow me on Twitter you will see occasional tweets about new features I've found or cool stuff that it can do, like this:

I could harp on all day about how awesome this is to play with, the sweet Web UI, how to setup HTTPS on the Web UI, how to do secure DNS for your whole network and even how to catch screwy devices, but I won't, because you can read those blogs and more. This blog, well, this blog is about speed.

Moar speedz!

Internet in the UK is shit. I mean really shit. Whenever I talk about how fast my connection is at home I am regularly inundated with "how slow?" comments. It's basically the rest of the World that has faster connections than us, except Australia of course. USB drives on kangarooback would be faster than the WiFi at Troy's house, but I digress.

Having reliable connectivity and good speed has always been essential for me as a tech nerd but especially so since I started working from home a few years back. The Ubiquiti home network mentioned above was as much making sure things would work reliably as it was about geeking out over cool gadgets. It needs to be reliable, it needs to be fast. No exceptions. This also extends to WiFi when I'm travelling and that's where things tend to fall apart really fast. Hotel WiFi, train WiFi, airport WiFi. I'm sure we've all been there and I'm sure we've all experienced it. It's slow, it's unreliable, and a lot of the time it's barely enough to send a tweet.

The GigaCube

To solve my WiFi woes whilst travelling I bought myself a GigaCube.

This not-too-bad looking device is a 5G hot spot that does 4G fallback and provides a local WiFi network for ~50 devices before it starts hitting issues. That picture there was whilst I was snowboarding in Norway with Troy and Charlotte and I kitted out our entire cabin with fast WiFi.

The cool thing is, the device is relatively portable. Yes it's a little big but it's really not a big deal and it's a price I'm willing to pay to have reliable WiFi with me wherever I go! Train WiFi in the UK is exceptionally bad and this things gives me a solid connection for hours on end when I'm travelling to London and even when moving at high speed, it still gives me pretty good throughput.

It has saved my ass on a few occasions too. Some of you will know that I deliver a TLS training course and the Hack Yourself First Workshop in collaboration with Troy Hunt. These courses both require fast and reliable WiFi and there have been occasions where hotels or offices have let me down, but that's no problem now as my GigaCube has stepped in to save me.

With the GigaCube doing all of these awesome things whilst I'm on the road, it doesn't do much when I'm at home. I could maybe plug it in and have a few devices use it to share the load between that and my home connection, but that's just too much of a pain in honesty. I wondered if there was an easier way to incorporate the GigaCube into my home network and it turns out, there was. There was a very easy way to use it.

Ubiquiti to the rescue!

I have the Unifi Security Gateway (USG) at home and it turns it supports dual WAN allowing you to easily have two different connections to the Internet. There are two ports on the USG and one currently goes out to the modem provided by my ISP and the other was sat empty, until now.

To set this up, the first thing you need to do is enable the second port on the USG. Go to the Devices section of your controller, select the USG to open the information pane, select Ports and then Configure Interfaces.

Once you save those settings, the second port is ready to be used. You then need to go to Settings (bottom left), Internet and then WAN Networks.

Here you should see your current WAN network and you need to 'Create New WAN Network'. Fill out the details as necessary and if the device you're going to connect does its own DHCP, like my GigaCube does, select DHCP to configure WAN 2.

The last setting to configure is how to use WAN 2. I wanted my USG to split load across my main connection and the GigaCube so I set it to Weighted LB and to take 30% of the load. My main connection at home is ~80Mbps and the 4G around here can do ~40Mbps so that seemed like a reasonable split. If you just want it as a backup you can configure it to only be used if your main connection goes down.

Hit the 'Done' button and you're done! Seriously, that's it. I was surprised how easy that actually was and I wanted to know if I'd done it right and if it was actually working.

Testing it out

The load balancing isn't going to split things how you might think. What I mean to say is that if you do a speed test now, you're only going to see the speed of your main connection as you did before. Having dual WAN like this doesn't give me ~120Mbps of download (the 80 + 40 above) for a single task, it doesn't work like that. What I can do though is load up my connection and watch various things go out over each of the WAN connections. Take this for example. I fired up Chrome and in one tab I opened SpeedTest and in another I opened up Fast.com to see how they performed.

The important thing to note in those screenshots is the different source IP that each test is showing. The SpeedTest one is showing my 93. IP from PlusNet and the Fast.com test is showing my 85. IP from Vodafone. I see the same if I do a couple of 'what is my IP' checks too.

Depending on how much load is on each interface a connection may go out over WAN 1 or WAN 2 and as a result, will have a different source IP. To see what the GigaCube was doing, I can load up the web management interface for the device despite it being on a different IP range.

At this particular moment in time we can see it's pulling around ~15Mbps of download over 4G and there's currently only a single device connected to it, which is my USG.

Everything is better

If our home connection gets saturated with the huge amount of streaming that seems to take place, I can now rely on an extra ~50% bandwidth to keep us going. Also, if we do have any issues with our home connection, we can fall back to using the GigaCube exclusively which will keep our entire network online. The cellular data usage may be a concern for you depending on where you are in the world but the WAN 2 port on the GigaCube could literally be hooked into anything, including a modem on another phone line if you really wanted to up the ante. For me though, the GigaCube comes with unlimited data in the UK and Europe, which actually translates to 3TB (yes, 3 terabytes!) of data per month at 5G speeds and then throttled access on 4G for the remainder of the month should you use that up. Whilst we do chew through a significant amount of bandwidth at home, it's not quite that much so we shouldn't ever have any issues.

As I'm likely to spend the next few months at home now with all of my national and international speaking/training/consulting gigs cancelled due to the Coronavirus, I figured it was an opportunity to make sure I won't have any issues with my connectivity at home. If you're going to be working from home as much as I am, maybe take a few minutes just to make sure your hardware is all up to date and dependable. With more people being at home there is likely to be a significant increase in your dependence on WiFi and probably a lot more streaming is going to take place too so if you do have data plans or caps, make sure you check what happens if you exceed them. I'm sure the last thing anyone wants right now is a surprise bill or a surprise loss of connectivity!