It's surprising that using a non-standard listening port will cause peers to actively avoid connecting to you, is it sensible to add this to the help message and the warnings on startup if people have changed the default? I can't find this behavior mentioned anywhere except for the comments in net.cpp. 

```
// do not allow non-default ports, unless after 50 invalid addresses selected already
if (addr.GetPort() != Params().GetDefaultPort() && nTries < 50)
continue;
```

https://github.com/bitcoin/bitcoin/blob/master/src/net.cpp#L1369

bool failed_chainstate_init = false;
                for (CChainState* chainstate : chainman.GetAll()) {
                    chainstate->InitCoinsDB(
                         nCoinDBCache,
                         false,
                         fReset || fReindexChainState);
                    chainstate->CoinsErrorCatcher().AddReadErrCallback([]() {
                        uiInterface.ThreadSafeMessageBox(
                            _("Error reading from database, shutting down."),
                            "", CClientUIInterface::MSG_ERROR);
                    });
                    
                    
                    if (!chainstate->CoinsDB().Upgrade()) {
                        strLoadError = _("Error upgrading chainstate database");
                        failed_chainstate_init = true;
                        break;
                    }
                    
                    if (!chainstate->ReplayBlocks(chainparams)) {
                        strLoadError = _("Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate.");
                        failed_chainstate_init = true;
                        break;
                    }
                    
                    chainstate->InitCoinsCache(nCoinCacheUsage);
                    assert(chainstate->CanFlushToDisk());
                    if (!is_coinsview_empty(chainstate)) {