Bitcoin full node and query server

Jan 1, 2021

View in context in the libbitcoin Slack #general mirror.

neillm21:53
To query that server, you need to build version3
14 replies · Sergey Pahomov, neillm · last Jan 10, 2021
Sergey Pahomov18:04
But I'm using version3, I guess. I built it from https://github.com/libbitcoin/libbitcoin-client master branch. As other components of libbitcoin
neillm18:05
Try building from the version3 branch. master is staging for version4
Sergey Pahomov18:09
Oh, I'm sorry. Thank you very much for your answer. Btw, is it possible to query and interact with a third party bitcoin nodes, via 4th version? Or is it not ready yet and under development?
neillm18:11
Yes, of course. libbitcoin communicates on the bitcoin p2p protocol. The client -> server interaction is a separate protocol, and right now, several commands in v4 are not compatible with v3 servers.
Sergey Pahomov18:14
Brilliant, thank you Neillm.
neillm18:14
As a side note, version4 libbitcoin-server (i.e. bs) can respond to several queries from bitcoin-cli, over the json-rpc interface. But if you're asking if libbitcoin-client can query bitcoind, the answer is no because it doesn't support a high performance query interface.
Sergey Pahomov18:20
Ok, great clarification. I'm not really interested at this time in server. What I want to to do is a small client app which will be able to query any bitcoin node. As far as I understood I should use v3 for it. Along with http://aaronjaramillo.org/ tutorials and docs from gihub?
aaronjaramillo.org
Aaron Jaramillo
neillm18:23
Yes, version3 is production, so it's recommended right now. You may want to look at libbitcoin-node, as it contains everything needed to communicate with bitcoin peers on the p2p protocol. libbitcoin-client is specifically made to communicate with libbitcoin-server, so it's not clear it's what you want.
Sergey Pahomov18:33
OK, I understood, guess I should be more attentive. I'll go through tutorial once again.
Sergey Pahomov23:28
Hey, Neillm Exact copypaste of https://github.com/AaronJaramillo/LibbitcoinTutorial/blob/master/HDKeychain/Balance.cpp With a different bitcoin-address and uri:
tcp://31.127.58.6:8333
Acquired from https://bitnodes.io/nodes/?q=United%20Kingdom Also ended with the connection timed out.
bitnodes.io
Bitnodes is currently being developed to estimate the size of the Bitcoin network by finding all the reachable nodes in the network.
neillm03:29
libbitcoin-client code works with libbitcoin-server as the endpoint, NOT bitcoind, which only supports the p2p protocol. libbitcoin has a rich and high-performance client/server query interface that is unrelated to the bitcoin p2p protocol. Pointing code written using libbitcoin-client to a node that doesn't understand the protocol won't work.
Sergey Pahomov13:37
Oh, I am sorry. Thank you very much for response
(edited)
neillm14:37
No problem. If you're using version3 client code, you can query the community servers: https://github.com/libbitcoin/libbitcoin-server/wiki/Community-Servers
Sergey Pahomov13:30
Thanks, Neillm. I understood that bitcoin-server is a node (and hence it stores the whole blockchain) with a zmq-based query interface. And then it broadcasts queries to the p2p network.