Free Internetworking Peering System
Status
Checking...
FIPS is a self-organizing encrypted mesh network. Each node gets a
secp256k1 keypair (same as Nostr/Bitcoin) that serves as its identity.
Nodes discover each other, negotiate encryption using the Noise protocol,
and route traffic without any central authority. A virtual network interface (fips0)
lets unmodified applications — SSH, web browsers, anything — communicate transparently over the mesh.
Think of it as a new internet layer, built on cryptographic identity.
Zero Config
Self-organizing mesh
End-to-End Encrypted
Noise IK + XK protocols
Multi-Transport
UDP, TCP, Tor, BLE
Your node's Nostr public key doubles as its FIPS mesh address. Share with peers to connect.
Install FIPS on your other devices
Download fips from GitHub. Build with cargo build --release (requires Rust 1.85+).
Configure peers in fips.yaml
Edit /etc/fips/fips.yaml on each device. Add your Archipelago node's IP and port as a peer. The node's npub above is its identity on the mesh.
Start the daemon and connect
Run fips --config /etc/fips/fips.yaml. A fips0 virtual interface appears. Use fipsctl show peers to see connected nodes. You can now SSH, browse, or run any IP app over the encrypted mesh using .fips DNS names.