routekit
Use your device as a mini router.
Requirements
Assumptions:
- The whole setup is temporary, and will run for a limited period of time.
- Only a handful of devices will be connected.
- Root access is available.
- No other software is using the configured interfaces.
- No other software is using nftables, e.g. docker or wg-quick.
Dependencies:
- sysgraph
- iproute2
- dnsmasq
- nftables
- copyparty (optional, simple file sharing server)
- hostapd (optional, used to create a wifi hotspot)
Usage
- For each interface you want to add to the network, run
ln -s .bridge-dev nodes/bridge-dev@<interface>, e.g.ln -s .bridge-dev nodes/bridge-dev@eth0. - If you want to enable a hotspot, run
ln -s .bridge-wifi nodes/bridge-wifi@<interface>. - Copy
config.exampletoconfig, adjust as needed. Wifi settings are ignored unless a wifi interface is enabled. - Run
./sgctl <target..>.
The main targets are:
@isol: run a local-only network without internet access@fwd: forward requests from the network to the internetcopyparty: enable a fileserver that gives anonymous read-write access to/tmp/copyparty