Skip to content
Save my spot

Offline between servers: local pairing on the command line

Pair two servers or computers with a local identity on the command line so they can exchange files across a network that has no internet.

You need

Two native devices with a working local or routed network connection between them.

On iPhone, Android, Mac, Windows and Linux the pipeit apps find each other nearby without internet (Wi-Fi Aware, Wi-Fi/LAN, Bluetooth discovery) using your normal account. This guide is the command-line variant for servers and scripted setups.

This is a separate local identity, not an offline extension of your online account. On both sides create a local identity and export a signed profile with the endpoints that are actually reachable:

pipeit local init --name local-device
pipeit local export --profile /ABSOLUTE/own-profile.json \
  --endpoints OWN-IP:PORT

Exchange the profiles in a suitable way and compare the fingerprints independently. Then, on both sides, pair the counterpart:

pipeit local pair --profile /ABSOLUTE/peer-profile.json \
  --fingerprint VERIFIED-FINGERPRINT

Start a listener deliberately on B and send to the paired UUID from A:

# Receiver B
pipeit local listen --listen OWN-IP:PORT --inbox /ABSOLUTE/private-inbox
# Sender A
pipeit local send --file ./file.bin --target PEER-UUID

Still stuck?

Check the troubleshooting guide first. If that does not help, tell us what happened.