So if you've read some of my recent posts - you may have seen that I purchased a NetGear LB 1121 LTE Cellular modem to use for home internet backup.
Well - I decided to upgrade!
After using the NetGear modem for a while, I started having some issues where it would disconnect from the cellular connection intermittently. Since it's not necessarily intended for the purpose I'm using it for, there wasn't any good way to set up monitoring for it either.
So I opted to upgrade to a Meraki MG21. This is one of the latest additions to the Meraki family of network devices & is available with internal (MG21) and external (MG21E) antenna.
I was pretty excited to get one, since Meraki tends to have decent analytics & configuration - and they make everything so easy!
We'll walk through the setup of the MG below - but if you're interested in seeing what the device looks like as well, definitely check out the video above!
MG Setup - Changing the APN
Okay - so after I got the SIM card inserted into the MG, the first configuration step is making sure we have the correct APN configured. As a reminder, I'm using Google Fi as my cellular provider.
This change will need to be done on the local web management interface - not from Meraki Dashboard.
When the MG powers on, by default it will hand out DHCP addresses to any device connected to port 1. At the time of writing, these addresses were in the 192.168.5.x range.
Connecting a PC directly to the MG port, we should be able to reach the local management web page - either by typing in the IP address into our web browser, or using mg.meraki.com:
In my case, I could see that the MG had auto-detected my Carrier as Google Fi. However, it still had the incorrect APN.
Using the Configure tab, we can change that setting. You'll be prompted for a username & password. By default, the username will be the serial number of the device (including dashes) with a blank password.
As shown in the screenshot above, we have a handful of options - though we'll only care about APN.
First - change the Cellular Override option to Override SIM Settings.
Then type in your APN. In my case, it's h2g2 for Google Fi.
Lastly, hit save at the bottom (just outside the view in the screenshot above).
With any luck, the modem will connect and you'll see something like this:
The modem connects, gets an IP from the provider, and is able to validate connectivity to both the internet & Meraki Cloud.
When I originally set up my MG, I did run into some issues with this. My MG connected to the internet successfully, but said it couldn't reach the Meraki Cloud. Not sure what caused it, but it shortly resolved itself within a few minutes. Just gotta be patient sometimes, I suppose!
Configuring the MG in Meraki Dashboard
Note: I won't get into how to claim your device in dashboard or how to attach it to a network. If you need help, please check out the video above where I did show how to accomplish these steps
Okay! Now that our MG is configured for the correct cell network, we can log into the Meraki Dashboard and begin configuring it.
After we've added the MG to our network, we'll see a new Cellular Gateway menu:
We'll start first by going over to Configure > Settings
First section we'll see is for Addressing & NAT:
As of today, the MG doesn't support any form of direct internet pass-through. Instead, our only option is routed mode - where the MG will hold the IP provided by our Carrier & NAT any requests from the devices behind it.
We can change the DHCP subnet configuration here, which will affect what IP addresses are handed to clients behind the MG. In my case, I'm connecting this directly to a firewall as a secondary internet uplink - so the addressing & subnet doesn't matter as much. By default, the MG will always consume the first available address as it's own.
Next, we have a section for DHCP & subnets:
Here we can change our DHCP lease time, and what DNS servers are provided to our clients. The DNS setting does have pre-defined options for Umbrella DNS, Google DNS, or using whatever the upstream carrier provides. You're also welcome to manually specify which DNS servers to use.
We can also configure reserved & fixed IP addresses here.
Reserved IP ranges are IP addresses that we don't want the MG to provide via DHCP. So if we had any statically configured IP addresses, we could reserve them here.
Fixed IP addresses are for any client that needs a DHCP address, but we want that IP assignment to be permanent. We'll enter the client name & MAC Address here, as well as the IP we want assigned to that device. In my case, I went ahead and inserted my firewall MAC address - and I'll just allow the firewall to get its IP via DHCP from the MG.
By default, the MG will block all inbound traffic from the cellular network. If we need to allow any traffic inbound, we can change the Port Forwarding settings:
This allows for a light configuration of an inbound NAT. Right now, I probably won't be using this. However, I may permit VPN access into my network via the MG at a later date.
If I needed to add anything here, the MG allows us to translate an external / public IP & port to any internal IP / port combination. It appears we can even add a IP filter to permit only trusted source addresses.
Lastly - We can configure settings for Traffic Shaping:
In this section, we can throttle our cellular throughput & configure uplink monitoring.
By default, the cell bandwidth is set to unlimited - but we can drop this down if needed. In my case, I am not using an unlimited cell data plan - so I will throttle cellular speeds to preserve data & reduce charges.
In addition, we can configure one or more IP addresses to check uplink connectivity. These addresses will be used to collect loss & latency data via the cellular connection. The MG monitoring dashboard will collect & graph this data for easy insight into the performance metrics.
Note: As a word of warning, these uplink monitors are constantly sending ICMP/ping requests. If you have a limited amount of cellular data, this may consume more data than you would like. In my testing, using only one IP for uplink monitoring consumed about 70-100M per day. More on this below...
Monitoring the MG
Now we get to the good stuff! The primary reason I opted to buy an MG was for monitoring & analytics.
Back on the dashboard, if we use the lefthand menu - we'll go over to Cellular Gateway > Monitor > Cellular Gatways. Then select our MG out of the list.
The primary summary page isn't too exciting:
The MG does have two gigabit ethernet ports - and we'll see the status here.
We'll also see the connectivity history to the Meraki cloud - which in my case is nearly 100%. Seems like one very minor blip just after 4am.
We can also see the current network utilization on the MG. This is great to have - though my current utilization is pretty low... (I am using this as a backup modem, after all).
On the left side of the page, we'll see some of the usual info we expect from a Meraki device. Current IP, location, Serial number, and IMEI. Just below the view of the screenshot, there is also an indicator for firmware version.
Onto the Uplink tab! Let's see what we have:
First we'll see the Configuration section. This just gives us a quick view into what settings the MG currently has.
We'll see the current IP info provided by our carrier, and also some statistics on our cellular connection.
Just below that info, we'll see our cellular graphs:
This is what I wanted! It's great to see a quick view into what our active uplink traffic is - as well as look back historically at what our LTE signal quality has been.
Not pictured here - but there is also a section of graphs on this page for our uplink monitor. This is where we can see our current & historical loss & latency stats for the cellular connection. After a few days of use - I disabled the uplink monitor due to the amount of data the feature consumes.
Finally, we also have the DHCP tab:
This will show our current DHCP subnet & any clients that have been provided an address. In my case, there isn't any current leases here - because my firewall has a fixed IP.
Performance && Considerations
I've had the MG running for about a week now, and wanted to provide some things to think about.
First - How does the modem perform? Well, the first day I had it set up - I was able to get ~150M download speeds using the MG's built-in speed test utility:
That being said - I'm lucky if I get 30-50M on an average day. I might have just gotten lucky that day with some light cellular utilization in my area. Overall though, I'm pleased with the speeds I get - they'll certainly fit my needs.
For the few days that I had the uplink monitoring running, I saw good results. Usually 0% packet loss, with a rare spike of 5-10%. Latency was a little less reliable, but usually bounced between 50-150ms. This was also much less than the NetGear modem I had been using, which averaged 200-250ms.
Speaking of uplink tests! Let's talk about data usage....
By default, the MG communicates intermittently with the Meraki cloud - which consumes some data. By my measurement, this is usually less than 10Mb/day. No problem here.
The uplink tests, on the other hand, do consume a bit of data. I'm not sure what frequency these run on, but it's fairly often. Even with one uplink monitor to 18.104.22.168 configured, I was seeing data usage of 70-100Mb a day.
While seeing those metrics is valuable to me, it's also not worth the data charges. If I was using a SIM card with an unlimited data plan - no doubt I would keep this feature enabled. However, since I am paying for the cell data used - I opted to disable this feature.
The MG does still perform it's check-ins to the Meraki Cloud - so you'll have availability statistics & monitoring... But disabling the uplink monitor means you'll lose the granular data on loss & latency.
Lastly, and another word of warning, when you're actively viewing the MG monitoring page - this also consumes additional data. To demonstrate - I'll post a snippet of the screenshot from earlier:
If you notice, all the way on the far left there was barely any activity. However, once I loaded the MG monitoring page - you begin to see minor spikes in data usage as the Meraki Cloud starts actively polling the MG for data.
In my experience so far, this isn't a ton of data. I've checked in to see how the MG has been performing a few times this week, and each time has totaled around 10-15Mb of data usage.
To sum up - I'm cheap and want to avoid excess data usage. Just wanted to provide some of that info as something to be aware of.
I'm only a week in, but pretty pleased with the MG's performance. It's maintained a very solid & stable connection compared to the NetGear modem it replaced. The device is intended to provide LTE connectivity or backup service for business networks, so I would certainly hope it would meet my home needs :)
Outside of that, I do wish there was a little better documentation & clarity from the Meraki team on data usage. Right now their documentation only mentions the 6-8Mb of usage due to backend data to/from the Meraki Cloud:
I would be happy to see additional settings on the uplink monitor to allow me to choose the polling frequency. I feel like throttling down the amount of requests could reduce data to a point where I would be comfortable re-enabling that feature.
Oh - and currently there are no native email alerts for the MG. So if the MG goes offline, etc... there is no alerting from the Meraki Dashboard. This kinda sucks. I'm sure this is coming soon, but for the time being I'm inclined to write my own monitor using the Dashboard APIs. (see note below!)
Overall, I'm happy with the device. Definitely looking forward to future feature & firmware updates to see where the Meraki team takes this platform!
Update 08/28/2020 - Looks like in the week since I posted this, Meraki added alerting for the MG! Now you can be notified if the cell gateway goes offline: