Choosing Mikrotik over Ubiquiti for a roaming setup
MikroTik devices provide a very poor configuration experience, as there is not really a "right way" to do something but rather everything feels like a workaround.
Mikrotik unexpectedly cost me many hours of experimenting and learning to setup. Was it worth it over using Ubiquiti?
Probably not, though I did learn a lot more about networking in the process.
Here is the configuration that took me a long time to create for Praze Farm.
You can get
wine /usr/share/winbox/winbox.exe running under Archlinux, and
you need to use this tool if your device has some issue getting an IP address.
I do prefer to use a Web interface, but if you find the Web interface doesn't work, do quickly try Winbox, you might be surprised that it works better!
Mikrotik's modes are not sufficiently well documented and I have had bad experiences where I've applied them and it messed up my configuration in an unexpected way.
Firewall interface sucks
Even the cheapest routers have an easier to use Firewall interface than Mikrotik. Would be good if that had some sane wizard at the very least to get you up and running and your port 22 protected!
PoE is cool
Stringing along another access point without the need to worry about powering it, is useful. However I do wish there was PoE camera hardware offered by Mikrotik too.
My wifi at home is open and you don't need to authenticate. So I am not if Ubiquiti's claims of Fast roaming have merit. Apple seems to say it is all a client side decision how to move between Access Point stations.
Attractively Mikrotik does have the ability to kick off clients but I didn't have time to try it.
Thanks to Paul Hendry who contacted me over email and introduced Queue tree to me. I have turned this A&A control graph:
Crucially I always thought a modem could work out when and where it's being saturated with the upstream (max-limit), but Paul points out:
QoS only kicks in when a link is being saturated. The router thinks it has a 100mb ethernet port to play with so would never queue traffic going out to your DSL modem.
So I know my parent's line is syncing with an upstream like so:
2017-11-09 Down:20.8 (20.7/20.8/23.1) Up:1.4 (1.4/1.4/1.5) 2017-09-04 Down:19.0 (18.7/18.9/19.0) Up:1.5 (1.2/1.4/1.4) 2017-08-15 Down:19.3 (18.0/19.0/19.2) Up:1.4 (1.3/1.4/1.4)
With Paul's help I've successfully sorted out my Apple Facetime issues with:
/queue tree add max-limit=1448k name=Upload parent=AAISP queue=default add limit-at=800k max-limit=800k name=Upload-UDP packet-mark=UDP parent=Upload add name=Upload-Else packet-mark=Else parent=Upload queue=default
IIUC this guarantees (800k) UDP traffic to Apple Facetime!
Could it be better?
This is explained by Paul as:
The (above) will set a maximum upload of 1.4Mbps on your PPPoE interface and allow everyone to upload to the full 1.4M except when UDP wants to upload then UDP gets up to 800Kbps whilst everyone else gets throttled back to what's left.
My full Mikrotik configuration
Sidenote: Other Mikrotik users recommened I just prioritise the traffic instead of limiting. This is the wrong approach! Paul explains:
The problem with using priority is it doesn't guarantee the traffic, it just increases the probability. Both child queues have to refer to the parent queue to make the decision. Also, a child queue with no packet mark won't match any packets so all the below will do is limit only UDP and allow everything else to max the line out. Kinda the opposite of what you are looking to do ;)
There seems to be a vast amount of ways of doing QoS in Mikrotik, though thankfully the Queue tree above seems to be working!
My dream would to have a table of each named client and their usage. Currently I'm torching and matching the IP with the DHCP client table manually. What an utter PITA!
I wish Mikrotik software was more open & didn't have this license weirdness.. Hopefully that would reshape the community and its software. For example, a consumer device with Bottleneck Bandwidth and Round-trip propagation time Congestion Control would be.. nice!
Better support. Ubiquiti's support surprisingly has fast, responsive support
compared to emailing Mikrotik. Perhaps tools that were able to load a
supout.rif and to simulate RouterOS could help troubleshoot problems without
requiring a "consultant"?
Mikrotik, how about having a public BTS?