Skip to content

accelerated client includes outdated(?) addrs #10737

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

Closed
3 tasks done
Tracked by #10685
lidel opened this issue Feb 26, 2025 · 8 comments · Fixed by #10736
Closed
3 tasks done
Tracked by #10685

accelerated client includes outdated(?) addrs #10737

lidel opened this issue Feb 26, 2025 · 8 comments · Fixed by #10736
Labels
kind/bug A bug in existing code (including security flaws) need/triage Needs initial labeling and prioritization

Comments

@lidel
Copy link
Member

lidel commented Feb 26, 2025

Checklist

Installation method

docker image

Version

`master-2025-02-25-baa94fc`

Config

`ipfs config --json Routing.AcceleratedDHTClient true`

Description

Without accelerated client, we get normal address list:

$ ipfs config --json Routing.AcceleratedDHTClient false
$ ipfs id 12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr
{
	"ID": "12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
	"PublicKey": "CAESIGxeQquw1AK8U1WO0yZ/arxyexnOltWE8dac6TgMskKx",
	"Addresses": [
		"/ip4/15.204.207.119/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCddN_aPirEORTk0CBePtd44YWo5LZUddpCmFCFir5ZPQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiCddN_aPirEORTk0CBePtd44YWo5LZUddpCmFCFir5ZPQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr"
	],
	"AgentVersion": "kubo/0.33.2/ad1868a",
	"Protocols": [
		"/ipfs/bitswap",
		"/ipfs/bitswap/1.0.0",
		"/ipfs/bitswap/1.1.0",
		"/ipfs/bitswap/1.2.0",
		"/ipfs/id/1.0.0",
		"/ipfs/id/push/1.0.0",
		"/ipfs/kad/1.0.0",
		"/ipfs/lan/kad/1.0.0",
		"/ipfs/ping/1.0.0",
		"/libp2p/autonat/1.0.0",
		"/libp2p/autonat/2/dial-back",
		"/libp2p/autonat/2/dial-request",
		"/libp2p/circuit/relay/0.2.0/hop",
		"/libp2p/circuit/relay/0.2.0/stop",
		"/libp2p/dcutr",
		"/x/"
	]
}

With ipfs config --json Routing.AcceleratedDHTClient true identify returns a lot more addrs:

