Skip to content

fix(cli): default to IPv4-first DNS resolution to avoid undici IPv6 connect timeouts#2699

Open
dsitmilis wants to merge 1 commit into
decolua:masterfrom
dsitmilis:fix/ipv4first-dns-order
Open

fix(cli): default to IPv4-first DNS resolution to avoid undici IPv6 connect timeouts#2699
dsitmilis wants to merge 1 commit into
decolua:masterfrom
dsitmilis:fix/ipv4first-dns-order

Conversation

@dsitmilis

Copy link
Copy Markdown

Summary

Resolves #2696fetch connect timeout (502) when proxying upstream requests, caused by Node 18+/undici attempting IPv6 connections that silently drop.

Appends --dns-result-order=ipv4first to the spawned processes in cli/cli.js:

  • the server process (spawnServer)
  • the tray background process (bgProcess)

Forcing IPv4-first DNS resolution makes undici fall back to IPv4 instead of hanging on a dead IPv6 route.

Validation

  • node --check cli/cli.js passes (syntax valid).
  • Diff is minimal: 2 argument insertions, no logic change.

Closes #2696.

…onnect timeouts

Node 18+/undici attempts IPv6 connections that can silently drop, causing
'fetch connect timeout' (502) when proxying upstream requests. Appending
--dns-result-order=ipv4first to the spawned server and tray background
processes forces IPv4-first fallback, resolving the hang.

Closes decolua#2696
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.

Fix: IPv6 fetch connect timeout in Node.js 18+ by defaulting to IPv4 first

1 participant