How to find out if your Urbit ship is directly or indirectly routing to another Urbit ship

published Apr 13, 2021, last modified Apr 21, 2021

Direct routes go faster than indirect routes. Indirect routes can also be evidence of problems getting UPnP / NAT working correctly with your ship (when you run your ship behind a NAT firewall).

The command to use in the Urbit dojo is:

=/(ss .^(ship-state:ames ax+/=//=/peers/ ~zod ) ?>(?=(%known -.ss) route.ss))

Replace ~zod with the actual ship name.

You'll see something like this as a response, if your ship is in fact directly linked to the other one (instead of being indirectly routed by a star):

[~ [direct=%.y lane=[%.n p=0x1453.6342.5dcf]]]

If your connection is indirect, you will see %.n instead (which means false in Hoon).

There are more tricks in this notebook: ~middev/the-forge/resource/publish/ship/~middev/arbor-press-3191