"FailedExternalReachability" error

IDK if increasing the timeout will solve it as connections usually materialise in a fraction of second when everything’s Ok (but do let us know the findings by increasing it so that we can tweak it too).

What i suspect is happening is due to a windows bug in MIO the stun/echo service does not work. This used to be a panic with mio and we had temporarily forked and modified it to return error instead of crashing. This is solved in Mio-6 (the port to mio-6 pr is ready for merge - but we only want to do that after testing routing, vaults and clients using it against the droplets to ensure there is no regression/hidden-bugs etc.).

So what can be happening is: If you have only Windows seed nodes and you ask them your external address, you will get nothing. This will affect nodes with port forwarding. To confirm you should be observing these:

  1. You have UPnP enabled - you will be able to bootstrap (atleast the reachability check will pass)
  2. You have UPnP disabled, but port forwarded and you use one or more Linux/OSX seed nodes - you will be able to bootstrap (atleast the reachability check will pass)
  3. You have UPnP disabled, but port forwarded and you use only Windows seed nodes - you should fail the reachability test in most cases.

So without even changing code/recompiling if you can see that ^^^ then it’s definitlely due to the mentioned issue and will be addressed in the upcoming versions of crust.

3 Likes