$ ipfs config --json Routing.AcceleratedDHTClient true
$ ipfs id 12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr
{
	"ID": "12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
	"PublicKey": "CAESIGxeQquw1AK8U1WO0yZ/arxyexnOltWE8dac6TgMskKx",
	"Addresses": [
		"/ip4/127.0.0.1/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/quic-v1/webtransport/certhash/uEiCR2oO032OWT-Y13NdyZj6HgcgtrLv_dKQkeR3mQp6Wpg/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiA05Tme-fdiuDqMrTtLWxeohqXcJpcUilmvmngzhrKoJQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiABaBW4j5rhAwqfnm21xhDbeqmrJGJsDabR_iVLLzRLrA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiAoWd5HNHNU3YBz2-pF5h_vEgR4nNMGZkoe49llG81vDQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiAsiQnA6BGY2eSgDZLW9lAy_BCGCtxFZpgqUTcDpUz9vA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiBYb9ahOkHnXsFll-s0Ggwn7RQMWzDIebkbT5BbHPbS1w/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiBepclmYC4Fa7jLPeUaM6HeEjxtfY-qbExhbwVbFD-Hig/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiBqEttYj1GfOHCT_q0bSXQ9qR68Um8GtGMHx4mha5EeFw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCIvZKMDkPZr8EBvzhJkr9euRL21vsn0JL51nWO-c_8Sg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCTXbFH1OGaWwMVMXMd-KpRN9s7IFSlAY5NS2ejX3BfnQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCVKQZY-pQb7rNgzWI0pyjZfE8JhwtxrSkJC58S7PbHhA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCXiOnWSih4KcL4EJmFuxZR5_GggYyP0JctNifbtDNnrg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCddN_aPirEORTk0CBePtd44YWo5LZUddpCmFCFir5ZPQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCl6fvScwvtBVKbQXN3DgrqvGPLX_X9WOFYN3n32GyBkQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiCs0jpW8w_0uoJRYSgRdPAfmvHOBfr89L80RqRDK0vOqQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiDQZAwoVQfV9Kc7--QBlajXO3twwvbLCiaK-xBzxUnVtw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiDtQ4-6cnrygDPlwRms0Yz1YgxADHrI8jQM_vgGa2k8Sg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/127.0.0.1/udp/4001/webrtc-direct/certhash/uEiDu_4ZKKMZYk66QTtXU2wAzWLoq0xaWby2kci7CE0eLzg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/39714/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/39911/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/webtransport/certhash/uEiCR2oO032OWT-Y13NdyZj6HgcgtrLv_dKQkeR3mQp6Wpg/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiA0sc-TjefTpah5C2evUOrBP61L9bU9oZujeyKMZ09VFw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiA6Xm5VyvtARGXeez9wOy7ty633jN1rPqYOJF_IpZwTBg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiAJVJgQU4ju8PuGwND7pladnaM8h9-IaCFuRxDz_wTbaQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiAor4NOBiHV6MVbEAYM0QP_LTwTwa5PUmyna3EMS6D9dA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiAsiQnA6BGY2eSgDZLW9lAy_BCGCtxFZpgqUTcDpUz9vA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiAzIxHmddFnILWYhqahRGIDnVD14xQJCHcptraYn3Dk0Q/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiBGlZ78DzRgLgdjjRp8FABo29W8nHsUwD9Sao53ZabtbA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiBepclmYC4Fa7jLPeUaM6HeEjxtfY-qbExhbwVbFD-Hig/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiBh0y5pu582rcUQ4h5WMoZByLC2xtnCNhaFEIhv9mUjEA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiC-Hez3BMyZ6nkVylceohtoPmqLHOTMwF7QN9a0orNl8Q/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiC78ryde3oRB3fErBY-B9TeEvMuKnPAbytWVqY8miRpOA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCGVLs686IR7s_Cw6mGDGlOtAko4ZJgrt_UQrA8GX09CA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCTXbFH1OGaWwMVMXMd-KpRN9s7IFSlAY5NS2ejX3BfnQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCVKQZY-pQb7rNgzWI0pyjZfE8JhwtxrSkJC58S7PbHhA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCXiOnWSih4KcL4EJmFuxZR5_GggYyP0JctNifbtDNnrg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCddN_aPirEORTk0CBePtd44YWo5LZUddpCmFCFir5ZPQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCs0jpW8w_0uoJRYSgRdPAfmvHOBfr89L80RqRDK0vOqQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiD0GEEitkBCgqU0j1DlhsHM9J-ka4UUDh_DN4XuikGveQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiD229XVsXJ_SCVLRTPJk0lB4teAWf7Q_iP1BSY1YbjDcw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiD3kzkkYYht4vRysRYTNRLvrKfrnz4I9O3yR7h2XRIPFg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiDFTPeSQuqY53MspQ27e-cB0va4cmx6qTiaIzBmX35xaw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiDu_4ZKKMZYk66QTtXU2wAzWLoq0xaWby2kci7CE0eLzg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiDzG6Of7gG2rBafiCmv8AL39edxKWMIXByeUzLScoskRg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/43140/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/46553/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/47384/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/58006/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/webtransport/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiA8LOnSOpaLJPKF5J6nkTWNXHkIrjfF9QkJnzswXbcjBQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiABaBW4j5rhAwqfnm21xhDbeqmrJGJsDabR_iVLLzRLrA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiAoWd5HNHNU3YBz2-pF5h_vEgR4nNMGZkoe49llG81vDQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiAzIxHmddFnILWYhqahRGIDnVD14xQJCHcptraYn3Dk0Q/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiBepclmYC4Fa7jLPeUaM6HeEjxtfY-qbExhbwVbFD-Hig/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiC2PF2X2wEpJq93a5ZDGoi5j6ue-rAUCl8ddAKfh91MLA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiCVKQZY-pQb7rNgzWI0pyjZfE8JhwtxrSkJC58S7PbHhA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiC_kQLGYTo4pCRaf5sOqIzWVdkZPaIvr0pfSBjkroFtgw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiCddN_aPirEORTk0CBePtd44YWo5LZUddpCmFCFir5ZPQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiCp0PIvb9xfuhvpEpNztzJbzvdroUfVggcjMTYyXVoU-w/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiD3kzkkYYht4vRysRYTNRLvrKfrnz4I9O3yR7h2XRIPFg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiDPI_kz1zKtkyqjw134vjXeNBe3TWbITFeicgAU33K6rA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiDQZAwoVQfV9Kc7--QBlajXO3twwvbLCiaK-xBzxUnVtw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiDu_4ZKKMZYk66QTtXU2wAzWLoq0xaWby2kci7CE0eLzg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiDzG6Of7gG2rBafiCmv8AL39edxKWMIXByeUzLScoskRg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/quic-v1/webtransport/certhash/uEiCR2oO032OWT-Y13NdyZj6HgcgtrLv_dKQkeR3mQp6Wpg/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiABaBW4j5rhAwqfnm21xhDbeqmrJGJsDabR_iVLLzRLrA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiBYb9ahOkHnXsFll-s0Ggwn7RQMWzDIebkbT5BbHPbS1w/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiBdNaFP0JXwJxHt_1DSlFfXvVKQNWawcYc_4MpxXGEcpg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiBepclmYC4Fa7jLPeUaM6HeEjxtfY-qbExhbwVbFD-Hig/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiC-Hez3BMyZ6nkVylceohtoPmqLHOTMwF7QN9a0orNl8Q/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiC7bZPPSBnOHxXeJ25veOhTdsxKI9QS8OrY4RPlRiMJ2g/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiC7bh7wFyP0ulo9Akf6EHMxlCqEouK1HXf0TuLTm-cZRQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiCGVLs686IR7s_Cw6mGDGlOtAko4ZJgrt_UQrA8GX09CA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiCVKQZY-pQb7rNgzWI0pyjZfE8JhwtxrSkJC58S7PbHhA/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiCXiOnWSih4KcL4EJmFuxZR5_GggYyP0JctNifbtDNnrg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiC_kQLGYTo4pCRaf5sOqIzWVdkZPaIvr0pfSBjkroFtgw/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiCddN_aPirEORTk0CBePtd44YWo5LZUddpCmFCFir5ZPQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiDBwaeP78KaHwEEPg98rCSa-BdKfntChpJVZJHbqPDlyg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiDH45iStIHj34X5w9BYah_ZEW1flzDGJ09ycpDtngumXg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiDtQ4-6cnrygDPlwRms0Yz1YgxADHrI8jQM_vgGa2k8Sg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/::1/udp/4001/webrtc-direct/certhash/uEiDzG6Of7gG2rBafiCmv8AL39edxKWMIXByeUzLScoskRg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr"
	],
	"AgentVersion": "kubo/0.33.2/ad1868a",
	"Protocols": [
		"/ipfs/bitswap",
		"/ipfs/bitswap/1.0.0",
		"/ipfs/bitswap/1.1.0",
		"/ipfs/bitswap/1.2.0",
		"/ipfs/id/1.0.0",
		"/ipfs/id/push/1.0.0",
		"/ipfs/kad/1.0.0",
		"/ipfs/lan/kad/1.0.0",
		"/ipfs/ping/1.0.0",
		"/libp2p/autonat/1.0.0",
		"/libp2p/autonat/2/dial-back",
		"/libp2p/autonat/2/dial-request",
		"/libp2p/circuit/relay/0.2.0/hop",
		"/libp2p/circuit/relay/0.2.0/stop",
		"/libp2p/dcutr",
		"/x/"
	]
}
@lidel lidel added kind/bug A bug in existing code (including security flaws) need/triage Needs initial labeling and prioritization labels Feb 26, 2025
@lidel lidel changed the title accelerated client includes outdated(?) /certhash/ addrs accelerated client includes outdated addrs Feb 26, 2025
@lidel lidel changed the title accelerated client includes outdated addrs accelerated client includes outdated(?) addrs Feb 26, 2025
@lidel lidel mentioned this issue Feb 26, 2025
56 tasks
@guillaumemichel
Copy link
Contributor

