Skip to content

v4.3.0

@stephanfeb stephanfeb tagged this 06 Oct 05:18
Problem 1: an AutoNAT v2 server asks for dial data when the IP of the
address to check is not the IP of the connection. This is the usual
case behind NAT. The ambient prober made every request with
sendDialData: false. The client refused the request, the probe failed
with "Low priority addr", and the host never found its reachability.

Fix 1: the prober sends the dial data (at most 100 kB for each check),
as go-libp2p does.

Problem 2: Libp2p.new_ applied the options and then set
enableAutoNAT = true in all cases. Libp2p.autoNAT(false) had no effect.

Fix 2: Libp2p.new_ turns AutoNAT on only when no option or assignment
set it. Config.isAutoNATSet tells whether one did.

Closes dart-libp2p-ta4 and dart-libp2p-idf.
Assets 2
Loading