keep-ecdsa
keep-ecdsa copied to clipboard
Bootstrap round failed warnings despite being connected to peers
I am running an ECDSA testnet node with the keepnetwork/keep-ecdsa-client:v1.0.0 docker image.
I used the following bootstrap peers made available by community member @afmsavage :
/dns4/testnet.keep-client.hashd.dev/tcp/3920/ipfs/16Uiu2HAmJsBiNVFNxsJ27NSQEByv39B1M7AKx5FrAc1htqYhHGhU","/ip4/3.23.88.229/tcp/3919/ipfs/16Uiu2HAmEZpkf1Td8rSBMmgPoa66si2kJLb83Rd2eztJ6f5oLvhp
My node starts up without any issue and is connected to several peers. Despite this, it keeps throwing warnings similar to the following:
WARNI bootstrap: could not establish connection with bootstrap peer [16Uiu2HAmEZpkf1Td8rSBMmgPoa66si2kJLb83Rd2eztJ6f5oLvhp]: [failed to dial : all dials failed
* [/ip4/3.23.88.229/tcp/3919] failed to negotiate security protocol: connection handshake failed: [EOF]] bootstrap.go:170
12:28:33.021 WARNI bootstrap: bootstrap round error: [all bootstrap attempts failed] bootstrap.go:78
Shouldn't the node normally skip the bootstrap round once it is connected to peers (> 11 connections in my case). Even if it doesn't skip it, how could it fail considering I got connected with the peers in the first place.
I suppose this is a low priority issue since it doesn't prevent joining, but still intriguing.
The client expects that all bootstraps in the config file work and it tries to connect to all of them. It will keep retrying with exponential back-off until all bootstraps are connected. That's why you can see warnings in logs.
Bootstraps introduce the node to the network and choosing malicious bootstraps may have catastrophic results. It's better to learn about the network from multiple bootstrap peers and given that it's easy for the user to add and remove bootstrap peers, we treat the user as an adult and let them decide what to do about unavailable bootstrap being very explicit about the fact it's not available (warnings).