Autonoom internet op basis van LoRa en packet radio zonder providers en IP-adressen
Onlangs stuitte ik op een interessant project dat herinneringen oproepte aan het FidoNet- en BBS-tijdperk, maar dan met moderne cryptografie. Stel je dit voor: de zendmast is uitgeschakeld, het thuisinternet werkt niet, backbonekabels zijn doorgesneden en je moet een bericht versturen of een documentatiepagina raadplegen. NomadNet lost dit probleem precies op.
Het project creëert een volledig autonoom mesh-netwerk dat helemaal geen internet nodig heeft. Geen IP-adressen, DNS-servers, telefoonnummerregistratie of centrale nodes vereist. Alles draait bovenop elk kanaal dat bytes kan verzenden, of het nu gaat om een goedkope LoRa-module, een radiomodem, Wi-Fi of zelfs een oude seriële interface.

Onder de motorkap
NomadNet is opgebouwd uit twee bibliotheken van dezelfde auteur: Reticulum Network Stack (RNS) en het LXMF messaging protocol.
Reticulum verzorgt alle low-level magie. Het bouwt een peer-to-peer cryptografisch mesh-netwerk met node-naar-node berichtroutering. RNS is ontworpen om ook bij microscopische snelheden goed te werken. Het systeem stuurt vrolijk data over een radiokanaal op 300 bits per seconde. Als je Ethernet of internet beschikbaar hebt, kan Reticulum die gebruiken als een van de transporten, waardoor lokale geïsoleerde eilanden worden verbonden tot een uniform netwerk.
LXMF voegt versleutelde berichtbezorging toe bovenop Reticulum met End-to-End Encryption en Forward Secrecy-ondersteuning. Als de ontvanger offline is, slaan tussenliggende nodes het versleutelde pakket op en leveren het wanneer de node weer in de lucht verschijnt.
NomadNet combineert dit alles in een console-interface (TUI) met zijn eigen ingebouwde browser en messenger.

Wat het systeem kan doen
Qua functionaliteit lijkt NomadNet op een zakformaat web 1.0 gebouwd op militaire fouttolerantieprincipes:
- Tekstbrowser en micropagina's. Binnenin draait de Spartaanse Micron-paginabrowser. Het is een lichtgewicht opmaaktaal geoptimaliseerd voor kanaal met lage bandbreedte. Pagina's worden in de cache opgeslagen op de client om hertransmissie van verkeer over de radiogolven te voorkomen.
- Dynamische content op nodes. Een node kan niet alleen statische pagina's serveren. Je kunt responsgeneratie binden aan Python-, Bash- of PHP-scripts. Dankzij dit draaien mensen volwaardige forums, weersvoorspellingen en advertentieboards.
- Offline berichten zonder tussenpersonen. De messenger werkt op een P2P-principe. Hij gebruikt cryptografische hashes voor adressering in plaats van domeinnamen of telefoonnummers. Geen wachtwoorden of logins: de node-identifier is de publieke sleutel zelf.
- Achtergrondwerking. NomadNet kan draaien als een grafische TUI-client of als een systeemdaemon op een thuisserver of Raspberry Pi, waardoor het als relay voor buren kan draaien.

Hoe je je eigen node opzet
Installatie is uiterst eenvoudig omdat het project in Python is geschreven. De snelste manier om te deployen is via pipx of standaard pip:
# Установка через pipx в изолированное окружение
pipx install nomadnet
# При необходимости можно докинуть утилиты RNS и LXMF
pipx install rns
pipx install lxmf
# Запуск интерактивного интерфейса
nomadnet
Als je geen zin hebt om met de Python-omgeving bezig te zijn, bouwt de auteur officiële Docker-images:
# Запуск TUI в контейнере
docker run -it ghcr.io/markqvist/nomadnet:master --textui
# Либо запуск демона с пробросом конфигурации хоста
docker run -d \
-v ~/.nomadnetwork/:/root/.nomadnetwork/ \
-v ~/.reticulum/:/root/.reticulum/ \
--network host \
ghcr.io/markqvist/nomadnet:master
Bij de eerste start opent NomadNet de ingebouwde handleiding. Om het netwerk te testen zonder radiomodules te kopen, kun je gewoon verbinden met het openbare RNS-testnet via internet.
Binnen het testnetwerk kun je andere nodes browsen. Druk op Ctrl+U, voer de node-hash in (bijvoorbeeld de Dublin-hub abb3ebcd03cb2388a838e70c001291f9) en druk op Enter. Het programma vindt de route in het netwerk en laadt de hoofdpagina.

Wat de community al heeft gebouwd
Rond Reticulum en NomadNet vormt zich geleidelijk een enthousiastelingeninfrastructuur. Als je de catalogus met third-party utilities bekijkt, vind je:
- NomadForum — een minimalistische forum-engine voor nodes;
- NomadForecast — een weerinformant die rapporten verzamelt en ze op verzoek in tekstvorm bezorgt;
- micron-blog en Any2MicronConverter — bloggenerators en Markdown naar Micron-opmaakconverters;
- Bots en advertentieboards gebaseerd op LXMF voor groepscoördinatie.
Voor degenen die de console te ruw vinden, heeft de auteur een aparte GUI-client ontwikkeld — Sideband. Deze is beschikbaar op Linux, macOS en Android.

Valkuilen en realistische scenario's
Denk niet dat NomadNet het reguliere web voor dagelijkse taken zal vervangen. Radiokanaalsnelheden zoals LoRa (honderden bytes per seconde) leggen strikte beperkingen op: geen afbeeldingen met hoge resolutie, video of zware JS-scripts. Alleen gecomprimeerde tekst, telemetrie en korte berichten.
Bovendien is het project in bèta-status. De auteur waarschuwt eerlijk in de beschrijving: de code heeft nog geen externe beveiligingsaudits ondergaan, dus erop vertrouwen in levenskritische scenario's vereist voorzichtigheid.
Wie zal dit project nuttig vinden:
- Hikers, expeditieliefhebbers en amateur radio-operators die communicatie nodig hebben in afgelegen gebieden zonder cellulair bereik;
- IoT-ontwikkelaars en bouwers van autonome veldstations voor polling van externe sensoren;
- Experimentatoren geïnteresseerd in gedecentraliseerde protocollen en mesh-netwerken zonder afhankelijkheid van telecom-infrastructuur.
Je kunt het project in een paar minuten uitproberen door het pakket via pip te installeren en verbinding te maken met het testnetwerk. Het is een zeldzaam voorbeeld van software dat de romantiek van het vroege web en onafhankelijkheid van cloudgiganten terugbrengt.
Gerelateerde projecten