[BUG] Claude Code intermittent crashes on Linux with IVPN — DNS resolution, MCP auth spam, and server-side instability

Resolved 💬 6 comments Opened Mar 19, 2026 by JIMJFAST Closed Apr 17, 2026

Environment

  • OS: Pop!_OS 22.04 (Ubuntu-based)
  • Claude Code: v2.1.79
  • Node.js: v18.20.8 (via nvm)
  • VPN: IVPN v3.15.0 (WireGuard protocol)
  • DNS: systemd-resolved with Cloudflare DoT

Problem

Claude Code intermittently stops responding after 1-5 minutes of use on a Linux system running IVPN. This has been ongoing since ~March 17, 2026. The same Anthropic account works fine on a Windows machine on the same network, same public IP.

Root Causes Found (3 separate issues)

1. IVPN Kill Switch breaks DNS for Claude Code

When IVPN connects with the kill switch (firewall) enabled, it blocks all DNS traffic except through the VPN tunnel. If /etc/resolv.conf points to a non-tunnel DNS (e.g., 8.8.8.8), all DNS resolution fails with ENOTFOUND api.anthropic.com.

IVPN also fails to restore /etc/resolv.conf on disconnect, leaving DNS permanently broken until manual intervention.

Fix applied: Symlinked /etc/resolv.conf/run/systemd/resolve/stub-resolv.conf so systemd-resolved manages DNS regardless of IVPN state.

2. Auto-injected MCP servers (Gmail, Google Calendar) spam 429 rate limits

The claude.ai Gmail and claude.ai Google Calendar MCP servers were auto-injected via GrowthBook feature flag (tengu_claudeai_mcp_connectors), as documented in #28941 and #29368. These servers fail authentication on every session start, generating thousands of 429 rate limit errors:

AxiosError: [url=https://api.anthropic.com/api/oauth/claude_cli/client_data,status=429,body=Rate limited. Please try again later.]

Debug logs show 10,907 errors in a single session (March 3), with most being 429 responses from the MCP auth spam.

Fix applied: Deleted ~/.claude/mcp-needs-auth-cache.json. Recommend adding ENABLE_CLAUDEAI_MCP_SERVERS=false to settings per #28941.

3. Intermittent API streaming failures during server-side outage

Even with DNS and MCP fixes applied, Claude Code stops responding after 1-5 minutes. Network tests show API is reachable (curl returns 404, Node.js HTTPS returns 401 in ~190ms consistently). DNS watchdog shows no failures.

This appears to be server-side — status.claude.com shows active incident "Elevated errors across surfaces" with Claude Code listed as partial outage (2,616+ minutes downtime on March 18-19).

Testing Performed

  • DNS watchdog monitoring every 2 minutes — zero DNS failures while Claude was stopping
  • 5x Node.js HTTPS connection tests to api.anthropic.com/v1/messages — all returned 401 in <210ms
  • Confirmed same public IP (192.210.18.179) on both Windows (working) and Linux (failing) machines
  • Background curl monitor every 5 seconds — zero connection drops while Claude was stopping
  • Confirmed IVPN disconnected, firewall off, no residual iptables rules

Related Issues

  • #28941 — MCP servers auto-injected without consent
  • #29368 — Cannot remove/hide cloud connectors
  • #14983 — Resumed sessions fail after VPN connect (DNS caching in Bun)
  • #532 — VPN conflict

Questions for Anthropic

  1. Why does Claude Code on Linux fail while Windows works on the same network/IP during the current outage?
  2. Is there a way to make Claude Code more resilient to intermittent API streaming failures (retry instead of dying)?
  3. Can the MCP auth cache spam be addressed so unused cloud connectors don't generate thousands of 429 errors?

System Logs

Full journal logs, debug logs, and DNS watchdog data available on request.

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