Skip to content

Btcd disconnects upon receiving sendaddrv2 #1661

@Sjors

Description

@Sjors

Bitcoin Core master, soon to be released, introduces the new sendaddrv2 message (BIP 155). When such a Bitcoin Core node connects to a btcd node (tag v0.21.0-beta) it immediately disconnects:

2020-11-12 18:31:13.935 [ERR] PEER: Can't read message from x.x.x.x:42192 (inbound): ReadMessage: unhandled command [sendaddrv2]
2020-11-12 18:31:13.933 [INF] SYNC: New valid peer x.x.x.x:42192 (inbound) (/Satoshi:0.20.99/)
2020-11-12 18:31:13.946 [INF] SYNC: Syncing to block height 656631 from peer x.x.x.x:42192
2020-11-12 18:31:13.946 [INF] SYNC: Lost peer x.x.x.x:42192 (inbound)

On bitcoind side:

2020-11-12T18:31:13Z Added connection peer=6606
2020-11-12T18:31:13Z sending version (103 bytes) peer=6606
2020-11-12T18:31:13Z send version message: version 70016, blocks=656631, us=[::]:0, peer=6606
2020-11-12T18:31:13Z received: version (113 bytes) peer=6606
2020-11-12T18:31:13Z sending verack (0 bytes) peer=6606
2020-11-12T18:31:13Z sending sendaddrv2 (0 bytes) peer=6606
2020-11-12T18:31:13Z sending getaddr (0 bytes) peer=6606
2020-11-12T18:31:13Z receive version message: /btcwire:0.5.0/btcd:0.21.0/: version 70013, blocks=656631, us=x.x.x.x:42192, peer=6606
2020-11-12T18:31:13Z received: verack (0 bytes) peer=6606
2020-11-12T18:31:13Z New outbound peer connected: version: 70013, blocks=656631, peer=6606 (full-relay)
2020-11-12T18:31:13Z sending sendheaders (0 bytes) peer=6606
2020-11-12T18:31:13Z sending ping (8 bytes) peer=6606
2020-11-12T18:31:13Z sending addr (31 bytes) peer=6606
2020-11-12T18:31:13Z initial getheaders (656630) to peer=6606 (startheight:656631)
2020-11-12T18:31:13Z sending getheaders (1029 bytes) peer=6606
2020-11-12T18:31:13Z sending feefilter (8 bytes) peer=6606
2020-11-12T18:31:13Z received: reject (110 bytes) peer=6606
2020-11-12T18:31:13Z Unknown command "reject" from peer=6606
2020-11-12T18:31:13Z socket recv error for peer=6606: Connection reset by peer (104)
2020-11-12T18:31:13Z disconnecting peer=6606
2020-11-12T18:31:13Z Cleared nodestate for peer=6606

I tried with and without the new peerblockfilters feature, but that doesn't seem to matter.

This may lead to node loneliness. It also happens to Lnd nodes, see breez/breezmobile#408

This issue did not occur as of a slightly older Bitcoin Core commit, e.g. bitcoin/bitcoin@1d3ec2a

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions