Handleiding

ZeroTier en Back To Home

Twee diensten die van binnenuit uitbellen, en waarom WireGuard meestal nog steeds het antwoord is.

De gewone manier om van buitenaf binnen te komen is een VPN-server op je router en een poort die van internet bereikbaar is. Dat werkt goed, tot je aansluiting geen publiek adres heeft. ZeroTier en Back To Home lossen dat op door het om te draaien: jouw router belt uit naar een dienst, jouw laptop of telefoon ook, en die dienst brengt ze bij elkaar.

Back To Home

Back To Home is van MikroTik zelf en zit in Beheertoegang, onder IP Cloud. De schakelaar verschijnt pas als je IP Cloud DDNS aanzet, want de dienst gebruikt diezelfde cloud-registratie. Het script schrijft er één regel voor:

/ip cloud set back-to-home-vpn=enabled

Onder water is het WireGuard, met MikroTik als ontmoetingspunt. Je installeert de MikroTik-app op je telefoon of laptop, scant een QR-code, en zit in je thuisnetwerk. Voor iemand die één keer per maand bij zijn NAS moet is dat precies genoeg.

De tool zet alleen de schakelaar om. De gebruikers zelf voegt hij niet toe: die maak je aan in WinBox onder IP, Cloud, Back To Home, of vanaf de terminal onder /ip cloud back-to-home-user. Zonder gebruiker staat de dienst aan en kan er niemand in.

Wat je ervoor terugkrijgt is eenvoud, en wat je inlevert is inzicht. Het verkeer loopt langs MikroTik, de configuratie is grotendeels vastgelegd, en je kunt er weinig aan sturen. Voor een klantlocatie die je beheert is dat zelden wat je wilt.

ZeroTier

ZeroTier is een dienst van een andere partij die een virtueel netwerk maakt tussen apparaten die elkaar verder niet kunnen bereiken. Je maakt een netwerk aan in ZeroTier Central, krijgt een network-id van zestien hexadecimale tekens, en zet dat id op elk apparaat dat mee moet doen.

In de configurator staat er precies één veld voor, in het onderdeel VPN: ZeroTier network-id. Vul je dat in, dan zet het script dit neer:

  • /zerotier set zt1 disabled=no port=9993, de instantie die op de router draait;
  • /zerotier interface add network=<jouw id> instance=zt1 name=zerotier1, met allow-default=no, allow-global=no en allow-managed=yes;
  • een firewallregel die UDP 9993 naar de router toelaat.

Die drie waarden zijn bewust zo gezet. allow-default=no betekent dat ZeroTier niet je standaardroute overneemt, allow-global=no dat het geen publieke adresbereiken mag routeren, en allow-managed=yes dat het wel het adres mag accepteren dat je in ZeroTier Central aan dit apparaat toewijst. De tool maakt er verder geen routes bij; wat er over het ZeroTier-netwerk bereikbaar is, bepaal je in de console van ZeroTier.

Welke apparaten dit aankunnen

ZeroTier is een los pakket en het bestaat niet voor elke architectuur. Het veld in de tool zegt het er ook bij: ARM- en ARM64-apparaten, plus x86. Een hEX op MIPS doet dit niet. Controleer voor je begint:

/system resource print
/system package print

Bij architecture-name zie je waar je op zit, en de pakketlijst laat zien of zerotier geïnstalleerd is. Zo niet, dan haal je het uit de Extra packages van exact dezelfde RouterOS-versie. Zie Pakketten.

Device-mode

Op nieuwere RouterOS-versies staat ZeroTier standaard geblokkeerd door device-mode, en dat is geen instelling die je zomaar vanaf afstand omzet. Het script zet er een regel bij als herinnering: je draait /system device-mode update zerotier=yes en moet daarna binnen vijf minuten fysiek de resetknop indrukken of het apparaat uit en aan zetten. Zonder dat gaat de wijziging niet in.

Dat is precies het soort ding dat je ontdekt als je al bij de klant weg bent. Bij Systeem zit daarom de geavanceerde schakelaar om de door device-mode geblokkeerde onderdelen in een apart opstartscript te zetten, zodat ze bij de eerstvolgende start worden toegepast.

Autoriseren

Een nieuw lid komt niet zomaar in je netwerk. Je moet het in ZeroTier Central goedkeuren en er een adres aan toewijzen; de tool waarschuwt daar ook over bij het genereren. Kijk daarna op de router:

/zerotier print
/zerotier interface print

De status moet OK zijn en de interface moet een adres hebben.

Wanneer WireGuard het betere antwoord is

In de meeste gevallen dat wij tegenkomen is dat: meestal. WireGuard zit in RouterOS zelf, heeft geen extra pakket nodig, draait op elke architectuur, en er zit geen derde partij tussen. De configurator genereert de sleutels in je browser en levert per peer een kant-en-klare clientconfiguratie.

Kies WireGuard als:

  • je aansluiting een publiek adres heeft, of je aan één kant een vast adres hebt (bijvoorbeeld een VPS of een kantoorlijn) waar de andere kant naartoe kan bellen;
  • je twee locaties wilt koppelen. Zie Tunnels tussen locaties;
  • je wilt kunnen zien en bepalen wat er precies loopt;
  • het apparaat geen ARM of x86 is.

Kies ZeroTier of Back To Home als:

  • geen van beide kanten een bereikbaar adres heeft, bijvoorbeeld twee aansluitingen achter CGNAT. Zie Een veranderend adres bereiken;
  • je een handjevol apparaten op verschillende netwerken met elkaar wilt laten praten zonder aan routering te beginnen;
  • het om jouw eigen toegang gaat en niet om een netwerkkoppeling die altijd moet staan.

Er is nog een tussenweg die vaak over het hoofd wordt gezien: één WireGuard-tunnel van je router naar een kleine VPS met een vast adres, en daarna alles over die tunnel. Je houdt dan het beheer volledig in eigen hand en je hebt geen dienst van een ander nodig om binnen te komen. Wat het kost is een paar euro per maand en een half uur inrichten.

Verder lezen: WireGuard, VPN voor onderweg en Een veranderend adres bereiken.

Meteen proberen? Open de configurator