-
Notifications
You must be signed in to change notification settings - Fork 649
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
P2P reconnection issue #2105
Comments
The same node (after restarted 5 days ago) got stuck again today. When checking the logs I found some data.
Among the
The top |
Apparently the peer database is polluted when the node wrongly assumes the peers "are not firewalled". Comment in the code: bitshares-core/libraries/net/node.cpp Lines 1532 to 1537 in 3911b7e
That assumption makes sense only if the peer is running a witness_node (our software) or compatible software which will tell us what the real inbound port is, and the port doesn't change frequently. Even that, the inbound port could be blocked by a firewall. Scenarios that our peer database can get polluted: an incompatible peer could tell us that the outbound port is same as the inbound port which is unreachable; a malicious peer could tell us a random unreachable port. The polluted peer database is then propagated to other peers and pollutes their peer databases. When the node is disconnected, it may get stuck in the bitshares-core/libraries/net/node.cpp Lines 417 to 432 in 3911b7e
|
Fixed by #2107. |
Bug Description
I have a node which has been running normally for months, but now it has been stuck for about 6 hours. The node is behind a firewall, its P2P port is not open to the public. The network of the node is not very stable recently.
From p2p.log, it seems the node is endlessly trying to connect to peers one by one, around 7200 times a hour, but none of them is reachable so far.
4933
. Around10
of them have been tried for33
times, others are32
times or fewer.Impacts
Describe which portion(s) of BitShares Core may be impacted by this bug. Please tick at least one box.
CORE TEAM TASK LIST
The text was updated successfully, but these errors were encountered: