Skip to main content
In five minutes you’ll have two iroh endpoints connecting over the iroh-ping protocol. Clone the repo, run the included quickstart example as a receiver in one terminal and a sender in another, and watch the round-trip time print.

1. Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

2. Clone iroh-ping

git clone https://github.com/n0-computer/iroh-ping
cd iroh-ping

3. Run the receiver

cargo run --example quickstart receiver
The receiver prints a ticket. Copy it.

4. Run the sender

In another terminal:
cargo run --example quickstart sender <TICKET>
Replace <TICKET> with the ticket from the receiver. The sender will print the round-trip time once the connection succeeds.

5. See your metrics (optional)

Now that ping is working, hook the example up to Iroh Services to watch connectivity metrics like direct data rate. Get an API key from your project’s Settings → API Keys tab, export it, and rerun the example:
export IROH_SERVICES_API_SECRET=<your-api-key>
The example picks up the key automatically and starts reporting metrics. See API Keys for the full walkthrough, or View metrics to read the dashboard.

Next steps

Integrate iroh into your own app by following one of the tutorials below.

Connect two endpoints

Build the receiver/sender ping app from scratch and learn how iroh-ping, tickets, and routers fit together.

View metrics

See your direct data rate and other connectivity metrics in the dashboard.

Add a relay

Configure dedicated relays for your endpoints and learn why they matter for production.