Skip to main content
25 votes
Accepted

Why doesn’t Bitcoin use UDP to do Blockpropagation?

The Bitcoin system doesn't have just one network protocol: Any way of obtaining the blocks is equally valid-- blocks over freenet, over satellite broadcast, over the P2P network, all work just as ...
G. Maxwell's user avatar
  • 7,727
11 votes

What is a Feeler Connection? When is it used?

A feeler connection is a short-lived outbound connection that only starts up after your node has established the required 8 outbound connections and 2 block-relay-only outbound connections. The ...
vnprc's user avatar
  • 405
8 votes

What is a block-relay-only connection? What is it used for?

Block relay connections were added to bitcoin core in v0.19.0.1 in November 2019. Their purpose is to harden the peer-to-peer network against partition attacks. They do this through a clever ...
vnprc's user avatar
  • 405
8 votes
Accepted

What is the difference between blocksonly and block-relay-only in Bitcoin Core?

While both of these disable transaction relay, they are conceptually used for different purposes: Block-relay-only connections (see this post for more details) are hard-to-detect connections with the ...
Lightlike's user avatar
  • 636
8 votes
Accepted

Why is my sync slow even with a dbcache of 16000?

Although you've set a dbcache large enough to contain the entire UTXO set, at some point you've restarted. This means that the cache will begin empty and so UTXOs will need to be fetched from the ...
Ava Chow's user avatar
  • 71k
7 votes
Accepted

Testnet peers list (with IP addresses)

Just use a testnet dns seeder. Type this into your terminal: dig A testnet-seed.bitcoin.jonasschnelli.ch or dig A seed.tbtc.petertodd.org for IPv6 dig AAAA testnet-seed.bitcoin.jonasschnelli.ch
Jonas Schnelli's user avatar
6 votes

How to confirm how many peers a node has?

When a node requests one of it's neighbours for a list of it's peers, that node responds with a list of all of it's neighbours. No it doesn't. It responds with list of nodes that its aware of being ...
G. Maxwell's user avatar
  • 7,727
5 votes
Accepted

How Do Peers Choose Which Peer To Trust?

either I broke some rule, or the other person did; In this case, how does my client find a trusted peer Your client does not trust any peer. It fully validates the blockchain. In the event of ...
Ava Chow's user avatar
  • 71k
5 votes

What is the prior work or inspiration for the new/tried table design?

Were the new and tried tables included in bitcoin from the beginning or added at a later date? new/tried table were introduced in #787. Counter measure 6 in the paper suggested more buckets and was ...
stratospher's user avatar
5 votes
Accepted

How to find transaction's original author in Bitcoin Core?

There is no way to gain this information with certainty. Information about whom crafted a transaction is not included when a transaction is broadcast; that would be very obviously bad for privacy. ...
chytrik's user avatar
  • 18.3k
5 votes

What's a rule of thumb for setting the maximum number of connections?

The -maxconnections setting primarily controls how many inbound connections a peer can accept. The number of outbound ones is independently limited (~10), so unless -maxconnections is set lower than ...
Pieter Wuille's user avatar
4 votes

How to confirm how many peers a node has?

It returns some plausible peers, not all of its peers. You have no way of knowing any specific details about them, if they’re sybil, not operational, or not useful. The software tries to work out ...
Claris's user avatar
  • 15.4k
4 votes

Bitcoin Core stalled peer logic during initial block download

During IBD, there is a "moving window" of 1024 blocks ahead from the current height, from which blocks can be requested from peers for parallel download. When a peer has an open slot for a ...
Lightlike's user avatar
  • 636
4 votes

Missing transactions from full node

