Table of Contents
Tools
The go-iroh-tools repository — small Unix-style networking tools backed by go-iroh, from netcat-over-iroh to throughput measurement.
github.com/tmc/go-iroh-tools
provides, in its README’s words, “small Unix-style networking tools backed by
github.com/tmc/go-iroh”. Where the examples teach the API, these
are commands you install and use.
| Tool | Purpose |
|---|---|
giaddr |
print an iroh endpoint id, local address, endpoint address, and ticket |
gikey |
generate keys and inspect endpoint IDs |
gilisten |
listen on an iroh ALPN and bridge one stream to stdin/stdout, or echo |
ginc |
connect to an endpoint ticket and bridge stdin/stdout |
giping |
measure stream round-trip time against an iroh ping listener |
giperf |
measure iroh stream throughput |
gistat |
print connection statistics and path information |
giticket |
inspect, create, and shorten endpoint tickets |
girelay |
print and normalize relay URLs |
Several are listen/connect pairs: gilisten with ginc, and giping,
giperf, and gistat each have a -listen mode. In every case the address
the client takes is an endpoint ticket, not a host and port.
Try a pair
From a checkout of the repository, run a listener in one terminal:
go run ./cmd/gilisten -echo
It prints an endpoint ticket. In another terminal — on the same machine or a different one — connect to it:
go run ./cmd/ginc <endpoint-ticket>
The same shape works for measurement: giping -listen and giperf -listen
each print a ticket that the corresponding client command takes as its
argument.
Next steps
- Commands — the binaries the core module itself ships
(
iroh,iroh-relay,iroh-dns-server). - Examples — the runnable programs these tools grew out of.
- Endpoints and connections — the API underneath.