Wifi controller voor wifi-netwerken: vier oplossingen getest
Soms zijn repeaters of mesh-wifikits niet de juiste oplossing, bijvoorbeeld als je overal snel wifi wilt maar met gescheiden zones voor je familie, gasten en smarthome-gadgets. We bekijken vier wifi controller-oplossingen voor multizone-netwerken en geven tips voor het instellen.
Lees verder na de advertentie
Als je meerdere draadloze netwerken voor verschillende toepassingen wilt regelen, is een eenvoudige repeater of een mesh-wifi-kit niet voldoende. Die kunnen maar één netwerk doorsturen, vaak nog wel een tweede, maar nooit een derde of zelfs een vierde. De manier om een multi-zone wifinetwerk in je hele huis te regelen verloopt dus via een infrastructuur met accesspoints die overweg kunnen met multi-SSID-technologie en VLAN-tagging. Dan kun je de via de cloud aangestuurde kleine stofzuigrobot, die gevoelig is voor hacks via internet, op een ander wifinetwerk aansluiten dan je slimme deurslot of slimme deurbel.
Dergelijke wifinetwerken, zelfs kleine set-ups, moeten bij voorkeur centraal opgezet worden, in plaats door elk accesspoint afzonderlijk te configureren. Veel fabrikanten van accesspoints bieden daar wifi controllers voor om de vorm van een los apparaat (appliance) of als serversoftware, virtuele machine of als clouddienst. We vergelijken hier de aansturingsopties van vier leveranciers van populaire accesspoints, te weten Grandstream, Mikrotik, TP-Link en Ubiquiti.
Wifi controller voordelen
Tip!
Krijg deze week tot 39% korting op een abonnement
Met zo’n centrale bediening kunnen zelfs kleine bedrijven de authenticatie via individuele wachtwoorden of certificaten inrichten met WPA2-Enterprise (ook bekend als WPA2-radius of -EAP). Dan hoeven de wifi-instellingen niet overal te worden gewijzigd wanneer bijvoorbeeld een medewerker vertrekt. Er kan ook een hotspot met eenmalig te gebruiken vouchers worden opgezet, om bijvoorbeeld hotelgasten via een portal toegang tot internet te geven gedurende de periode dat zij in het hotel verblijven.
Als je extra accesspoints moet installeren om meer oppervlakte af te dekken of betere dekking te krijgen, is dat met een controller heel eenvoudig te regelen. Vaak is het voldoende om alleen het nieuwe accesspoint aan te sluiten, en soms moet je nog ergens op een knop duwen.
Om zo’n eenvoudige provisioning te laten werken, moet het nieuwe accesspoint natuurlijk van dezelfde fabrikant komen als de wifi controller. De controller bewaakt ook je netwerk. Het is eenvoudig te zien hoeveel clients er zijn verdeeld over welke accesspoints en de wifibanden (2,4 en 5 GHz), welk dataverkeer ze genereren en waar je eventueel last zou kunnen krijgen van een bottleneck.
Wifinetwerk-test
We hebben voor elke fabrikant ten minste twee accesspoints met de bijbehorende controller in de praktijk getest en daarvoor een apart testnetwerk opgezet (zie het schema hieronder). Als speciale eigenschap moet een SSID met een dynamische VLAN-toewijzing draaien. De radius-server vertelt het accesspoint bij het inloggen van een client tot welke netwerkzone de client behoort. Op die manier kunnen alle clients makkelijk verbinding maken met hetzelfde wifinetwerk en worden ze via het accesspoint vervolgens gescheiden in verschillende netwerken.

Die iets complexere configuratie compenseert zijn complexiteit met een duidelijkere netwerkstructuur. Bovendien zorgt het voor iets meer radiocelcapaciteit, omdat de accesspoints minder beacons moeten sturen die met de traagste zendsnelheid worden uitgezonden en dus de zendtijd opeten.
Een aparte SSID is alleen nog nodig voor gasten die zonder versleuteling toegang hebben tot het internet via een voucher-portaal. Ubiquiti was de enige die op het moment van testen een iOS-app aanbood waarmee eenvoudig vouchers kunnen worden aangemaakt. Bij de andere accesspoints doet de beheerder dat via een meer of minder fraai vormgegeven browserportal.
Voor de individuele authenticatie hebben we Freeradius onder Linux gebruikt als Radius-server. Tips voor het installeren staan verderop onder het kopje ‘Radius-tour’. Hoewel Mikrotik een Radius-server aanbiedt via een na te installeren package-user-manager, snapte die het Radius-attribuut niet dat nodig is voor dynamische VLAN-toewijzing.
Multicast-problemen
Bij de dynamische VLAN-toewijzing komt een erfenis uit het verleden naar voren die wat uitleg nodig heeft. Toen de wifi-standaard IEEE 802.11 werd gecreëerd, bestond het IPv6-protocol, dat vandaag de dag steeds meer in gebruik wordt genomen, nog niet. Unicasts (één zender, één ontvanger) en broadcasts (één zender, iedereen ontvangt) kan een accesspoint rechtstreeks omzetten van de netwerkkabel naar de ether.
In het eerste geval wordt de sessiesleutel gebruikt die bij het inloggen individueel in paren wordt aangemaakt, in het tweede geval de groepssleutel voor alle clients in een SSID.
Maar multicasts (een enkele zender, een gedefinieerde groep ontvangers), die bijvoorbeeld nodig zijn voor de adresvorming en het leren van routes bij IPv6, vallen bij een dynamische VLAN-toewijzing buiten de boot. Het accesspoint mag de groepssleutel niet gebruiken, want dan zouden multicasts ook bij ontvangers aankomen die niet tot de multicast-groep behoren.
Als het accesspoint toch multicasts op radioniveau uitzendt, zullen de wificlients zich in meerdere IPv6-netwerken tegelijk bevinden en is er vervolgens geen netwerkscheiding meer.
Het zou mogelijk moeten zijn om een multicast-pakket meerdere malen los te versturen met behulp van individuele sleutels, maar dat zou dan veel te veel zendtijd kosten bij grote groepen en de doorvoercapaciteit in de radiocel ook behoorlijk verminderen.
Een workaround is dat een accesspoint voor de verschillende VLAN’s in een SSID de groepssleutel dynamisch wisselt, zodat de stations die bij een VLAN horen hun multicasts binnenkrijgen. Alleen Mikrotik en Ubiquiti bieden dat. Bij de TP-Link heb je geen ‘last’ van dit probleem omdat er geen dynamische VLAN-toewijzing is.
De net hiervoor beschreven multicast-naar-unicastscheiding (MC2UC) wordt elders gebruikt, namelijk wanneer het accesspoint een multicast-stream voor live-IPTV moet doorsturen. Alleen dan komen individuele MC-IPTV-streams op zo’n manier bij de wificlients terecht dat er een blokvrij beeld ontstaat.
Wifi controller back-up
Aangezien niets werkt zonder de centrale wifibesturing, moet die continu beschikbaar zijn. Als die als appliance, als software op een server of in een virtuele machine draait (zie de tabel onderaan de testresultaten), kun je een tweede exemplaar als hot-stand-by in je netwerk opnemen. Als je externe diensten vertrouwt, komt het cloudaanbod van sommige fabrikanten als optie in beeld. Dat bespaart op extra hardware of het onderhouden van serverfuncties.
Bij Grandstream draait de controllerfunctie voor kleine netwerken direct op een accesspoint. Daar kan een tweede accesspoint worden geconfigureerd als een stand-by controller die het automatisch overneemt als de eerste uitvalt.
Mikrotik maakt het bijna net zo makkelijk om te wisselen als Grandstream: elk apparaat dat het eigen RouterOS draait kan de controllerfunctie, die hier CAPsMAN wordt genoemd, overnemen. Die functie kan ook op meerdere apparaten tegelijk draaien, waardoor er een hot-stand-by ontstaat.
De scriptfunctie van RouterOS helpt om de configuratie van het actieve apparaat synchroon te laten lopen met het apparaat in de stand-bystand, maar je moet zelf het juiste script schrijven.
Bij TP-Link en Ubiquiti blijven de accesspoints (eenmaal ingesteld), zonder controller draaien, maar sommige opties zoals het gastenportaal met vouchers werken dan niet. De beheerder moet daarom de netwerkfunctie in de gaten houden en de controller opnieuw opstarten of een vervanging regelen, bijvoorbeeld in de vorm van een virtuele machine. Daarvoor moet hij natuurlijk regelmatig een back-up van de configuratie maken.
Testnetwerkdetails
Alle accesspoints en de controller zijn aangesloten via verschillende VLAN-switches. Voor het beheer van de infrastructuur wordt een untagged VLAN gebruikt. Twee andere VLAN’s transporteren het verkeer van de wifi-clients. Eentje daarvan gaat rechtstreeks naar de router met toegang tot internet, de andere zit gestapeld via een tweede router.
Beide apparaten draaiden in dual-stack met IPv4 en IPv6, dat laatste met verschillende prefixes, zodat beide logische netwerken een echte IPv6-internettoegang hadden. Zo kon worden gecontroleerd of de wifisystemen IPv6 correct gebruikten met dynamische VLAN-toewijzing.
De accesspoints werden in een woning met meerdere verdiepingen zo over de verschillende woonlagen verdeeld dat er op elke verdieping minstens één accesspoint niet toegankelijk was. Dat dwong de clients om te roamen tussen de frequentiebanden en de accesspoints bij het beklimmen van de trap. We hebben getest hoe goed dat werkte met een IPTV-stream. Korte onderbrekingen waren toegestaan, maar de stream moest altijd vanzelf weer op gang komen.
Bij de wificontrollers hebben we ook gekeken naar de meer geavanceerde functies zoals een overzichtelijk dashboard, watchdogs en functies voor het filteren van het dataverkeer. We hebben de details over de afzonderlijke systemen in de kaders hieronder samengevat, de ondersteunde functies zie je in de tabel erna.
Ubiquiti Unifi
Als wifi controller voor Unifi hebben we gebruik gemaakt van het Debian-pakket van Ubiquiti. Het installeren onder Debian 10 bleek complex en foutgevoelig te zijn vanwege de afhankelijkheden. We moesten talloze, soms zelfs oude pakketten van verschillende bronnen binnenhalen. Onder Ubuntu 18.04 was het installeren veel eenvoudiger geregeld.rnrnDe interface van de Unifi-controller is mooi vormgegeven, maar op sommige plaatsen verwarrend. Zo is er een klassieke en een bu00e8taweergave. De samenhang is onduidelijk, zodat je tijdens het configureren vaak heen en weer moet springen. Sommige instellingen worden getoond, maar werken alleen als je extra Ubiquiti-componenten koopt. Bij Unifi was het installeren van een servercertificaat net zo complex als bij Omada: je moet certificaten in de Java-software stoppen via keytool op de commandline onder Ubuntu. Op het moment van testen was er alleen documentatie beschikbaar voor oudere controlleru00adsoftware, zodat sommige instellingen niet makkelijk toegankelijk waren.rnrnTijdens de tests was er een discussie op de Unifi-fora of Ubiquiti met nieuwe firmware het automatisch versturen van telemetriegegevens mogelijk maakte. Bij de controllerversie 5.12.35 kon de telemetrie via een optie worden geactiveerd en was die standaard uitgeschakeld. Afgezien daarvan leken de apparaten flink te communiceren, waardoor er veel verbindingen met interu00adnet tot stand kwamen zonder dat daar een duidelijke reden voor was. Dat kan worden voorkomen door een firewallu00adregel zonder dat dit voor bijwerkingen zorgt. Ons netwerk bleef netjes werken, alleen de automatische firmware-updates waren niet meer beschikbaar.rnrnHet dashboard is mooi om te zien, maar de statusdisplays waren niet altijd even duidelijk. Ondanks slechts u00e9u00e9n client en meerdere accesspoints was de totaalstatus niet altijd 100%, maar wat er precies ontbrak was niet duidelijk. De roaming tussen de wifibanden en de accesspoints werkte goed, een onderbroken IPTV-stream werd snel weer opgestart.
In onderstaande tabel vind je meer informatie over de eigenschappen van de geteste wifi controllers. Klik op de tabel voor een vergroting (in pdf-formaat).
Radius-tour
Als je elke gebruiker een eigen wachtwoord of een certificaat voor toegang wilt geven, wordt de authenticatie in wifinetwerken gedaan door IEEE 802.1x/radius. Dat vind je op accesspoints ook wel terug als WPA2-Enterprise en op moderne accesspoints als WPA3-Enterprise. Voor de test hebben we gebruik gemaakt van de authenticatieserver Freeradius onder Ubuntu 18.04.
Na het installeren maak je als root via make een voorbeeld CA (Certificate Authority) en clientcertificaat aan in de submap /etc/freeradius/3.0/certs. Voor een test kun je de zo aangemaakte bestanden ca.pem (CA rootcertificaat) en client.p12 naar de client kopiëren en die daar tijdens de wificonfiguratie opgeven.
Radius-clients worden geconfigureerd in clients.conf. Dat zijn de apparaten die de aanmeldingsverzoeken van de wificlients accepteren, oftewel de controllers en de accesspoints in het voorbeeldnetwerk. Die en de Radius-server hebben een gemeenschappelijk wachtwoord nodig, een ‘secret’, dat je random aanmaakt en overal invoert. Dat kan de uitvoer zijn van openssl rand -base64 20.
In het bestand dictionary sla je fabrikantspecifieke attributen op, die bijvoorbeeld nodig zijn voor de VLAN-toewijzing bij Mikrotik-accesspoints. users bevat de toegangsgegevens van de wifigebruikers, bijvoorbeeld
[email protected] Auth-Type == Accept alice Cleartext-Password := “PaSs234#” Tunnel-Type = 13, Tunnel-Medium-Type = 6, Tunnel-Private-Group-ID = 150, Mikrotik-Wireless-VLANID = 150 bob Cleartext-Password := “PaSs678#” Tunnel-Type = 13, Tunnel-Medium-Type = 6, Tunnel-Private-Group-ID = 500, Mikrotik-Wireless-VLANID = 500
De eerste regel test of er een clientcertificaat is. De secties voor alice en bob definiëren twee gebruikers met hun eigen wachtwoorden en attributen. Je definieert de VLAN-groepstoewijzingen en andere parameters in het bestand sites-enabled/default. In dat bestand is de sectie post-auth { … } aan te passen voor de controle van het certificaat, zoals te lezen is in het kader hieronder.
Certificaatcontrole bij Radius
post-auth { … update reply { Reply-Message += “%{TLS-Cert-Serial}” … Reply-Message += “%{TLS-Client-Cert-Common-Name}” Reply-Message += “%{TLS-Client-Cert-Subject-Alt-Name-Email}” } if (TLS-Client-Cert-Common-Name == “[email protected]”) { update reply { &Tunnel-Type = 13, &Tunnel-Medium-Type = 6, &Tunnel-Private-Group-Id = 150 &Mikrotik-Wireless-VLANID = 150 } } … }
De entry met TLS-Client-Cert-Common-Name == “user…” verifieert bij Radius het bij de gebruiker behorende clientcertificaat en wijst attributen toe, zoals in het voorbeeld VLAN 150.
Conclusie
Grandstream- en Mikrotik-systemen zijn vooral interessant voor kleine netwerken: ze vereisen geen extra hardware, omdat de controllerfunctie direct op een accesspoint kan draaien. Mikrotiks RouterOS is echter niet geschikt voor newbies.
Als je je wifinetwerk autonoom wilt bedienen bij de andere fabrikanten, moet je overschakelen op een hardwarekastje of controllersoftware installeren op een server in je netwerk.
Dat multicast-dataverkeer voor de vier fabrikanten geen vreemd concept is, wordt bewezen door de multicast-naar-unicast-conversie voor live IPTV-streams die overal werkt. Het was des te verrassender dat IPv6 niet goed werkte met een dynamische VLAN-toewijziging in het Grandstream-systeem.
Bij TP-Link bestaan er helemaal geen dynamische VLAN’s. Als je die functie dan wilt gebruiken, is het te hopen dat de fabrikant overspoeld wordt met verzoekjes om die functie te implementeren en dan alsnog besluit die toe te voegen via een update.
(Sebastian Piecha en Alieke van Sommeren, c’t magazine)
Blijf op de hoogte van de nieuwste informatie en tips! Schrijf je in voor de nieuwsbrief:
- Ontdek hoe je veilig blijft zonder nieuwe pc te kopen.
- Big Tech onder de loep
- Alles over Wi-Fi 8
Tip!
Krijg deze week tot 39% korting op een abonnement



Praat mee