Skip to content

Commit ae78c78

Browse files
authored
fix: go-libp2p v0.44 with self-healing UPnP port mappings (#11032)
* chore(deps): update go-libp2p to v0.44.0 - includes self-healing UPnP port mappings after router restarts - update go-netroute to v0.3.0 - update quic-go to v0.55.0 - add changelog entry for UPnP fix * docs: improve provide and UPnP clarity in changelog and docs - add alert polling rationale to changelog - add UPnP config note with default clarification - clarify sweep timing and prefix length explanations - add concrete examples for time offset and record holders - improve workers stats formatting - add See Also section to provide-stats.md * docs: add RISC-V prebuilt binaries to changelog and README - highlight linux-riscv64 availability with open hardware context - update README with arm64 builds, remove 32-bit examples
1 parent 5d4c40e commit ae78c78

File tree

10 files changed

+108
-52
lines changed

10 files changed

+108
-52
lines changed

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -191,13 +191,13 @@ $ ipfs ls /ipns/dist.ipfs.tech/kubo/$VERSION
191191
To download a given build of a version:
192192

193193
```console
194-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_darwin-386.tar.gz # darwin 32-bit build
195-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_darwin-amd64.tar.gz # darwin 64-bit build
196-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_freebsd-amd64.tar.gz # freebsd 64-bit build
197-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-386.tar.gz # linux 32-bit build
198-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-amd64.tar.gz # linux 64-bit build
199-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-arm.tar.gz # linux arm build
200-
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_windows-amd64.zip # windows 64-bit build
194+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_darwin-amd64.tar.gz # darwin amd64 build
195+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_darwin-arm64.tar.gz # darwin arm64 build
196+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_freebsd-amd64.tar.gz # freebsd amd64 build
197+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-amd64.tar.gz # linux amd64 build
198+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-riscv64.tar.gz # linux riscv64 build
199+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-arm64.tar.gz # linux arm64 build
200+
$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_windows-amd64.zip # windows amd64 build
201201
```
202202

203203
### Unofficial Linux packages

docs/changelogs/v0.39.md

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ This release was brought to you by the [Shipyard](https://ipshipyard.com/) team.
1212
- [🔦 Highlights](#-highlights)
1313
- [📊 Detailed statistics for Sweep provider with `ipfs provide stat`](#-detailed-statistics-for-sweep-provider-with-ipfs-provide-stat)
1414
- [🔔 Sweep provider slow reprovide warnings](#-sweep-provider-slow-reprovide-warnings)
15+
- [🔧 Fixed UPnP port forwarding after router restarts](#-fixed-upnp-port-forwarding-after-router-restarts)
16+
- [🖥️ RISC-V support with prebuilt binaries](#️-risc-v-support-with-prebuilt-binaries)
1517
- [🪦 Deprecated `go-ipfs` name no longer published](#-deprecated-go-ipfs-name-no-longer-published)
1618
- [📦️ Important dependency updates](#-important-dependency-updates)
1719
- [📝 Changelog](#-changelog)
@@ -74,8 +76,45 @@ a warning displays with:
7476
- Recommended solutions: increase `Provide.DHT.MaxWorkers` or `Provide.DHT.DedicatedPeriodicWorkers`
7577
- Command to monitor real-time progress: `watch ipfs provide stat --all --compact`
7678

77-
The alert polls every 15 minutes and only triggers after sustained growth
78-
across multiple intervals. The legacy provider is unaffected by this change.
79+
The alert polls every 15 minutes (to avoid alert fatigue while catching
80+
persistent issues) and only triggers after sustained growth across multiple
81+
intervals. The legacy provider is unaffected by this change.
82+
83+
#### 🔧 Fixed UPnP port forwarding after router restarts
84+
85+
Kubo now automatically recovers UPnP port mappings when routers restart or
86+
become temporarily unavailable, fixing a critical connectivity issue that
87+
affected self-hosted nodes behind NAT.
88+
89+
**Previous behavior:** When a UPnP-enabled router restarted, Kubo would lose
90+
its port mapping and fail to re-establish it automatically. Nodes would become
91+
unreachable to the network until the daemon was manually restarted, forcing
92+
reliance on relay connections which degraded performance.
93+
94+
**New behavior:** The upgraded go-libp2p (v0.44.0) includes [Shipyard's fix](https://github.com/libp2p/go-libp2p/pull/3367)
95+
for self-healing NAT mappings that automatically rediscover and re-establish
96+
port forwarding after router events. Nodes now maintain public connectivity
97+
without manual intervention.
98+
99+
> [!NOTE]
100+
> If your node runs behind a router and you haven't manually configured port
101+
> forwarding, make sure [`Swarm.DisableNatPortMap=false`](https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmdisablenatportmap)
102+
> so UPnP can automatically handle port mapping (this is the default).
103+
104+
This significantly improves reliability for desktop and self-hosted IPFS nodes
105+
using UPnP for NAT traversal.
106+
107+
#### 🖥️ RISC-V support with prebuilt binaries
108+
109+
Kubo now provides official `linux-riscv64` prebuilt binaries with every release,
110+
bringing IPFS to [RISC-V](https://en.wikipedia.org/wiki/RISC-V) open hardware.
111+
112+
As RISC-V single-board computers and embedded systems become more accessible,
113+
it's good to see the distributed web supported on open hardware architectures -
114+
a natural pairing of open technologies.
115+
116+
Download from <https://dist.ipfs.tech/kubo/> or
117+
<https://github.com/ipfs/kubo/releases> and look for the `linux-riscv64` archive.
79118

80119
#### 🪦 Deprecated `go-ipfs` name no longer published
81120

@@ -90,6 +129,8 @@ For Docker users, the legacy `ipfs/go-ipfs` image name now shows a deprecation n
90129

91130
### 📦️ Important dependency updates
92131

132+
- update `go-libp2p` to [v0.44.0](https://github.com/libp2p/go-libp2p/releases/tag/v0.44.0) with self-healing UPnP port mappings
133+
- update `quic-go` to [v0.55.0](https://github.com/quic-go/quic-go/releases/tag/v0.55.0)
93134
- update `go-ds-pebble` to [v0.5.3](https://github.com/ipfs/go-ds-pebble/releases/tag/v0.5.3)
94135

95136
### 📝 Changelog

docs/config.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1920,7 +1920,7 @@ map CIDs to your peer ID, enabling content discovery across the network.
19201920
While designed to support multiple routing systems in the future, the current
19211921
default configuration only supports [providing to the Amino DHT](#providedht).
19221922

1923-
<!-- TODO: See the [Reprovide Sweep blog post](https://blog.ipfs.tech/2025-reprovide-sweep/) for detailed performance comparisons. -->
1923+
<!-- TODO: See the [Reprovide Sweep blog post](https://github.com/ipshipyard/ipshipyard.com/pull/8) for detailed performance comparisons. -->
19241924

19251925
### `Provide.Enabled`
19261926

@@ -2026,8 +2026,8 @@ overwhelming the network with unnecessary announcements.
20262026
**With sweep mode enabled
20272027
([`Provide.DHT.SweepEnabled`](#providedhtsweepenabled)):** The system spreads
20282028
reprovide operations smoothly across this entire interval. Each keyspace region
2029-
is reprovided at scheduled times throughout the period, ensuring announcements
2030-
periodically happen every interval.
2029+
is reprovided at scheduled times throughout the period, ensuring each region's
2030+
announcements complete before records expire.
20312031

20322032
**With legacy mode:** The system attempts to reprovide all CIDs as quickly as
20332033
possible at the start of each interval. If reproviding takes longer than this

docs/examples/kubo-as-a-library/go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ replace github.com/ipfs/kubo => ./../../..
99
require (
1010
github.com/ipfs/boxo v0.35.0
1111
github.com/ipfs/kubo v0.0.0-00010101000000-000000000000
12-
github.com/libp2p/go-libp2p v0.43.0
12+
github.com/libp2p/go-libp2p v0.44.0
1313
github.com/multiformats/go-multiaddr v0.16.1
1414
)
1515

@@ -123,7 +123,7 @@ require (
123123
github.com/libp2p/go-libp2p-routing-helpers v0.7.5 // indirect
124124
github.com/libp2p/go-libp2p-xor v0.1.0 // indirect
125125
github.com/libp2p/go-msgio v0.3.0 // indirect
126-
github.com/libp2p/go-netroute v0.2.2 // indirect
126+
github.com/libp2p/go-netroute v0.3.0 // indirect
127127
github.com/libp2p/go-reuseport v0.4.0 // indirect
128128
github.com/libp2p/go-yamux/v5 v5.0.1 // indirect
129129
github.com/libp2p/zeroconf/v2 v2.2.0 // indirect
@@ -177,7 +177,7 @@ require (
177177
github.com/prometheus/common v0.66.1 // indirect
178178
github.com/prometheus/procfs v0.17.0 // indirect
179179
github.com/quic-go/qpack v0.5.1 // indirect
180-
github.com/quic-go/quic-go v0.54.1 // indirect
180+
github.com/quic-go/quic-go v0.55.0 // indirect
181181
github.com/quic-go/webtransport-go v0.9.0 // indirect
182182
github.com/rogpeppe/go-internal v1.14.1 // indirect
183183
github.com/spaolacci/murmur3 v1.1.0 // indirect

docs/examples/kubo-as-a-library/go.sum

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -428,8 +428,8 @@ github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZ
428428
github.com/libp2p/go-flow-metrics v0.0.3/go.mod h1:HeoSNUrOJVK1jEpDqVEiUOIXqhbnS27omG0uWU5slZs=
429429
github.com/libp2p/go-flow-metrics v0.3.0 h1:q31zcHUvHnwDO0SHaukewPYgwOBSxtt830uJtUx6784=
430430
github.com/libp2p/go-flow-metrics v0.3.0/go.mod h1:nuhlreIwEguM1IvHAew3ij7A8BMlyHQJ279ao24eZZo=
431-
github.com/libp2p/go-libp2p v0.43.0 h1:b2bg2cRNmY4HpLK8VHYQXLX2d3iND95OjodLFymvqXU=
432-
github.com/libp2p/go-libp2p v0.43.0/go.mod h1:IiSqAXDyP2sWH+J2gs43pNmB/y4FOi2XQPbsb+8qvzc=
431+
github.com/libp2p/go-libp2p v0.44.0 h1:5Gtt8OrF8yiXmH+Mx4+/iBeFRMK1TY3a8OrEBDEqAvs=
432+
github.com/libp2p/go-libp2p v0.44.0/go.mod h1:NovCojezAt4dnDd4fH048K7PKEqH0UFYYqJRjIIu8zc=
433433
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
434434
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
435435
github.com/libp2p/go-libp2p-core v0.2.4/go.mod h1:STh4fdfa5vDYr0/SzYYeqnt+E6KfEV5VxfIrm0bcI0g=
@@ -455,8 +455,8 @@ github.com/libp2p/go-libp2p-xor v0.1.0/go.mod h1:LSTM5yRnjGZbWNTA/hRwq2gGFrvRIbQ
455455
github.com/libp2p/go-msgio v0.0.4/go.mod h1:63lBBgOTDKQL6EWazRMCwXsEeEeK9O2Cd+0+6OOuipQ=
456456
github.com/libp2p/go-msgio v0.3.0 h1:mf3Z8B1xcFN314sWX+2vOTShIE0Mmn2TXn3YCUQGNj0=
457457
github.com/libp2p/go-msgio v0.3.0/go.mod h1:nyRM819GmVaF9LX3l03RMh10QdOroF++NBbxAb0mmDM=
458-
github.com/libp2p/go-netroute v0.2.2 h1:Dejd8cQ47Qx2kRABg6lPwknU7+nBnFRpko45/fFPuZ8=
459-
github.com/libp2p/go-netroute v0.2.2/go.mod h1:Rntq6jUAH0l9Gg17w5bFGhcC9a+vk4KNXs6s7IljKYE=
458+
github.com/libp2p/go-netroute v0.3.0 h1:nqPCXHmeNmgTJnktosJ/sIef9hvwYCrsLxXmfNks/oc=
459+
github.com/libp2p/go-netroute v0.3.0/go.mod h1:Nkd5ShYgSMS5MUKy/MU2T57xFoOKvvLR92Lic48LEyA=
460460
github.com/libp2p/go-openssl v0.0.3/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc=
461461
github.com/libp2p/go-openssl v0.0.4/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc=
462462
github.com/libp2p/go-reuseport v0.4.0 h1:nR5KU7hD0WxXCJbmw7r2rhRYruNRl2koHw8fQscQm2s=
@@ -469,6 +469,8 @@ github.com/lunixbochs/vtclean v1.0.0/go.mod h1:pHhQNgMf3btfWnGBVipUOjRYhoOsdGqdm
469469
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
470470
github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
471471
github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
472+
github.com/marcopolo/simnet v0.0.1 h1:rSMslhPz6q9IvJeFWDoMGxMIrlsbXau3NkuIXHGJxfg=
473+
github.com/marcopolo/simnet v0.0.1/go.mod h1:WDaQkgLAjqDUEBAOXz22+1j6wXKfGlC5sD5XWt3ddOs=
472474
github.com/marten-seemann/tcp v0.0.0-20210406111302-dfbc87cc63fd h1:br0buuQ854V8u83wA0rVZ8ttrq5CpaPZdvrK0LP2lOk=
473475
github.com/marten-seemann/tcp v0.0.0-20210406111302-dfbc87cc63fd/go.mod h1:QuCEs1Nt24+FYQEqAAncTDPJIuGs+LxK1MCiFL25pMU=
474476
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
@@ -649,8 +651,8 @@ github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7D
649651
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
650652
github.com/quic-go/qpack v0.5.1 h1:giqksBPnT/HDtZ6VhtFKgoLOWmlyo9Ei6u9PqzIMbhI=
651653
github.com/quic-go/qpack v0.5.1/go.mod h1:+PC4XFrEskIVkcLzpEkbLqq1uCoxPhQuvK5rH1ZgaEg=
652-
github.com/quic-go/quic-go v0.54.1 h1:4ZAWm0AhCb6+hE+l5Q1NAL0iRn/ZrMwqHRGQiFwj2eg=
653-
github.com/quic-go/quic-go v0.54.1/go.mod h1:e68ZEaCdyviluZmy44P6Iey98v/Wfz6HCjQEm+l8zTY=
654+
github.com/quic-go/quic-go v0.55.0 h1:zccPQIqYCXDt5NmcEabyYvOnomjs8Tlwl7tISjJh9Mk=
655+
github.com/quic-go/quic-go v0.55.0/go.mod h1:DR51ilwU1uE164KuWXhinFcKWGlEjzys2l8zUl5Ss1U=
654656
github.com/quic-go/webtransport-go v0.9.0 h1:jgys+7/wm6JarGDrW+lD/r9BGqBAmqY/ssklE09bA70=
655657
github.com/quic-go/webtransport-go v0.9.0/go.mod h1:4FUYIiUc75XSsF6HShcLeXXYZJ9AGwo/xh3L8M/P1ao=
656658
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=

docs/provide-stats.md

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,9 @@ a batch for efficient processing.
4545

4646
Average length of binary prefixes identifying the scheduled regions. Each
4747
keyspace region is identified by a binary prefix, and this shows the average
48-
prefix length across all regions in the schedule. Longer prefixes indicate more
49-
DHT servers in the swarm.
48+
prefix length across all regions in the schedule. Longer prefixes indicate the
49+
keyspace is divided into more regions (because there are more DHT servers in the
50+
swarm to distribute records across).
5051

5152
### Next region prefix
5253

@@ -65,7 +66,8 @@ start timestamp.
6566

6667
### Current time offset
6768

68-
Elapsed time in the current reprovide cycle, showing cycle progress.
69+
Elapsed time in the current reprovide cycle, showing cycle progress (e.g., '11h'
70+
means 11 hours into a 22-hour cycle, roughly halfway through).
6971

7072
### Cycle started
7173

@@ -84,7 +86,8 @@ DHT servers. In practice, this is often lower than the [replication
8486
factor](#replication-factor) due to unreachable peers or timeouts. Matching the
8587
replication factor would indicate all DHT servers are reachable.
8688

87-
Note: some holders may have gone offline since receiving the record.
89+
Note: this counts successful sends; some DHT servers may have gone offline
90+
afterward, so actual availability may be lower.
8891

8992
### Peers swept
9093

@@ -175,14 +178,23 @@ Number of idle workers not reserved for periodic or burst tasks.
175178

176179
### Workers stats
177180

178-
Breakdown of worker status by type (periodic for scheduled reprovides, burst
179-
for initial provides). For each: active (currently processing), dedicated
180-
(reserved for this type), available (idle dedicated + [free
181-
workers](#free-workers)), and queued (0 or 1, since we only acquire when
182-
needed). See [provide queue](#provide-queue) and [reprovide
183-
queue](#reprovide-queue) for regions waiting to be processed.
181+
Breakdown of worker status by type (periodic for scheduled reprovides, burst for
182+
initial provides). For each type:
183+
184+
- **Active**: Currently processing operations
185+
- **Dedicated**: Reserved for this type
186+
- **Available**: Idle dedicated workers + [free workers](#free-workers)
187+
- **Queued**: 0 or 1 (workers acquired only when needed)
188+
189+
See [provide queue](#provide-queue) and [reprovide queue](#reprovide-queue) for
190+
regions waiting to be processed.
184191

185192
### Max connections/worker
186193

187194
Maximum concurrent DHT server connections per worker when sending provider
188195
records for a region.
196+
197+
## See Also
198+
199+
- [Provide configuration reference](./config.md#provide)
200+
- [Provide metrics for Prometheus](./metrics.md#provide)

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ require (
5151
github.com/jbenet/go-temp-err-catcher v0.1.0
5252
github.com/julienschmidt/httprouter v1.3.0
5353
github.com/libp2p/go-doh-resolver v0.5.0
54-
github.com/libp2p/go-libp2p v0.43.0
54+
github.com/libp2p/go-libp2p v0.44.0
5555
github.com/libp2p/go-libp2p-http v0.5.0
5656
github.com/libp2p/go-libp2p-kad-dht v0.35.2-0.20251017193437-abd04263daac
5757
github.com/libp2p/go-libp2p-kbucket v0.8.0
@@ -170,7 +170,7 @@ require (
170170
github.com/libp2p/go-libp2p-gostream v0.6.0 // indirect
171171
github.com/libp2p/go-libp2p-xor v0.1.0 // indirect
172172
github.com/libp2p/go-msgio v0.3.0 // indirect
173-
github.com/libp2p/go-netroute v0.2.2 // indirect
173+
github.com/libp2p/go-netroute v0.3.0 // indirect
174174
github.com/libp2p/go-reuseport v0.4.0 // indirect
175175
github.com/libp2p/go-yamux/v5 v5.0.1 // indirect
176176
github.com/libp2p/zeroconf/v2 v2.2.0 // indirect
@@ -221,7 +221,7 @@ require (
221221
github.com/prometheus/procfs v0.17.0 // indirect
222222
github.com/prometheus/statsd_exporter v0.27.1 // indirect
223223
github.com/quic-go/qpack v0.5.1 // indirect
224-
github.com/quic-go/quic-go v0.54.1 // indirect
224+
github.com/quic-go/quic-go v0.55.0 // indirect
225225
github.com/quic-go/webtransport-go v0.9.0 // indirect
226226
github.com/rivo/uniseg v0.4.4 // indirect
227227
github.com/rogpeppe/go-internal v1.14.1 // indirect

go.sum

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -508,8 +508,8 @@ github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZ
508508
github.com/libp2p/go-flow-metrics v0.0.3/go.mod h1:HeoSNUrOJVK1jEpDqVEiUOIXqhbnS27omG0uWU5slZs=
509509
github.com/libp2p/go-flow-metrics v0.3.0 h1:q31zcHUvHnwDO0SHaukewPYgwOBSxtt830uJtUx6784=
510510
github.com/libp2p/go-flow-metrics v0.3.0/go.mod h1:nuhlreIwEguM1IvHAew3ij7A8BMlyHQJ279ao24eZZo=
511-
github.com/libp2p/go-libp2p v0.43.0 h1:b2bg2cRNmY4HpLK8VHYQXLX2d3iND95OjodLFymvqXU=
512-
github.com/libp2p/go-libp2p v0.43.0/go.mod h1:IiSqAXDyP2sWH+J2gs43pNmB/y4FOi2XQPbsb+8qvzc=
511+
github.com/libp2p/go-libp2p v0.44.0 h1:5Gtt8OrF8yiXmH+Mx4+/iBeFRMK1TY3a8OrEBDEqAvs=
512+
github.com/libp2p/go-libp2p v0.44.0/go.mod h1:NovCojezAt4dnDd4fH048K7PKEqH0UFYYqJRjIIu8zc=
513513
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
514514
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
515515
github.com/libp2p/go-libp2p-core v0.2.4/go.mod h1:STh4fdfa5vDYr0/SzYYeqnt+E6KfEV5VxfIrm0bcI0g=
@@ -539,8 +539,8 @@ github.com/libp2p/go-libp2p-xor v0.1.0/go.mod h1:LSTM5yRnjGZbWNTA/hRwq2gGFrvRIbQ
539539
github.com/libp2p/go-msgio v0.0.4/go.mod h1:63lBBgOTDKQL6EWazRMCwXsEeEeK9O2Cd+0+6OOuipQ=
540540
github.com/libp2p/go-msgio v0.3.0 h1:mf3Z8B1xcFN314sWX+2vOTShIE0Mmn2TXn3YCUQGNj0=
541541
github.com/libp2p/go-msgio v0.3.0/go.mod h1:nyRM819GmVaF9LX3l03RMh10QdOroF++NBbxAb0mmDM=
542-
github.com/libp2p/go-netroute v0.2.2 h1:Dejd8cQ47Qx2kRABg6lPwknU7+nBnFRpko45/fFPuZ8=
543-
github.com/libp2p/go-netroute v0.2.2/go.mod h1:Rntq6jUAH0l9Gg17w5bFGhcC9a+vk4KNXs6s7IljKYE=
542+
github.com/libp2p/go-netroute v0.3.0 h1:nqPCXHmeNmgTJnktosJ/sIef9hvwYCrsLxXmfNks/oc=
543+
github.com/libp2p/go-netroute v0.3.0/go.mod h1:Nkd5ShYgSMS5MUKy/MU2T57xFoOKvvLR92Lic48LEyA=
544544
github.com/libp2p/go-openssl v0.0.3/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc=
545545
github.com/libp2p/go-openssl v0.0.4/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc=
546546
github.com/libp2p/go-reuseport v0.4.0 h1:nR5KU7hD0WxXCJbmw7r2rhRYruNRl2koHw8fQscQm2s=
@@ -555,6 +555,8 @@ github.com/lunixbochs/vtclean v1.0.0/go.mod h1:pHhQNgMf3btfWnGBVipUOjRYhoOsdGqdm
555555
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
556556
github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
557557
github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
558+
github.com/marcopolo/simnet v0.0.1 h1:rSMslhPz6q9IvJeFWDoMGxMIrlsbXau3NkuIXHGJxfg=
559+
github.com/marcopolo/simnet v0.0.1/go.mod h1:WDaQkgLAjqDUEBAOXz22+1j6wXKfGlC5sD5XWt3ddOs=
558560
github.com/marten-seemann/tcp v0.0.0-20210406111302-dfbc87cc63fd h1:br0buuQ854V8u83wA0rVZ8ttrq5CpaPZdvrK0LP2lOk=
559561
github.com/marten-seemann/tcp v0.0.0-20210406111302-dfbc87cc63fd/go.mod h1:QuCEs1Nt24+FYQEqAAncTDPJIuGs+LxK1MCiFL25pMU=
560562
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
@@ -775,8 +777,8 @@ github.com/prometheus/statsd_exporter v0.27.1 h1:tcRJOmwlA83HPfWzosAgr2+zEN5XDFv
775777
github.com/prometheus/statsd_exporter v0.27.1/go.mod h1:vA6ryDfsN7py/3JApEst6nLTJboq66XsNcJGNmC88NQ=
776778
github.com/quic-go/qpack v0.5.1 h1:giqksBPnT/HDtZ6VhtFKgoLOWmlyo9Ei6u9PqzIMbhI=
777779
github.com/quic-go/qpack v0.5.1/go.mod h1:+PC4XFrEskIVkcLzpEkbLqq1uCoxPhQuvK5rH1ZgaEg=
778-
github.com/quic-go/quic-go v0.54.1 h1:4ZAWm0AhCb6+hE+l5Q1NAL0iRn/ZrMwqHRGQiFwj2eg=
779-
github.com/quic-go/quic-go v0.54.1/go.mod h1:e68ZEaCdyviluZmy44P6Iey98v/Wfz6HCjQEm+l8zTY=
780+
github.com/quic-go/quic-go v0.55.0 h1:zccPQIqYCXDt5NmcEabyYvOnomjs8Tlwl7tISjJh9Mk=
781+
github.com/quic-go/quic-go v0.55.0/go.mod h1:DR51ilwU1uE164KuWXhinFcKWGlEjzys2l8zUl5Ss1U=
780782
github.com/quic-go/webtransport-go v0.9.0 h1:jgys+7/wm6JarGDrW+lD/r9BGqBAmqY/ssklE09bA70=
781783
github.com/quic-go/webtransport-go v0.9.0/go.mod h1:4FUYIiUc75XSsF6HShcLeXXYZJ9AGwo/xh3L8M/P1ao=
782784
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=

0 commit comments

Comments
 (0)