guillaumemichel commented Feb 26, 2025

The normal DHT Client FindPeer behaviour is to look up the requested peer id, and the lookup process stops as soon as the DHT client has an open connection to the target peer (source). Assuming the target peer wasn't connected to the DHT client at the start of the request, it means that the target peer was probably referenced by another peer, then the DHT client was able to open a connection to the target peer. Hence, the multiaddrs, known to the DHT client are the ones provided by the other peer that knew about the target peer, and the multiaddrs shared by the target peer itself during identify (if applicable).

The accelerated DHT Client FindPeer behaviour is slightly different (source). First, it looks up for the 20 closest peers to the target peer id. Then it asks these 20 peers about the target peer id. Once all peers have responded (or have timed out), the DHT Client will call host.Connect, with all addresses it learned from all of the 20 closest peers to connect to the target peer. This function call will add all addresses to the peerstore, and these addresses will eventually be returned to the caller.

So the logic is different between the normal and accelerated DHT clients, and the accelerated DHT client is expected to find a superset of addresses, some of them may be stale?

Is this behaviour new? There was a recent code change in the Accelerated DHT Client that may be related.

@lidel
Copy link
Member Author

lidel commented Feb 26, 2025

This does not seem to be new, probing the same peer with 0.33.2 + accelerated client returns same result (a lot of outdated addrs).

The 12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr is kubo-staging-us-east-01 and it does not constantly reboot. Maybe once a day or twice. No way it restarted >20 times in last 30 minutes and each time announced different /certhash/ to other peers.