The full node you are running likely has the standard mempool size (300 MB) and default settings. At the moment (see e.g. https://mempool.space/), transactions with a fee less than 5.88 sat/vB are ...
deyw's user avatar
  • 560
4 votes
Accepted

What are outgoing and incoming connections and what is the difference between them?

There's a overlap with this post and others but I'll try to directly correct a couple of things here. Why do we have two types of connections, outgoing and incoming? To risk stating the obvious ...
Michael Folkson's user avatar
3 votes

Bitcoin core full node - Should I choose my peers or it's fine to use the hardcoded ones?

The list is just for bootstrapping, no need to manually list peers unless you have others you specifically want to maintain connectivity with.
jhizzle207's user avatar
3 votes
Accepted

Bitcoin core: connect to specific peers from file

Within the data directory for your coin (/dir/for/yourcoin/.yourcoin) you will have a configuration file. Within this configuration file, you will want to place the line connect=IP ADDRESS:PORT This ...
apt-getschwifty's user avatar
3 votes
Accepted

How to make more than 1 nodes of mine connect each other?

You can add them to each other nodes bitcoin config file. If you want to connect to a specific node among others, use addnode=IP:PORT in your config. If you'd like to only connect to your own nodes ...
meshcollider's user avatar
  • 11.9k
3 votes

Can malicious peer hack freshly installed bitcoin-core node

Does freshly installed bitcoin-core node have genesis block included in the installation? Yes. This fresh node contacts some peer for downloading blockchain. Can malicious peer give node wrong ...
David Schwartz's user avatar
3 votes

Can cryptocurrencies never be fully decentralized because finding peers is centralized?

... it needs to fetch peers from a centralized source. Not exactly. Once you are connected to the network, you will begin to receive lists of IP addresses and ports of known clients. There is a list ...
Roman Kiselenko's user avatar
3 votes
Accepted

Transaction propagation criteria vs mempool inclusion cirteria

There are also the 'standardness rules', which are separate from 'validity rules'. So this means a transaction can be either valid and standard, valid but non-standard, or invalid. A node can choose ...
chytrik's user avatar
  • 18.3k
3 votes
Accepted

How to connect a bitcoin node to a complete node through the local network?

As mentioned above, your command needs to be ./bitcoind -connect=<iplocal> -connect= will connect ONLY to that specified node. -addnode= will connect to the specified node in addition to ...
Mike's user avatar
  • 499
3 votes
Accepted

When exactly are peers saved in peers.dat file?

Bitcoin Core has two mostly-separate mechanisms for creating outbound connections: The manual mechanism, controlled by configuration settings addnode, connect, and the addnode RPC to change the ...
Pieter Wuille's user avatar
3 votes

Does running a node benefit the network?

I don't think I'm qualified to give a full answer, but I do think a full node which doesn't actually have an "economically active user" behind it could still be a benefit to the network. The ...
Steve's user avatar
  • 171
3 votes
Accepted

How to clear peer list?

You can stop bitcoind, and delete the peers.dat file in the data directory. On next startup, bitcoind will start a new one, by seeding from DNS seeds and other means. Why, though? Generally the peers ...
Pieter Wuille's user avatar
3 votes
Accepted

source address is .onion in peers.dat

The only way this can happen is when you connected out to a Bitcoin Node running on a Tor hidden service (so you know its .onion address), and then that node gave you some IP/Tor addresses, which you ...
Pieter Wuille's user avatar
3 votes

Missing transactions from full node

Bitcoin Core uses a 300 MiB limit for its mempool data structure by default. If enough transactions get submitted to the network, this limit will be reached and Bitcoin Core will start dropping ...
Murch's user avatar
  • 76k
3 votes

addnode + v2transport (BIP324) argument available to the bitcoin.conf?

There is currently no way to specify the v2transport option for the -addnode startup option.
Ava Chow's user avatar
  • 71k
3 votes
Accepted

Broadcast a valid block to network, without a local full node

What message could he send to the node to be confident that his valid block will be broadcast to the network and appended to the chain? You can never be confident. The node you connect to may be ...
Pieter Wuille's user avatar
2 votes

How bitcoin is peer to peer?

miners who are in between No, miners aren't in between. Miners around of block-chain, they are builders of the chain. * * As Pieter Wuille says in the comment, anyone can be a miner, but in nowadays ...
Roman Kiselenko's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible