Skip to content

fix(desktop): force IPv4 DNS resolution to prevent IPv6 ETIMEDOUT#1248

Open
DrUmranAli wants to merge 2 commits into
thomaschampagne:developfrom
DrUmranAli:develop
Open

fix(desktop): force IPv4 DNS resolution to prevent IPv6 ETIMEDOUT#1248
DrUmranAli wants to merge 2 commits into
thomaschampagne:developfrom
DrUmranAli:develop

Conversation

@DrUmranAli

Copy link
Copy Markdown

Many users on ISPs with misconfigured or incomplete IPv6 routing are experiencing permanent connect ETIMEDOUT 2600:9000:... errors when the desktop app attempts to connect to Strava's AWS servers.

Because Node.js 17+ defaults to preferring IPv6 over IPv4, the desktop app will attempt to bind to the dead IPv6 address, hang, and timeout instead of falling back to a working IPv4 address.

This PR forces the underlying Node.js DNS resolver to prioritize IPv4 globally, which completely eliminates this timeout.

Many users on ISPs with misconfigured or incomplete IPv6 routing are experiencing permanent `connect ETIMEDOUT 2600:9000:...` errors when the desktop app attempts to connect to Strava's AWS servers. 

Because Node.js 17+ defaults to preferring IPv6 over IPv4, the desktop app will attempt to bind to the dead IPv6 address, hang, and timeout instead of falling back to a working IPv4 address. 

This PR forces the underlying Node.js DNS resolver to prioritize IPv4 globally, which completely eliminates this timeout.
@codacy-production

codacy-production Bot commented Apr 6, 2026

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 0 complexity · 0 duplication

Metric Results
Complexity 0
Duplication 0

View in Codacy

TIP This summary will be updated as you push new changes. Give us feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant