@cryptotaxi247 / kubo / commits / 06ba6d0fc

fix: remove internal relay discovery

This logic collects a list of known relays by testing every new connection. It exists so we can dial /p2p-circuit/p2p/QmFoobar addresses (circuit addresses that don't specify the relay). However, this kind of address is useless outside of basic demos as a random relay is practically guaranteed to not be connected to the target peer. Picking a random relay to connect to some peer is almost _never_ the desired behavior.

Steven Allen committed Mar 31, 2020 at 11:39 UTC 06ba6d0fc2472368f12478d5d6f3113da4ae0480
2 files changed +2 -2
core/node/libp2p/relay.go
+1 -1
@@ -11,7 +11,7 @@ func Relay(disable, enableHop bool) func() (opts Libp2pOpts, err error) {
11 // Enabled by default.
12 opts.Opts = append(opts.Opts, libp2p.DisableRelay())
13 } else {
14 - relayOpts := []relay.RelayOpt{relay.OptDiscovery}
14 + relayOpts := []relay.RelayOpt{}
15 if enableHop {
16 relayOpts = append(relayOpts, relay.OptHop)
17 }
test/sharness/t0182-circuit-relay.sh
+1 -1
@@ -44,7 +44,7 @@ test_expect_success 'peer ids' '
44 '
45
46 test_expect_success 'connect A <-Relay-> B' '
47 - ipfsi 0 swarm connect /p2p-circuit/p2p/$PEERID_2 > peers_out
47 + ipfsi 0 swarm connect /p2p/$PEERID_1/p2p-circuit/p2p/$PEERID_2 > peers_out
48 '
49
50 test_expect_success 'output looks good' '