Could it be, the problem here is not a bug in Kubo/kad-dht, but one of the peers that accelerated client hits? If a third-party peer that does not use upstream code does not forget addresses after 15 minutes, but keeps them longer, would it explain this behavior?

@guillaumemichel
Copy link
Contributor

When the accelerated DHT client is enabled, the DHT crawler will enumerate all the peers and dump their routing tables. It will write every address received about any other peer in the host peerstore, without dialing the addresses first.

Hence if multiple nodes run the accelerated DHT client, they will keep infecting each other with outdated addresses and these addresses will never disappear from the DHT routing tables.

Fix: libp2p/go-libp2p-kad-dht#1053

@Rashkae2
Copy link

Rashkae2 commented Mar 3, 2025

Do you expect this change might alleviate some the pain of running the accelerated DHT Crawler itself? I've found that to be the largest point of pain trying to host IPFS content on non-dedicated internet.

@guillaumemichel
Copy link
Contributor

host IPFS content on non-dedicated internet

I am not sure what you mean there.

The fix will greatly reduce the number of unreachable addresses that are stored in the go-libp2p host peerstore.

@guillaumemichel
Copy link
Contributor

I just released go-libp2p-kad-dht v0.30.0 including the fix. The kad-dht dep is bumped in #10736, since the latest kad-dht version depends on the latest go-datastore version.

I tested there and the behaviour is now as expected, same addresses returned with Accelerated DHT Client enabled and disabled.

$ ipfs config --json Routing.AcceleratedDHTClient true      
$ ipfs id 12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr
{
	"ID": "12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
	"PublicKey": "CAESIGxeQquw1AK8U1WO0yZ/arxyexnOltWE8dac6TgMskKx",
	"Addresses": [
		"/ip4/15.204.207.119/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip4/15.204.207.119/udp/4001/webrtc-direct/certhash/uEiCTm6d8CKgoD8ZFBuA2kXypupkh3RUQiZj_JCcjrM6ZbQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/tcp/4001/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/quic-v1/webtransport/certhash/uEiCo75ucNddWP2Zv5aSIPOhBWCm3Vss6_UtZGMvf8YONMw/certhash/uEiDNVNf5mOm4WVE37I_6jsGbi50t4FcJ0e46RZYdfQZEmg/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr",
		"/ip6/2604:2dc0:101:100::138b/udp/4001/webrtc-direct/certhash/uEiCTm6d8CKgoD8ZFBuA2kXypupkh3RUQiZj_JCcjrM6ZbQ/p2p/12D3KooWH7PZhUa4UL2Tz2xumHNAugZBBAzEKyF1qmQENYQrYHDr"
	],
	"AgentVersion": "kubo/0.33.2/ad1868a",
	"Protocols": [
		"/ipfs/bitswap",
		"/ipfs/bitswap/1.0.0",
		"/ipfs/bitswap/1.1.0",
		"/ipfs/bitswap/1.2.0",
		"/ipfs/id/1.0.0",
		"/ipfs/id/push/1.0.0",
		"/ipfs/kad/1.0.0",
		"/ipfs/lan/kad/1.0.0",
		"/ipfs/ping/1.0.0",
		"/libp2p/autonat/1.0.0",
		"/libp2p/autonat/2/dial-back",
		"/libp2p/autonat/2/dial-request",
		"/libp2p/circuit/relay/0.2.0/hop",
		"/libp2p/circuit/relay/0.2.0/stop",
		"/libp2p/dcutr",
		"/x/"
	]
}

@guillaumemichel guillaumemichel linked a pull request Mar 4, 2025 that will close this issue
@Rashkae2
Copy link

Rashkae2 commented Mar 4, 2025

I am not sure what you mean there.

The fix will greatly reduce the number of unreachable addresses that are stored in the go-libp2p host peerstore.

I'm sorry, I'm kind of over my head. What I am hoping is that the stale addresses in the peerstore are part of why of the hourly DHT crawl is so detrimental to nework connections. (if the DHT is trying to reach all of those stale addresses during the crawl.)

@guillaumemichel
Copy link
Contributor

I'm sorry, I'm kind of over my head. What I am hoping is that the stale addresses in the peerstore are part of why of the hourly DHT crawl is so detrimental to nework connections. (if the DHT is trying to reach all of those stale addresses during the crawl.)

The crawler will still open a connection to all reachable DHT servers (currently around 10k), and hopefully there shouldn't be too much additional dials due to stale addresses.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug A bug in existing code (including security flaws) need/triage Needs initial labeling and prioritization
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants