// netwerk bouwen

Een netwerk bouwen met vrienden

Deze pagina gaat over een klein privaat netwerk: thuis, met vrienden of binnen een kleine organisatie. Denk aan twee tot tien mensen, een altijd-aan machine voor het routeerwerk en een interface lock zodat buitenstaanders niet zomaar kunnen meedoen.

Waarom deze setup

Je houdt een kleine groep bereikbaar zonder centrale chatdienst of open publiek netwerk. Je kiest zelf wie er meedoet en hoe het verkeer loopt.

Een enkele altijd-aan transport node lost het lastigste deel op: die blijft online terwijl de rest kan komen en gaan. Laptops en telefoons verbinden ermee wanneer ze aan staan, en iedereen heeft een stabiele route door de groep. Wil je ook offline berichten bewaren, dan voeg je daar een propagation node aan toe.

Wat je nodig hebt

Component Opties
Altijd-aan machine Een goedkope VPS (3-10 EUR/mnd), een Raspberry Pi 4/5, een oude workstation of NUC, of een laptop die niet in slaapstand gaat.
Clients Twee tot tien Ratspeak of Sideband installaties, een per persoon. Desktop of mobiel.
Optioneel: LoRa Een Ratdeck, Ratcom of RNode voor off-grid dekking wanneer iemand buiten WiFi-bereik is.

Stap 1: de altijd-aan node

De transport node draait rnsd (of rnsd-rs). Een enkel executable, licht op geheugen, prima voor een Raspberry Pi. Het verschil zit in één regel: enable_transport = yes. Zonder die regel stuurt de node alleen eigen packets door. Met die regel wordt de node de hub waar iedereen doorheen routeert.

# Minimale config voor de transport node

[reticulum]

enable_transport = yes

[interfaces]

[[TCP Server]]

type = TCPServerInterface

enabled = yes

listen_ip = 0.0.0.0

listen_port = 4242

Start de daemon en laat hem draaien. Op een Pi: maak er een systemd service van zodat het automatisch terugkomt na een reboot. Zie node opzetten voor het systemd voorbeeld.

Stap 2: het netwerk afsluiten met IFAC

Standaard accepteert een Reticulum interface verkeer van elke andere node die het kan bereiken. Prima voor een publiek mesh, fout voor een privaat netwerk.

De oplossing is IFAC (Interface Access Codes). Kies een netwerknaam en een sterk gedeeld geheim. Schrijf ze op een plek waar je groep ze kan vinden: je hebt ze op elk apparaat nodig.

# Transport node config met IFAC

[[Groep Server]]

type = TCPServerInterface

enabled = yes

listen_ip = 0.0.0.0

listen_port = 4242

network_name = onze-groep

passphrase = een_sterk_gedeeld_geheim

network_name en passphrase vormen samen de lock. Wie zonder de juiste combinatie verbindt, wordt genegeerd: die ziet geen announces en kan geen paden opvragen.

Stap 3: clients verbinden

Elk lid van de groep voegt een TCPClientInterface toe aan hun config met dezelfde network_name en passphrase. In Ratspeak of een ander client die rnsd apart draait, gaat dit in de Reticulum config.

# Client config (elk lid)

[[Groep]]

type = TCPClientInterface

enabled = yes

target_host = jouw-server.nl

target_port = 4242

network_name = onze-groep

passphrase = een_sterk_gedeeld_geheim

VPS: open poort 4242 in je firewall. Pi thuis: forward die poort op je router. Of gebruik de Pi alleen op het lokale netwerk als iedereen op hetzelfde WiFi zit.

Offline berichten opvangen

Een transport node stuurt packets door, maar slaat geen berichten op. Als je wilt dat berichten bewaard worden voor leden die offline zijn, draai je ook een propagation node (lxmd) op dezelfde machine.

# Op de transport node

lxmd -p &

# Bij de eerste start print lxmd de destination hash.

# Deel die hash met je groep als Offline Inbox adres.

Ratspeak gebruikers kunnen Offline Inbox op Auto zetten (de app kiest een bereikbare propagation node) of op Manual met de specifieke hash van jouw node.

Samenvatting

Stap Wat Waar
1 rnsd met enable_transport = yes De altijd-aan machine
2 network_name + passphrase op de server interface De altijd-aan machine
3 TCPClientInterface met dezelfde IFAC op elk apparaat Elk lid
4 Optioneel: lxmd -p voor offline berichten De altijd-aan machine