[BUG] claude-code triggers TCP SYN flood to statsig.anthropic.com on connection failure, exhausting router NAT table

Resolved 💬 3 comments Opened Feb 5, 2026 by fellanH Closed Feb 9, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Severity: High (Causes local network denial-of-service)

When the statsig.anthropic.com endpoint (34.36.57.103) becomes unreachable or unresponsive, the claude-code process enters an aggressive retry loop. Instead of reusing existing sockets or implementing a circuit breaker, the embedded Statsig SDK opens hundreds of new TCP connections rapidly.

Because the destination is unresponsive, these connections hang in the SYN_SENT state. This rapidly consumes the NAT table capacity of consumer routers (e.g., Google Nest WiFi), resulting in a "Network is unreachable" state for the entire local network, blocking internet access for all devices on the LAN.

What Should Happen?

The application should implement:

Connection Pooling: Reuse sockets rather than opening new ones for every retry.
Circuit Breaker: Stop outgoing requests after N consecutive failures for a cooldown period.
Concurrency Limit: Cap the maximum number of simultaneous connection attempts to the Statsig service.

Error Messages/Logs

Technical Details & Logs
OS: macOS (Darwin Kernel Version 23.x)

Router: Google Nest WiFi (Default Gateway: 192.168.86.1)

Impacted Endpoint: statsig.anthropic.com (34.36.57.103)

Evidence from netstat -rn (Routing Table): Shows default gateway 192.168.86.1 is present and active, but TCP fails.

Evidence from netstat (during incident):

Plaintext
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)
tcp4       0      0  192.168.86.24.58470    34.36.57.103.443       SYN_SENT
tcp4       0      0  192.168.86.24.58471    34.36.57.103.443       SYN_SENT
... (repeating for 130+ entries) ...
Workaround Used: Killing the process and rebooting the router restored connectivity. Adding a static route to blackhole the IP prevents the flood but disables feature flags.

Steps to Reproduce

Steps to Reproduce
Launch claude-code (e.g., with --dangerously-skip-permissions).

Simulate a network partition or outage specifically for the Statsig endpoint:

Method: Block traffic to 34.36.57.103 via firewall or route add -host 34.36.57.103 127.0.0.1.

Observe network connections via netstat.

Observed Behavior
The process does not back off or fail gracefully. Instead, it spawns a massive number of concurrent TCP connections.

Process: node (Claude Code)

State: 130+ connections in SYN_SENT status targeted at 34.36.57.103.

Result: Router NAT table fills up, causing valid traffic from other applications (Chrome, system DNS) to fail with Errno 51: Network is unreachable.

Claude Model

Opus

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.19 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

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