-
Notifications
You must be signed in to change notification settings - Fork 84
fix: several improvements to how AddrMan works #781
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
base: master
Are you sure you want to change the base?
Conversation
673d7e1 to
dc1cb67
Compare
dc1cb67 to
8427273
Compare
|
Pushed 8427273:
|
|
Also, it would be great to implement a rate-limiting for addrv2 messages. |
I Agree. Bitcoin Core has a strict rate limit of accepting only one address every ten seconds from a peer to avoid eclipsing. |
|
While you're at it, maybe also make WARN floresta_wire::p2p_wire::node: PeerNotFoundAtAddress(178.250.189.42, 38333)
ERROR bdk_floresta: Failed to manually disconnect from peer 178.250.189.42:38333It claims the peer is not found even though I'm literally connected to it. |
jaoleal
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Complementing with some suggestions
| good_peers_by_service: HashMap::new(), | ||
| peers_by_service: HashMap::new(), | ||
| max_size: max_size.unwrap_or(MAX_ADDRESSES), | ||
| reachable_networks, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isnt interesting to have a default for this and it being the addresses we support ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Knowing this isn't really the address_man business, and wouldn't help much. So I would say no
This method is used for the |
1703ed1 to
724469e
Compare
|
Pushed 724469e
This was annoying to rebase |
|
I had to simulate the behaviour of the Bitcoin Core isRoutable() function in Rust-Bitcoin for a target in bitcoinfuzz. You might find it useful to see the additional verification that it has, which might be missing in Floresta, to ensure that it behaves equally to Core and does not waste time connecting to a non-routeable address. |
fadc867 to
3124891
Compare
|
After a little 1v1 against CI, pushed 3124891
|
|
ACK 62c4492 |
ce9349a to
32b4ee8
Compare
|
Pushed 32b4ee8
|
32b4ee8 to
5194674
Compare
|
Fixed a bug I've introduced on Floresta functional tests caught 100 out of 2 bugs that would make it into master. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Davidson-Souza this seems not ok! (arghhh... I am not allowed to request changes on the PR)
| if octets[0] == 0xFC && octets[0] == 0x00 { | ||
| return true; | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will never be true: if octets[0] == 0xFC && octets[0] == 0x00
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catch. Also, rust-bitcoin only checks the first octet, for some reason: https://docs.rs/bitcoin/latest/src/bitcoin/p2p/address.rs.html#223-235
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catch. Also, rust-bitcoin only checks the first octet, for some reason: https://docs.rs/bitcoin/latest/src/bitcoin/p2p/address.rs.html#223-235
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Davidson-Souza We can drop checking the second octet. See erick's comment above.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Davidson-Souza We can drop checking the second octet. See erick's comment above.
Maybe remove the check altogether? After all, rust-bitcoin already checks the octets when parsing them.
Never mind. It's better to have it because the type is essentially a wrapper for IPv6, and it doesn't perform any checks during construction.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, we should check the first octet is 0xFC but can skip the second octet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done!
5194674 to
380812b
Compare
|
Fixed a logic bug with |
380812b to
1de10b0
Compare
|
Stopped checking second octet to align with rust-bitcoin (see #781 (comment)) |
|
Needs rebase |
1de10b0 to
c232a6e
Compare
|
Rebased |
|
I haven't reviewed this in depth, but I'm getting a bunch of luisschwab@deepthought Floresta % ./target/release/florestad -n signet
2026-02-09 19:03:53 INFO floresta_node::florestad: Loading watch-only wallet
2026-02-09 19:03:53 WARN floresta_node::florestad: Could not read config file, ignoring it
2026-02-09 19:03:53 INFO floresta_node::florestad: Wallet setup completed!
2026-02-09 19:03:53 INFO floresta_node::florestad: Loading blockchain database
2026-02-09 19:03:53 INFO floresta_node::florestad: Loaded compact filters store at height 0
2026-02-09 19:03:53 INFO floresta_node::florestad: Starting server
2026-02-09 19:03:53 INFO floresta_node::florestad: Electrum Server is running at 127.0.0.1:60001
2026-02-09 19:03:53 INFO floresta_node::json_rpc::server: RPC server is running at 127.0.0.1:38332
2026-02-09 19:03:53 WARN floresta_wire::p2p_wire::address_man: Failed to init Utreexo peers: anchors.json does not exist yet, or is invalid
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Starting IBD, selecting the best chain
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.signet.bitcoin.sprovoost.nl
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::address_man: Fetched 22 peer addresses from DNS host: x9.seed.signet.bitcoin.sprovoost.nl
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::address_man: Fetched 1 peer addresses from DNS host: x1000000.seed.dlsouza.lol
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.dlsouza.lol
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::address_man: Fetched 24 peer addresses from DNS host: x9.seed.dlsouza.lol
2026-02-09 19:03:53 INFO floresta_wire::p2p_wire::node::conn: Fetched 53 peer addresses from all DNS seeds
- 2026-02-09 19:04:03 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 820: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - NoAddressesAvailable
- 2026-02-09 19:04:53 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 826: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - PeerAlreadyExists(136.144.237.250, 38333)
2026-02-09 19:05:28 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=9 version=/Satoshi:28.0.0/ blocks=290839 services=ServiceFlags(NETWORK|WITNESS|NETWORK_LIMITED|P2P_V2)
2026-02-09 19:05:33 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=1 hash=00000086d6b2636cb2a392d45edc4ec544a10024d30141c9adf4bfd9de533b53
2026-02-09 19:05:37 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=2001 hash=0000003c99b26c168df2e9bfeb54b01bcbaabb7a7a9dfd0c2ad4c3be33111450
2026-02-09 19:05:39 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=4001 hash=000000de93651f839d858c4afc1371f769448b6d70bbb86f74889cf075318bdb
2026-02-09 19:05:39 WARN floresta_wire::p2p_wire::peer: unexpected message: Unknown { command: CommandString("sendtemplate"), payload: [] } from peer 10
2026-02-09 19:05:41 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=6001 hash=000000ed3a26b0bbf71e92bf3bc5c2d1efe6c5268708b190740a3ea24e75ce92
2026-02-09 19:05:45 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=8001 hash=0000011fe527d4e73f2d5b74bed5074e4a6b831c50cd7a4abac5413c0fd3a4dc
2026-02-09 19:05:48 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=10001 hash=000000b60a68f8955e6ed0989fbe9d2a8f1dd3c19c42ecda8e2a2411a2aec1f8
2026-02-09 19:05:49 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=12001 hash=0000014adede2d5efa6edb04acbd0a41f7c5ad4672e8c884e729e243c5d1e87e
- 2026-02-09 19:05:49 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 8 20: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - NoAddressesAvailable
2026-02-09 19:05:50 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=14001 hash=000000ca9c36cd41cf79ed0532b09d05babcfd350cfc93b5da299cb192fe4161
2026-02-09 19:05:52 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=16001 hash=00000150a3bfb1a8b763f0f4d8f043f9e38ff685c30cf2a979b5352f2eab5dfd
2026-02-09 19:05:55 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=18001 hash=000000dd34b758a3b8852b423e4beed86428beb81f83a621e0f19403462dc09f
2026-02-09 19:05:57 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=20001 hash=00000001d6d52bc7ac9397972616bf8ed0331f86e298fe572c9e56331d3ecc3a
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=22001 hash=00000123f3ae8c636b33654de0b179e9be9cc5a852b803af6f1f40342f6a2edb
- 2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::node::conn: Floresta has been running for a while without enough addresses, requesting more from DNS seeds
- 2026-02-09 19:06:00 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 820: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - NoAddressesAvailable
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.signet.bitcoin.sprovoost.nl
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::address_man: Fetched 22 peer addresses from DNS host: x9.seed.signet.bitcoin.sprovoost.nl
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::address_man: Fetched 1 peer addresses from DNS host: x1000000.seed.dlsouza.lol
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.dlsouza.lol
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::address_man: Fetched 24 peer addresses from DNS host: x9.seed.dlsouza.lol
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::node::conn: Fetched 53 peer addresses from all DNS seeds
2026-02-09 19:06:00 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=24001 hash=00000036d95571b4e6e90da71cc325aba135db0b9e9e1b37c495eb3a031bd96a
2026-02-09 19:06:02 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=26001 hash=00000040f39292420a12f95f3d088c6e7578e2c896fcf18002cb93d5aa5d523c
2026-02-09 19:06:02 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=28001 hash=000000522214640f86be46c0199cafbbfb7156e0a90c94a2f5e5b093b13d4354
2026-02-09 19:06:05 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=30001 hash=000000f7626bb9f7917f48d0c63a9c30a4692232e5cd96366192a62c7d1a89a4
2026-02-09 19:06:06 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=32001 hash=0000013e833b67d8c98c0cdb852a9629a4fac781863c31f4975205049b2a42c1
2026-02-09 19:06:08 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=34001 hash=00000020e9f4a2ca32755185e889c5160b72ecd9337b672db653b33a50a4a89b
- 2026-02-09 19:06:10 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 820: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - NoAddressesAvailable
2026-02-09 19:06:10 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=36001 hash=0000007ff949a1ee620eafe3ce183845573fadda34653f90973de630ce7f2b85
2026-02-09 19:06:11 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=38001 hash=00000050e4622a09f28d5eeece1f2dc229b6be66a96531c7c96163f1a6b7e98d
2026-02-09 19:06:13 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=40001 hash=0000001d7e4a70c8bf867ee59b6e1ce3f86b68757f46d8d389a0710058666f16
2026-02-09 19:06:14 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=42001 hash=000000b5361e8a14e345071c3000cfaddd8d50a059c2707872c413e06af3db76
2026-02-09 19:06:15 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=44001 hash=000001453289816aae09b1f9c08d92c7c97a0ed6abc795a4db08c060d20d8534
2026-02-09 19:06:16 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=46001 hash=000000146e031188ce3932e3837f8cfea8a89b21dd91676ed7ba65a556ff9be3
2026-02-09 19:06:16 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=48001 hash=000001464c6be1f79f1aada84a08e77b83f66b5981f8e62b98472d65124823a7
2026-02-09 19:06:17 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=50001 hash=0000002b4a0d1ed131bcbc0909cf93467fcad92f624de4b1dd213541bfb0a2d9
2026-02-09 19:06:17 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=52001 hash=000000b35e86a63df974bc0e561032a4573bdaf54116063858c687c256425d50
2026-02-09 19:06:18 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=54001 hash=0000000f1335ce2d13e87ee599f2da32874488b095bf6170869fb352125af939
2026-02-09 19:06:18 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=56001 hash=0000008185b5249a03b601dad1d62cb314d4012d6838d2c8b7e8ae11a0254882
2026-02-09 19:06:19 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=58001 hash=0000007a5a7603945bd75d75847efc4139461a32f82cfabcfcb602de914da3a5
2026-02-09 19:06:19 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=60001 hash=000001058cac5cb7d86810cd9be331b66a46d3b72883c0e9f160c40b2f1477d0
2026-02-09 19:06:20 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=62001 hash=000000907e8e25da28e8b0789d24866cfb85bc5f3d02450e410df2b21b13a677
2026-02-09 19:06:20 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=64001 hash=000000e7d748f679fc09e709e6ef56085732c293e7772004d81521d0ac6738df
2026-02-09 19:06:21 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=9 at height=66001 hash=000000042d715765c28f294b304df5f30ec142bd778a43bdfc47dc883239e26a
- 2026-02-09 19:06:21 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 820: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - NoAddressesAvailable |
We currently only ask for addresses once every 1h, which doesn't seem like enough, specially when our node is still bootstrapping. So after adding a new peer, we ask for new addresses right away.
Currently, our AddrMan can grow indefinitely. This is obviously a DoS vector, and can cause the node to crash. This commit introduces a new limit on how many addresses we may have, and a code that removes old addresses to open up space for new ones
The previous implementation didn't support IPv6 and had problems with port detection. This commit fixes this
The BIP demands nodes to ignore any message with more than 1_000 addresses. We currently may receive and send packages bigger than that. This commit fixes it by enforcing this limit.
We don't currently push peers added through CLI to our AddrMan, therefore we don't learn about them to use in the future. This commit fixes it, by calling `addr_man.push` with any peer that have been added from the CLI
Some networks might not be reachable for use, usually because they require a specific proxy that we might not have. Therefore, addresses for that net are always unreachable for us. This commit adds a method to filter for unreachable addresses, so they are never added to our address manager.
We try to keep a good view of the network, knowing which peers are working a ready to connect. To accieve this, we keep track of the lastest connections we've made, so we know what peers should be online and responsive. However, after a certain time from the last connection, we assume that the information we have is too old to be counted. But our current code is too aggressive in what it considers outdated, and will drop this info for peers we've connected just a few minutes ago. This commit fixes this by preserving this information for one day (24 hours) before considering it stale and moving that peer to the unknown state.
The address manager implements some methods like `is_private` and `is_good_peer` to help with peer selection. However, they are closer to the LocalAddress struct, so I've moved them to LocalAddress and made them public.
To avoid being eclipsed with an address spam attack, we limit the rate of addrv2 messages a peer can send us to one every 10 seconds.
DNS seeds are trusted to deliver recently seen peers, that are very likely to still be alive. This commit adds those peers directly to the "good" peers table, making it easier for our node to start up peers
Before connecting to an address, we mark it as `Failed`, in case we never hear from that peer again, and only after handshake we mark as `Connected`. However, before this commit, we would remove then from the `good_peers` bucket, and only re-add after disconnecting. That meant we wouldn't send their addresses in `AddrV2` messages, and they wouldn't count towards the `enough_peers` function. This commit fixes this by adding `Connected` peers back to the good peers bucket
c232a6e to
caa2175
Compare
|
@luisschwab I think it's better now. But even o master I'm getting a lot of requests to dns seed, because the seeds aren't giving us enough compact filters and utreexo peers. I think we should increase the time for dns seed requests now that we will request for addresses more aggressively to the network. |
|
Now it almost finished downloading headers but ran out of peers in the end: 2026-02-10 16:42:20 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=3 at height=210001 hash=0000011cf58e601c942b4ab046e3cc9427c75111eaeaf942ff359e8513d272c4
2026-02-10 16:42:21 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=4 at height=212001 hash=00000001bcccde1c413a2fdb28ad176770b1cc75cf9262f56ce364fe2292c969
2026-02-10 16:42:22 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=3 at height=214001 hash=000000758744de908aefb39fd2cc1c31fb2a353836d315630e1b4e91f72a3d00
2026-02-10 16:42:22 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=4 at height=216001 hash=000000d21f3193f740c9b703d0bf1805fc5ccba8fd6e38d02bdcbc2fc97dabf5
2026-02-10 16:42:23 INFO floresta_wire::p2p_wire::node::chain_selector_ctx: Downloading headers from peer=3 at height=218001 hash=000000977b59d7028d43d1926030fcfdea1f037bb868b2ead66444379a7ea5f7
2026-02-10 16:42:24 ERROR floresta_wire::p2p_wire::node::chain_selector_ctx: 798: crates/floresta-wire/src/p2p_wire/node/chain_selector_ctx.rs - NoPeersAvailable
2026-02-10 16:42:28 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=11 version=/Satoshi:30.99.0/ blocks=290975 services=ServiceFlags(NETWORK|WITNESS|COMPACT_FILTERS|NETWORK_LIMITED|P2P_V2)
2026-02-10 16:42:39 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=12 version=/Satoshi:28.99.0/ blocks=290975 services=ServiceFlags(NETWORK|WITNESS|NETWORK_LIMITED|P2P_V2)
- 2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::node::conn: Floresta has been running for a while without enough addresses, requesting more from DNS seeds
2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::address_man: Fetched 4 peer addresses from DNS host: x49.seed.signet.bitcoin.sprovoost.nl
2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::address_man: Fetched 32 peer addresses from DNS host: x9.seed.signet.bitcoin.sprovoost.nl
2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::address_man: Fetched 1 peer addresses from DNS host: x1000000.seed.dlsouza.lol
2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.dlsouza.lol
2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::address_man: Fetched 24 peer addresses from DNS host: x9.seed.dlsouza.lol
2026-02-10 16:42:59 INFO floresta_wire::p2p_wire::node::conn: Fetched 52 peer addresses from all DNS seeds
2026-02-10 16:43:11 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=16 version=/Satoshi:29.2.0/ blocks=290975 services=ServiceFlags(NETWORK|WITNESS|COMPACT_FILTERS|NETWORK_LIMITED|P2P_V2)
2026-02-10 16:43:23 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=17 version=/Satoshi:30.2.0/ blocks=290975 services=ServiceFlags(NETWORK|WITNESS|NETWORK_LIMITED|P2P_V2)
2026-02-10 16:43:32 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=19 version=/Satoshi:29.0.0/ blocks=290975 services=ServiceFlags(NETWORK|WITNESS|NETWORK_LIMITED|P2P_V2)
2026-02-10 16:43:43 INFO floresta_wire::p2p_wire::node::peer_man: New peer id=20 version=/Satoshi:30.0.0/ blocks=290975 services=ServiceFlags(NETWORK|WITNESS|NETWORK_LIMITED|P2P_V2)
- 2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::node::conn: Floresta has been running for a while without enough addresses, requesting more from DNS seeds
2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::address_man: Fetched 4 peer addresses from DNS host: x49.seed.signet.bitcoin.sprovoost.nl
2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::address_man: Fetched 32 peer addresses from DNS host: x9.seed.signet.bitcoin.sprovoost.nl
2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::address_man: Fetched 1 peer addresses from DNS host: x1000000.seed.dlsouza.lol
2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.dlsouza.lol
2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::address_man: Fetched 24 peer addresses from DNS host: x9.seed.dlsouza.lol
2026-02-10 16:45:07 INFO floresta_wire::p2p_wire::node::conn: Fetched 52 peer addresses from all DNS seeds
- 2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::node::conn: Floresta has been running for a while without enough addresses, requesting more from DNS seeds
2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::address_man: Fetched 4 peer addresses from DNS host: x49.seed.signet.bitcoin.sprovoost.nl
2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::address_man: Fetched 32 peer addresses from DNS host: x9.seed.signet.bitcoin.sprovoost.nl
2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::address_man: Fetched 1 peer addresses from DNS host: x1000000.seed.dlsouza.lol
2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::address_man: Fetched 3 peer addresses from DNS host: x49.seed.dlsouza.lol
2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::address_man: Fetched 24 peer addresses from DNS host: x9.seed.dlsouza.lol
2026-02-10 16:47:15 INFO floresta_wire::p2p_wire::node::conn: Fetched 52 peer addresses from all DNS seeds |
Description and Notes
This PR improves our
AddrMan, and also makes our node more aggressive on requesting for new addresses. With these changes:AddrManAddrMan