Twee kantoren met ieder een eigen router is niet hetzelfde als twee netwerken. Zodra er een tunnel tussen komt, is het één ontwerp met twee helften, en de keuzes die je daarvoor maakt bepalen of je later kunt uitbreiden of alles opnieuw moet nummeren.
Eén VLAN-plan, twee adresreeksen
De regel die het hele hoofdstuk draagt: tags zijn overal gelijk, adressen zijn overal verschillend. VLAN 20 is op beide locaties het gastnetwerk, maar de subnetten mogen elkaar nooit overlappen, anders weet geen enkel apparaat welke kant het op moet.
| VLAN | Waarvoor | Kantoor A (10.1) | Kantoor B (10.2) |
|---|---|---|---|
| 10 | Werkplekken | 10.1.10.0/24 | 10.2.10.0/24 |
| 20 | Gasten (geïsoleerd) | 10.1.20.0/24 | 10.2.20.0/24 |
| 30 | Printers, camera's, IoT | 10.1.30.0/24 | 10.2.30.0/24 |
| 99 | Beheer | 10.1.99.0/24 | 10.2.99.0/24 |
Het derde octet volgt het VLAN-nummer, de eerste twee getallen zijn de locatie. Dat is precies het model dat de tool gebruikt, dus je hoeft het niet twee keer uit te rekenen.
Waar dit in de tool zit
Kies Meerdere apparaten en zet alle apparaten van beide kantoren in dezelfde site. Niet twee losse configuraties: één site, want alleen dan werken de controles over de hele set en kan de tool een tunnel aan twee kanten tegelijk instellen.
Vul de VLAN-tabel één keer in bij VLANs van de site, met de adressen van kantoor A. Ga daarna naar het netwerkbord en teken twee Locaties: sleep een vlak om de apparaten van A en een om die van B. Geef de tweede locatie bij Eigen adresreeks de waarde 10.2. Elk VLAN houdt daar zijn derde en vierde octet, dus 192.168.10.1/24 wordt 10.1.10.1/24 en 10.2.10.1/24 zonder dat je een tweede tabel bijhoudt.
De eerste locatie die je tekent houdt standaard het plan van de site. Wil je ook daar 10.1 zien staan, vul die reeks dan zelf in, of zet de site-adressen meteen op 10.1.x.x.
Wat overal hetzelfde blijft
- VLAN-nummers en namen. Uit de gedeelde tabel, dus een tag betekent op beide locaties hetzelfde netwerk.
- SSIDs, beveiliging en wachtwoord. Uit SSIDs van de site. Iemand die van A naar B reist, verbindt zonder iets te merken.
- Het beheerderswachtwoord en de tijdzone, via de gedeelde instellingen.
- De beheer-VLAN. Overal 99, zodat een switch in B op dezelfde manier bereikbaar is als een switch in A.
Wat lokaal blijft
Dit is het stuk dat mensen overslaan, en waar een tunnel daarna de schuld van krijgt.
- DHCP. Elke locatie heeft een eigen router die zijn eigen subnetten uitdeelt. Eén DHCP-server voor beide kanten is een slecht idee: valt de tunnel weg, dan krijgt niemand aan de overkant nog een adres. De tool zet de DHCP-server per VLAN alleen op de router, en alleen met de adressen van die locatie.
- DNS. De router van elke locatie is de resolver voor zijn eigen clients. Namen van de andere kant werken niet vanzelf: zet er een forward voor in, of gebruik adressen. Zie DNS.
- Printen en casten. mDNS en SSDP zijn broadcast en komen niet over een gerouteerde tunnel. Een printer in B hoort bij B. Wil je hem echt in A zien, dan moet je hem met een vast adres toevoegen.
- Internet. Elke locatie breekt zijn eigen verkeer uit. Alles via één kantoor laten lopen kan, maar dat maakt van je tunnel een flessenhals en van de andere internetverbinding een dure reservelijn.
De tunnel
Klik met rechts op de router van A, kies Tunnel naar, selecteer de router van B en een type. WireGuard is de gewone keuze. De tool maakt de sleutelparen in je browser, pakt het eerstvolgende vrije /30 uit 10.255.255.0 als transfernetwerk en zet poort 13231. Vul bij minstens één router het publieke adres in, anders weet WireGuard niet waar het heen moet.
Laat Routes naar de andere locatie aan staan. De tool leidt dan uit de locaties af welke netwerken aan de overkant liggen en zet die zowel in de allowed-address van de peer als in de routes. Bij twee kantoren is dat genoeg; een routeringsprotocol heb je hier niet nodig.
Wat je terugkrijgt
- Per apparaat één script. Plak ze allemaal, ook de twee routers: een tunnel die maar aan één kant bestaat, bestaat niet.
- Op elke router een
wg1-interface met een adres uit het transfernetwerk, een peer met de publieke sleutel van de overkant, een keepalive van 25 seconden en de netwerken van de andere locatie als allowed-address. - Routes naar de subnetten van de overkant, en firewallregels die het tunnelverkeer toelaten zonder de rest open te zetten.
- Op elke poort een opmerking met wat eraan de andere kant hangt, ook op de poorten tussen de apparaten binnen een locatie.
Wat de controles zeggen
- Locaties met dezelfde subnetten. De tool waarschuwt dat je ze later niet via een VPN kunt koppelen, en dat is precies waar je nu mee bezig bent.
- Een locatie met apparaten maar zonder router, of met twee routers. Elke locatie heeft één gateway nodig.
- Twee locaties met dezelfde adresreeks, of een reeks die geen geldige twee getallen is.
- Geen publiek adres op beide kanten van een WireGuard-tunnel.
- Een VLAN die stopt bij een kabel omdat één kant hem niet draagt, en een apparaat zonder de beheer-VLAN.
Let op de MTU. WireGuard gebruikt standaard 1420. Zit een van de twee kantoren op PPPoE, reken dan op 1412. Een verkeerde MTU geeft een netwerk dat werkt tot iemand een groot bestand kopieert. Zie MTU en jumbo frames.
Verder lezen: Voorbeeld: twee locaties met een tunnel, Een nummerplan dat groei overleeft en Tunnels tussen locaties.